[go: up one dir, main page]

JP7256931B1 - Numerical Control Systems, Numerical Control Devices, Industrial Devices and Computer Programs - Google Patents

Numerical Control Systems, Numerical Control Devices, Industrial Devices and Computer Programs Download PDF

Info

Publication number
JP7256931B1
JP7256931B1 JP2022568401A JP2022568401A JP7256931B1 JP 7256931 B1 JP7256931 B1 JP 7256931B1 JP 2022568401 A JP2022568401 A JP 2022568401A JP 2022568401 A JP2022568401 A JP 2022568401A JP 7256931 B1 JP7256931 B1 JP 7256931B1
Authority
JP
Japan
Prior art keywords
variable
robot
program
list information
unit
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.)
Active
Application number
JP2022568401A
Other languages
Japanese (ja)
Other versions
JPWO2024042728A1 (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.)
Fanuc Corp
Original Assignee
Fanuc 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 Fanuc Corp filed Critical Fanuc Corp
Application granted granted Critical
Publication of JP7256931B1 publication Critical patent/JP7256931B1/en
Publication of JPWO2024042728A1 publication Critical patent/JPWO2024042728A1/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1656Programme controls characterised by programming, planning systems for manipulators
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/418Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM]
    • G05B19/41815Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM] characterised by the cooperation between machine tools, manipulators and conveyor or other workpiece supply system, workcell
    • G05B19/41825Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM] characterised by the cooperation between machine tools, manipulators and conveyor or other workpiece supply system, workcell machine tools and manipulators only, machining centre

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Manufacturing & Machinery (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Numerical Control (AREA)
  • Manipulator (AREA)

Abstract

ロボットと工作機械とが連動するシステムにおいて、加工プログラムにカスタムマクロ変数を使用した場合に生じ得る不具合を防止する。数値制御装置の加工プログラムからロボット制御装置を介してロボットを制御する数値制御システムは、前記数値制御装置における全ての前記加工プログラムの中から変数を取得し、前記変数と前記加工プログラムとが対応づけられた変数リスト情報を生成する変数リスト情報生成部と、前記数値制御装置における前記加工プログラム又は前記ロボット制御装置おけるロボットプログラムに含まれる前記変数が、前記変数リスト情報と異なる対応関係で使用された場合、前記変数を使用せず、前記変数リスト情報に含まれる前記変数が、前記変数リスト情報に存在しない前記加工プログラムで使用された場合、前記変数を使用しないプログラム編集部と、を備える。To prevent problems that may occur when custom macro variables are used in a machining program in a system in which a robot and a machine tool work together. A numerical control system that controls a robot from a machining program of a numerical controller through a robot controller acquires variables from all the machining programs in the numerical controller, and associates the variables with the machining programs. a variable list information generating unit that generates the variable list information obtained from the variable list information; a program editing unit that does not use the variable if the variable included in the variable list information is used in the machining program that does not exist in the variable list information.

Description

本発明は、数値制御システム、数値制御装置、産業用装置及びコンピュータプログラムに関する。 The present invention relates to a numerical control system, a numerical control device, an industrial device and a computer program.

加工現場の自動化促進のため、ワークを加工する工作機械とワークの着脱を行うロボットを連動させる自動化システムが望まれている。例えば、工作機械の数値制御装置からのユーザによる指示に従って、ロボットの動作プログラムの選択や動作プログラムの設定を可能とする技術が知られている(例えば、特許文献1参照)。 In order to promote the automation of machining sites, an automation system that links a machine tool that processes a workpiece with a robot that attaches and detaches the workpiece is desired. For example, there is known a technique that enables selection of an operation program for a robot and setting of an operation program according to instructions from a user from a numerical controller of a machine tool (see, for example, Patent Document 1).

このようなロボットと工作機械とが連動するシステムにおいて、ロボットを制御するロボット制御装置は、工作機械のカスタムマクロ変数を読み書きすることにより、ロボットと工作機械とを連動させる。例えば、ロボット制御装置は、工作機械のカスタムマクロ変数経由で動作要求をONし、工作機械のカスタムマクロ変数を読み出すことにより、動作状態を取得する。そして、ロボット制御装置は、動作状態が動作完了となった場合、動作要求をOFFして次のシーケンスへ進む処理を行う(例えば、特許文献2参照)。 In such a system in which a robot and a machine tool are interlocked, a robot controller that controls the robot interlocks the robot and the machine tool by reading and writing custom macro variables of the machine tool. For example, the robot control device turns on an operation request via a custom macro variable of the machine tool, and acquires the operation state by reading the custom macro variable of the machine tool. Then, when the operation state indicates that the operation is completed, the robot control device turns off the operation request and proceeds to the next sequence (for example, see Patent Document 2).

特開2018-195055号公報JP 2018-195055 A 国際公開第2022/097719号WO2022/097719

カスタムマクロ変数は、加工プログラムの加工条件等の演算に用いられる。カスタムマクロ変数は、条件式で使用すると変数の値に従って、加工プログラムの処理を変更し、工作機械の動作を変更することができる。ロボットと工作機械が連動するシステムにおいて、ロボットがカスタムマクロ変数を読み/書きすることでロボットと工作機械を連動させるとき、ユーザはロボットと連動させるためのカスタムマクロ変数を用意する。 The custom macro variable is used for calculation of machining conditions of the machining program. When custom macro variables are used in conditional expressions, it is possible to change the processing of the machining program and the operation of the machine tool according to the values of the variables. In a system in which a robot and a machine tool work together, when the robot reads/writes a custom macro variable to make the robot work in conjunction with the machine tool, the user prepares the custom macro variable for working with the robot.

工作機械のカスタムマクロ変数を使用してロボットと工作機械が連動する場合、この変数が加工プログラムで使用されると、ロボットは、加工プログラムで使用中の変数を読み書きする。ロボットが加工プログラムで使用中の変数に書き込む場合、加工プログラム中の条件式において変数が使用されていると、ロボットは、変数の値を変更する。このため、ユーザが本来意図していた条件式とは異なる値となる可能性がある。その結果、意図していなかった加工プログラムの処理が実行され、加工不良、工具、機械の破損等を生じる可能性がある。 If the machine tool custom macro variable is used to interface the robot and machine tool, when this variable is used in the machining program, the robot reads and writes the variable in use by the machining program. When the robot writes to a variable being used in a machining program, if the variable is used in a conditional expression in the machining program, the robot changes the value of the variable. Therefore, the value may differ from the conditional expression originally intended by the user. As a result, unintended processing of the machining program may be executed, resulting in machining defects, tool damage, and machine damage.

一方、ロボットが加工プログラムで使用中の変数を読み込む場合、加工プログラム中の演算において変数が使用されていると、ロボットは、その演算で変化する値を読み取る。ロボットは、読み取った変数の値から、工作機械の加工完了や、工作機械のドアが開いた等のようなユーザが意図しない判断を行う可能性がある。その結果、例えば、ロボットは、加工中に加工が完了したと判断して、ワークを取出すために工作機械内へ進入を試み、工作機械とロボットとが衝突する可能性がある。 On the other hand, when the robot reads a variable that is being used in a machining program, if the variable is used in an operation in the machining program, the robot reads the value that changes in that operation. Based on the values of the read variables, the robot may make a decision that the user does not intend, such as that the machine tool has completed machining or that the door of the machine tool has been opened. As a result, for example, the robot determines that the machining is completed during machining and attempts to enter the machine tool to take out the workpiece, which may cause the machine tool and the robot to collide.

このように、加工プログラムで使用中の変数を異なる用途で重複して使用すると、様々な不具合を引き起こす可能性がある。よって、ロボットと工作機械とが連動するシステムにおいて、加工プログラムにカスタムマクロ変数を使用した場合に生じ得る不具合を防止する数値制御システム、数値制御装置、産業用装置及びコンピュータプログラムが望まれている。 In this way, if the variables being used in the machining program are used in duplicate for different purposes, various problems may occur. Therefore, there is a demand for a numerical control system, numerical control device, industrial device, and computer program that prevent problems that may occur when custom macro variables are used in a machining program in a system in which a robot and a machine tool work together.

本開示の一態様は、数値制御装置の加工プログラムからロボット制御装置を介してロボットを制御する数値制御システムであって、前記数値制御装置における全ての前記加工プログラムの中から変数を取得し、前記変数と前記加工プログラムとが対応づけられた変数リスト情報を生成する変数リスト情報生成部と、前記数値制御装置における前記加工プログラム又は前記ロボット制御装置おけるロボットプログラムに含まれる前記変数が、前記変数リスト情報と異なる対応関係で使用された場合、前記変数を使用せず、前記変数リスト情報に含まれる前記変数が、前記変数リスト情報に存在しない前記加工プログラムで使用された場合、前記変数を使用しないプログラム編集部と、を備える。 One aspect of the present disclosure is a numerical control system that controls a robot from a machining program of a numerical controller via a robot controller, wherein variables are acquired from all the machining programs in the numerical controller, and the a variable list information generation unit that generates variable list information in which variables and the machining program are associated with each other; The variable is not used if it is used in a relationship different from that of the information, and is not used if the variable included in the variable list information is used in the machining program that does not exist in the variable list information. and a program editor.

本開示の一態様は、数値制御装置の加工プログラムからロボット制御装置を介してロボットを制御する数値制御システムであって、前記数値制御装置における全ての前記加工プログラムの中から変数を取得し、前記変数と前記加工プログラムとが対応付けられた変数リスト情報を生成する変数リスト情報生成部と、前記変数リスト情報を出力装置へ出力する変数リスト情報出力部と、を備える。 One aspect of the present disclosure is a numerical control system that controls a robot from a machining program of a numerical controller via a robot controller, wherein variables are acquired from all the machining programs in the numerical controller, and the A variable list information generation unit that generates variable list information in which variables and the processing program are associated with each other; and a variable list information output unit that outputs the variable list information to an output device.

本開示の一態様は、加工プログラムを用いてロボット制御装置を介してロボットを制御する数値制御装置であって、前記数値制御装置における前記加工プログラム又は前記ロボット制御装置におけるロボットプログラムの中から変数を取得し、前記変数と前記加工プログラム又は前記ロボットプログラムとが対応付けられた変数リスト情報を生成する変数リスト情報生成部と、前記加工プログラム又は前記ロボットプログラムに含まれる前記変数が、前記変数リスト情報と異なる対応関係で使用された場合、前記変数を使用せず、前記変数リスト情報に含まれる前記変数が、前記変数リスト情報に存在しない前記加工プログラムで使用された場合、前記変数を使用しないプログラム編集部と、を備える。 One aspect of the present disclosure is a numerical controller that controls a robot via a robot controller using a machining program, wherein a variable is selected from the machining program in the numerical controller or the robot program in the robot controller. a variable list information generating unit that acquires and generates variable list information in which the variables and the machining program or the robot program are associated with each other; If the variable is used in a different correspondence from the variable list information, the variable is not used, and if the variable included in the variable list information is used in the processing program that does not exist in the variable list information, the program that does not use the variable and an editorial department.

本開示の一態様は、数値制御装置又はロボット制御装置から加工プログラム又はロボットプログラムを受信する受信部と、前記数値制御装置における前記加工プログラム又は前記ロボット制御装置におけるロボットプログラムの中から変数を取得し、前記変数と前記加工プログラム又は前記ロボットプログラムとが対応付けられた変数リスト情報を生成する変数リスト情報生成部と、前記変数リスト情報を出力装置へ出力する変数リスト情報出力部と、を備える産業用装置である。 One aspect of the present disclosure is a receiving unit that receives a machining program or a robot program from a numerical control device or a robot control device, and acquires a variable from the machining program in the numerical control device or the robot program in the robot control device. , a variable list information generating unit that generates variable list information in which the variables are associated with the machining program or the robot program; and a variable list information output unit that outputs the variable list information to an output device. It is a device for

本開示の一態様は、数値制御装置の加工プログラムからロボット制御装置を介してロボットを制御するコンピュータに、前記数値制御装置における全ての加工プログラムの中から変数を取得し、前記変数と前記加工プログラムとが対応付けられた変数リスト情報を生成するステップと、前記数値制御装置における前記加工プログラム又は前記ロボット制御装置おけるロボットプログラムに含まれる前記変数が、前記変数リスト情報と異なる対応関係で使用された場合、前記変数を使用しないステップと、前記変数リスト情報に含まれる前記変数が、前記変数リスト情報に存在しない前記加工プログラムで使用された場合、前記変数を使用しないステップと、を実行させるためのコンピュータプログラムである。 According to one aspect of the present disclosure, a computer that controls a robot via a robot controller from a machining program of a numerical controller acquires variables from all machining programs in the numerical controller, and a step of generating variable list information associated with the variables included in the machining program in the numerical control device or the robot program in the robot control device are used in a correspondence relationship different from the variable list information a step of not using the variable, and a step of not using the variable if the variable included in the variable list information is used in the machining program that does not exist in the variable list information. A computer program.

本実施形態に係る数値制御システムの構成を示すブロック図である。1 is a block diagram showing the configuration of a numerical control system according to this embodiment; FIG. 第1実施形態に係る加工プログラムの例を示す図である。It is a figure which shows the example of the machining program which concerns on 1st Embodiment. 第1実施形態に係る変数を検索する処理の例を示す図である。It is a figure which shows the example of the process which searches for the variable which concerns on 1st Embodiment. 第1実施形態に係る変数リスト情報の例を示す図である。4 is a diagram showing an example of variable list information according to the first embodiment; FIG. 第1実施形態に係る変数リスト情報を出力する例を示す図である。FIG. 5 is a diagram showing an example of outputting variable list information according to the first embodiment; 第1実施形態に係る警告メッセージを表示する例を示す図である。It is a figure which shows the example which displays the warning message which concerns on 1st Embodiment. 第1実施形態に係る加工プログラムの実行を中止又は禁止する例を示す図である。It is a figure which shows the example which cancels or prohibits execution of the machining program which concerns on 1st Embodiment. 第1実施形態に係る産業用装置の処理を示すフローチャートである。4 is a flowchart showing processing of the industrial device according to the first embodiment; 第1実施形態に係る数値制御装置において加工プログラムの編集を行う場合の処理を示すフローチャートである。4 is a flow chart showing processing when editing a machining program in the numerical controller according to the first embodiment; 第1実施形態に係る数値制御装置の処理を示すフローチャートである。4 is a flowchart showing processing of the numerical controller according to the first embodiment; 第2実施形態に係る警告メッセージを表示する例を示す図である。It is a figure which shows the example which displays the warning message which concerns on 2nd Embodiment. 第2実施形態に係る加工プログラムの実行を中止又は禁止する例を示す図である。It is a figure which shows the example which cancels or prohibits execution of the machining program which concerns on 2nd Embodiment. 第2実施形態に係る産業用装置の処理を示すフローチャートである。9 is a flowchart showing processing of an industrial device according to the second embodiment; 第2実施形態に係る数値制御装置において加工プログラムの編集又は作成を行う場合の処理を示すフローチャートである。9 is a flowchart showing processing when editing or creating a machining program in the numerical controller according to the second embodiment; 第2実施形態に係る数値制御装置の処理を示すフローチャートである。9 is a flow chart showing processing of a numerical controller according to the second embodiment; 第3実施形態に係る加工プログラム及びロボットプログラムの例を示す図である。It is a figure which shows the example of a machining program and a robot program which concern on 3rd Embodiment. 第3実施形態に係る変数を検索する処理の例を示す図である。FIG. 12 is a diagram illustrating an example of processing for searching variables according to the third embodiment; 第3実施形態に係る変数リスト情報の例を示す図である。FIG. 13 is a diagram showing an example of variable list information according to the third embodiment; FIG. 第3実施形態に係る変数リスト情報を出力する例を示す図である。FIG. 13 is a diagram showing an example of outputting variable list information according to the third embodiment; 第3実施形態に係る警告メッセージを表示する例を示す図である。FIG. 11 is a diagram showing an example of displaying a warning message according to the third embodiment; FIG. 第3実施形態に係るロボットプログラムの実行を中止又は禁止する例を示す図である。FIG. 11 is a diagram showing an example of stopping or prohibiting execution of a robot program according to the third embodiment; 第3実施形態に係る産業用装置の処理を示すフローチャートである。It is a flow chart which shows processing of an industrial device concerning a 3rd embodiment. 第3実施形態に係るロボット制御装置においてロボットプログラムの編集又は作成を行う場合の処理を示すフローチャートである。10 is a flow chart showing processing when editing or creating a robot program in the robot control device according to the third embodiment. 第3実施形態に係るロボット制御装置においてロボットプログラムを実行する場合の処理を示すフローチャートである。FIG. 11 is a flow chart showing processing when a robot program is executed in a robot control device according to a third embodiment; FIG. 第4実施形態に係る変数リスト情報を出力する例を示す図である。FIG. 14 is a diagram showing an example of outputting variable list information according to the fourth embodiment; 第4実施形態に係る加工プログラム及びロボットプログラムの例を示す図である。It is a figure which shows the example of a machining program and a robot program which concern on 4th Embodiment. 第4実施形態に係る産業用装置の処理を示すフローチャートである。FIG. 14 is a flow chart showing processing of an industrial device according to the fourth embodiment; FIG.

以下、本開示の実施形態の一例について説明する。図1は、本実施形態に係る数値制御システム1の機能ブロック図である。 An example of an embodiment of the present disclosure will be described below. FIG. 1 is a functional block diagram of a numerical control system 1 according to this embodiment.

数値制御システム1は、図示しないワークを加工する工作機械2と、工作機械2及び工作機械2の近傍に設けられたロボット3と、工作機械2及びロボット3と通信可能に接続された産業用装置4と、工作機械2の動作を制御する数値制御装置(CNC)5と、ロボット3の動作を制御するロボット制御装置6と、を備える。数値制御システム1は、互いに通信可能に接続された産業用装置4、数値制御装置5及びロボット制御装置6を用いることによって、工作機械2及びロボット3の動作を連動して制御する。 The numerical control system 1 includes a machine tool 2 that processes a workpiece (not shown), a robot 3 provided near the machine tool 2 and the machine tool 2, and an industrial device that is communicably connected to the machine tool 2 and the robot 3. 4 , a numerical controller (CNC) 5 that controls the operation of the machine tool 2 , and a robot controller 6 that controls the operation of the robot 3 . The numerical control system 1 interlocks and controls the operations of the machine tool 2 and the robot 3 by using an industrial device 4, a numerical controller 5, and a robot controller 6 that are communicably connected to each other.

工作機械2は、数値制御装置5から送信される工作機械制御信号に応じて図示しないワークを加工する。ここで工作機械2は、例えば、旋盤、ボール盤、フライス盤、研削盤、レーザ加工機、及び射出成形機等であるが、これらに限らない。 The machine tool 2 processes a workpiece (not shown) according to a machine tool control signal transmitted from the numerical controller 5 . Here, the machine tool 2 is, for example, a lathe, a drilling machine, a milling machine, a grinding machine, a laser processing machine, an injection molding machine, or the like, but is not limited to these.

ロボット3は、ロボット制御装置6による制御下において動作し、例えば工作機械2によって加工されるワークに対し所定の作業を行う。ロボット3は、例えば多関節ロボットであり、そのアーム先端部にはワークを把持したり、加工したり、検査したりするためのツールが取り付けられている。以下では、ロボット3は、6軸の多関節ロボットとした場合について説明するが、これに限らない。また以下では、ロボット3は、6軸の多関節ロボットとした場合について説明するが、軸数はこれに限らない。 The robot 3 operates under the control of the robot control device 6 and performs a predetermined work on a work machined by the machine tool 2, for example. The robot 3 is, for example, an articulated robot, and a tool for gripping, processing, and inspecting a work is attached to the tip of its arm. Although the robot 3 will be described below as a 6-axis articulated robot, it is not limited to this. In the following description, the robot 3 will be described as a 6-axis articulated robot, but the number of axes is not limited to this.

産業用装置4は、数値制御装置5内に設けられてもよく、又は数値制御装置5の外部のコンピュータ装置等に設けられてもよい。以下では、産業用装置4を数値制御装置の外部に設けた例について説明する。 The industrial device 4 may be provided within the numerical controller 5 or may be provided in a computer device or the like external to the numerical controller 5 . An example in which the industrial device 4 is provided outside the numerical control device will be described below.

産業用装置4、数値制御装置5及びロボット制御装置6は、それぞれCPU(Central Processing Unit)等の演算処理手段、各種コンピュータプログラムを記憶したHDD(Hard Disk Drive)やSSD(Solid State Drive)等の補助記憶手段、演算処理手段がコンピュータプログラムを実行する上で一時的に必要とされるデータを記憶するためのRAM(Random Access Memory)といった主記憶手段、オペレータが各種操作を行うキーボードといった操作手段、及びオペレータに各種情報を表示するディスプレイといった表示手段等のハードウェアによって構成されるコンピュータである。これら産業用装置4、数値制御装置5及びロボット制御装置6は、例えばイーサネット(登録商標)によって相互に各種信号を送受信することが可能となっている。 The industrial device 4, the numerical control device 5, and the robot control device 6 each include arithmetic processing means such as a CPU (Central Processing Unit), HDD (Hard Disk Drive) storing various computer programs, SSD (Solid State Drive), or the like. Auxiliary storage means, main storage means such as RAM (Random Access Memory) for storing data temporarily required for arithmetic processing means to execute a computer program, operation means such as a keyboard for operators to perform various operations, and a computer configured by hardware such as display means such as a display for displaying various information to the operator. The industrial device 4, the numerical control device 5, and the robot control device 6 can mutually transmit and receive various signals via, for example, Ethernet (registered trademark).

図1に示すように数値制御装置5は、上記ハードウェア構成によって、工作機械2の動作を制御する機能、ロボット3の制御軸の動作経路を生成する機能等のような各種機能を実現する。 As shown in FIG. 1, the numerical control device 5 realizes various functions such as a function of controlling the motion of the machine tool 2 and a function of generating motion paths of the control axes of the robot 3 by the hardware configuration described above.

数値制御装置5は、記憶部51と、プログラム入力部52と、解析部53と、制御部54と、データ送受信部55と、入力部56と、プログラム編集部57と、表示部58と、を備える。 The numerical controller 5 includes a storage unit 51, a program input unit 52, an analysis unit 53, a control unit 54, a data transmission/reception unit 55, an input unit 56, a program editing unit 57, and a display unit 58. Prepare.

記憶部51は、例えば、オペレータによる操作に基づいて作成された複数の加工プログラム511を記憶する。より具体的には、記憶部51は、工作機械2の動作を制御するための工作機械2に対する複数の指令ブロックやロボット3の動作を制御するためのロボット3に対する複数の指令ブロック等によって構成される加工プログラム511を記憶する。記憶部51に記憶されている加工プログラム511は、GコードやMコード等、工作機械2の動作を制御するため既知のプログラム言語で記述されている。 The storage unit 51 stores, for example, a plurality of machining programs 511 created based on operations by an operator. More specifically, the storage unit 51 is composed of a plurality of instruction blocks for the machine tool 2 for controlling the operation of the machine tool 2, a plurality of instruction blocks for the robot 3 for controlling the operation of the robot 3, and the like. A machining program 511 is stored. The machining program 511 stored in the storage unit 51 is written in a known program language, such as G code or M code, for controlling the operation of the machine tool 2 .

また、記憶部51は、例えば、上記数値制御プログラムの下で作動する工作機械2の各種軸の位置(すなわち、工作機械2の刃物台やテーブル等の位置)を示す機械座標値を記憶する。なお、これら機械座標値は、工作機械2上又は工作機械2の近傍の任意の位置に定められた基準点を原点とする工作機械座標系の下で定義される。記憶部51には、数値制御プログラムの下で逐次変化する機械座標値の最新値が記憶されるよう、図示しない処理によって逐次更新される。 The storage unit 51 also stores, for example, machine coordinate values indicating the positions of various axes of the machine tool 2 (that is, the positions of the tool post, table, etc. of the machine tool 2) that operate under the numerical control program. These machine coordinate values are defined under a machine tool coordinate system whose origin is a reference point set at an arbitrary position on or near the machine tool 2 . The storage unit 51 is sequentially updated by a process (not shown) so that the latest values of the machine coordinate values that are sequentially changed under the numerical control program are stored.

また、記憶部51は、例えば、ロボット制御装置6の制御下で作動するロボット3の制御点の位置及び姿勢、換言すればロボット3の各制御軸の位置を示すロボット座標値が記憶されている。なお、これらロボット座標値は、上述したように工作機械座標系とは異なるロボット座標系の下で定義される。記憶部51には、数値制御プログラムの下で逐次変化するロボット座標値の最新値が記憶されるよう、図示しない処理によりロボット制御装置6から取得されたロボット座標値によって逐次更新される。 The storage unit 51 also stores, for example, the positions and orientations of the control points of the robot 3 operating under the control of the robot control device 6, in other words, the robot coordinate values indicating the positions of the respective control axes of the robot 3. . These robot coordinate values are defined under a robot coordinate system different from the machine tool coordinate system, as described above. The storage unit 51 is successively updated with the robot coordinate values obtained from the robot control device 6 by a process (not shown) so that the latest robot coordinate values that are successively changed under the numerical control program are stored.

また、記憶部51は、例えば、オペレータにより入力されたロボット3の始点及び終点といった教示位置を記憶する。具体的には、記憶部51は、ティーチペンダント等から入力されたロボット3の教示位置、キーボード等から入力された教示位置等を記憶する。ロボット3の教示位置には、ロボット3の各制御軸の位置を示すロボット座標値が含まれ、これらロボット座標値は、工作機械座標系とは異なるロボット座標系の下で定義される。 The storage unit 51 also stores teaching positions such as the start point and the end point of the robot 3 input by the operator, for example. Specifically, the storage unit 51 stores the teaching position of the robot 3 input from a teach pendant or the like, the teaching position input from a keyboard or the like, and the like. The teaching position of the robot 3 includes robot coordinate values indicating the position of each control axis of the robot 3, and these robot coordinate values are defined under a robot coordinate system different from the machine tool coordinate system.

記憶部51は、更に、カスタムマクロ変数(以下、変数ともいう)512、及び変数リスト情報513を記憶する。 The storage unit 51 further stores custom macro variables (hereinafter also referred to as variables) 512 and variable list information 513 .

カスタムマクロ変数512は、加工プログラム511の加工条件等の演算に用いられる。カスタムマクロ変数512は、条件式で使用すると変数の値に従って、加工プログラムの処理を変更し、工作機械2の動作を変更することができる。工作機械2とロボット3とが連動する数値制御システム1において、ロボット3がカスタムマクロ変数512を読み書きすることによって、工作機械2とロボット3とは連動する。 The custom macro variable 512 is used for calculation of machining conditions of the machining program 511 and the like. The custom macro variable 512 can change the processing of the machining program and the operation of the machine tool 2 according to the value of the variable when used in the conditional expression. In the numerical control system 1 in which the machine tool 2 and the robot 3 are interlocked, the machine tool 2 and the robot 3 are interlocked by reading and writing the custom macro variables 512 by the robot 3 .

変数リスト情報513は、変数512と、変数512を使用する加工プログラム511のプログラム名とを対応付けて記憶する。 The variable list information 513 stores the variable 512 and the program name of the machining program 511 that uses the variable 512 in association with each other.

プログラム入力部52は、複数のロボット指令ブロックによって構成されるロボット用の数値制御プログラムを記憶部51から読み出し、これを逐次解析部53へ入力する。 The program input unit 52 reads a robot numerical control program composed of a plurality of robot command blocks from the storage unit 51 and sequentially inputs it to the analysis unit 53 .

解析部53は、プログラム入力部52から入力される数値制御プログラムに基づく指令種別を指令ブロックごとに解析し、その解析結果を制御部54へ出力する。より具体的には、解析部53は、指令ブロックの指令種別が工作機械2に対する工作機械用数値制御指令である場合、この工作機械用数値制御指令を制御部54へ送信する。解析部53は、指令ブロックの指令種別がロボット3に対するロボット用数値制御指令である場合、このロボット用数値制御指令を制御部54へ出力する。 Analysis unit 53 analyzes the command type based on the numerical control program input from program input unit 52 for each command block, and outputs the analysis result to control unit 54 . More specifically, when the command type of the command block is a machine tool numerical control command for the machine tool 2 , the analysis unit 53 transmits this machine tool numerical control command to the control unit 54 . When the command type of the command block is a robot numerical control command for the robot 3 , the analysis unit 53 outputs this robot numerical control command to the control unit 54 .

制御部54は、解析部53から送信される解析結果に応じて工作機械2の動作を制御するための工作機械制御信号を生成し、工作機械2の各種軸を駆動するアクチュエータへ入力する。工作機械2は、制御部54から入力される工作機械制御信号に応じて動作し、図示しないワークを加工する。 The control unit 54 generates a machine tool control signal for controlling the operation of the machine tool 2 according to the analysis result sent from the analysis unit 53 and inputs the machine tool control signal to actuators that drive various axes of the machine tool 2 . The machine tool 2 operates according to a machine tool control signal input from the controller 54 to machine a work (not shown).

また、制御部54は、解析部53から入力されるロボット指令ブロック毎の解析結果に基づいて、ロボット指令ブロック毎にロボット指令信号を生成し、生成したロボット指令信号をデータ送受信部55に書き込む。具体的には、制御部54は、解析部53から入力される解析結果としてのロボット用数値制御指令に基づいて、ロボット指令ブロック毎にロボット指令信号を生成し、生成したロボット指令信号をデータ送受信部55に書き込む。 The control unit 54 also generates a robot command signal for each robot command block based on the analysis result for each robot command block input from the analysis unit 53 and writes the generated robot command signal to the data transmission/reception unit 55 . Specifically, the control unit 54 generates a robot command signal for each robot command block based on the robot numerical control command as the analysis result input from the analysis unit 53, and transmits/receives the generated robot command signal as data. Part 55 is written.

データ送受信部55は、ロボット制御装置6のデータ送受信部65との間で指令、カスタムマクロ変数512及びロボット座標値等のデータを送受信する。具体的には、データ送受信部55は、制御部54によって生成されたロボット指令信号をロボット制御装置6のデータ送受信部65へ送信する。 The data transmission/reception unit 55 transmits/receives commands, custom macro variables 512, robot coordinate values, and other data to/from the data transmission/reception unit 65 of the robot control device 6 . Specifically, the data transmitter/receiver 55 transmits the robot command signal generated by the controller 54 to the data transmitter/receiver 65 of the robot controller 6 .

入力部56は、例えば、キーボードやマウス等の入力装置や、表示部58と一体に構成されるタッチセンサ等である。入力部56は、数値制御装置5を操作するオペレータによる入力を受け付け、プログラム編集部57へ出力する。 The input unit 56 is, for example, an input device such as a keyboard or mouse, or a touch sensor integrated with the display unit 58 . The input unit 56 receives input from an operator who operates the numerical controller 5 and outputs the input to the program editing unit 57 .

プログラム編集部57は、入力部56からの入力に応じて加工プログラム511を編集又は作成し、記憶部51に保存する。 The program editing unit 57 edits or creates the machining program 511 according to the input from the input unit 56 and stores it in the storage unit 51 .

表示部58は、液晶ディスプレイ等であり、制御部54による制御に従って各種情報を表示する。例えば、表示部58は、変数リスト情報513を表示する。 The display unit 58 is a liquid crystal display or the like, and displays various information under the control of the control unit 54 . For example, the display unit 58 displays variable list information 513 .

次に、ロボット制御装置6の構成について詳細に説明する。図1に示すように、ロボット制御装置6には、上記ハードウェア構成によって、記憶部61、プログラム入力部62、解析部63、制御部64、データ送受信部65、入力部66、プログラム編集部67、及び表示部68等の各種機能が実現される。ロボット制御装置6は、これらプログラム入力部62、解析部63、制御部64及びデータ送受信部65を用いることによって、ロボットプログラム611又は数値制御装置5から送信される指令に基づいてロボット3の動作を制御する。 Next, the configuration of the robot control device 6 will be described in detail. As shown in FIG. 1, the robot control device 6 includes a storage unit 61, a program input unit 62, an analysis unit 63, a control unit 64, a data transmission/reception unit 65, an input unit 66, and a program editing unit 67 according to the hardware configuration described above. , and various functions of the display unit 68 and the like are realized. The robot control device 6 uses the program input unit 62 , the analysis unit 63 , the control unit 64 and the data transmission/reception unit 65 to operate the robot 3 based on commands sent from the robot program 611 or the numerical control device 5 . Control.

データ送受信部65は、数値制御装置5のデータ送受信部55から送信されるロボット指令信号を受信する。また、データ送受信部65は、受信したロボット指令信号を逐次、解析部63へ出力する。また、データ送受信部65は、ロボットプログラム611に基づいて、数値制御装置5のカスタムマクロ変数512を送受信する。 The data transmitter/receiver 65 receives the robot command signal transmitted from the data transmitter/receiver 55 of the numerical controller 5 . Further, the data transmission/reception unit 65 sequentially outputs the received robot command signals to the analysis unit 63 . The data transmission/reception unit 65 also transmits/receives custom macro variables 512 of the numerical controller 5 based on the robot program 611 .

記憶部61は、ロボットプログラム611と、変数リスト情報612と、を記憶する。変数リスト情報612は、変数512と、変数512を使用する加工プログラム511及び/又はロボットプログラム611のプログラム名とを対応付けて記憶される。 The storage unit 61 stores a robot program 611 and variable list information 612 . The variable list information 612 stores variables 512 in association with program names of the machining program 511 and/or the robot program 611 that use the variables 512 .

プログラム入力部62は、ロボットプログラム611を記憶部61から読み出し、これを逐次解析部63へ入力する。 The program input unit 62 reads the robot program 611 from the storage unit 61 and sequentially inputs it to the analysis unit 63 .

解析部63は、プログラム入力部62から入力されるロボットプログラム611に基づく指令種別を指令ブロックごとに解析し、その解析結果を制御部64へ出力する。また、解析部63は、データ送受信部65から入力されるロボット指令信号を解析する。解析部63は、その解析結果を制御部64へ出力する。 The analysis unit 63 analyzes the command type based on the robot program 611 input from the program input unit 62 for each command block, and outputs the analysis result to the control unit 64 . Also, the analysis unit 63 analyzes the robot command signal input from the data transmission/reception unit 65 . The analysis unit 63 outputs the analysis result to the control unit 64 .

制御部64は、以下に示すようなロボット命令生成部、プログラム管理部、軌跡制御部、キネマティクス制御部、サーボ制御部等の機能を実行する。 The control unit 64 executes functions such as a robot command generation unit, a program management unit, a trajectory control unit, a kinematics control unit, a servo control unit, etc., as described below.

ロボット命令生成部は、解析部63から入力されるロボット指令信号の解析結果に基づいて、ロボット指令信号に応じたロボット命令を生成する。ロボット命令生成部は、生成したロボット命令をプログラム管理部へ出力する。 The robot command generation unit generates a robot command corresponding to the robot command signal based on the analysis result of the robot command signal input from the analysis unit 63 . The robot command generator outputs the generated robot command to the program manager.

プログラム管理部は、ロボット命令生成部からロボット命令が入力されると、ロボット命令を逐次実行することにより、上記ロボット指令信号に応じたロボット3の動作計画を生成し、軌跡制御部へ出力する。 When a robot command is input from the robot command generation unit, the program management unit sequentially executes the robot command, thereby generating an operation plan for the robot 3 according to the robot command signal and outputting it to the trajectory control unit.

また、プログラム管理部は、ロボット命令生成部から入力されるロボット命令がブロックロボット命令である場合には、記憶部61に記憶されているロボットプログラムに、入力されたブロックロボット命令を追加する。これにより記憶部61には、数値制御装置5から送信されるロボット指令信号に応じたロボットプログラムが生成されて記憶される。記憶されたロボットプログラムは、プログラム管理部がロボット命令としてロボットプログラム起動指令を受けることにより、起動及び再生される。 Also, when the robot command input from the robot command generation unit is a block robot command, the program management unit adds the input block robot command to the robot program stored in the storage unit 61 . As a result, a robot program corresponding to the robot command signal transmitted from the numerical controller 5 is generated and stored in the storage unit 61 . The stored robot program is activated and reproduced when the program management unit receives a robot program activation command as a robot command.

軌跡制御部は、プログラム管理部から動作計画が入力されると、ロボット3の制御点の時系列データを算出し、キネマティクス制御部へ出力する。 When the motion plan is input from the program management unit, the trajectory control unit calculates time-series data of the control points of the robot 3 and outputs the data to the kinematics control unit.

キネマティクス制御部は、入力された時系列データからロボット3の各関節の目標角度を算出し、サーボ制御部へ入力する。 The kinematics control unit calculates the target angle of each joint of the robot 3 from the input time-series data, and inputs it to the servo control unit.

サーボ制御部は、キネマティクス制御部から入力される目標角度が実現するようにロボット3の各サーボモータをフィードバック制御することによってロボット3に対するロボット制御信号を生成し、ロボット3のサーボモータへ入力する。 The servo control unit feedback-controls each servo motor of the robot 3 so that the target angle input from the kinematics control unit is realized, thereby generating a robot control signal for the robot 3 and inputting it to the servo motor of the robot 3. .

入力部66は、例えば、キーボードやマウス等の入力装置や、表示部68と一体に構成されるタッチセンサ等である。入力部66は、ロボット制御装置6を操作するオペレータによる入力を受け付け、プログラム編集部67へ出力する。 The input unit 66 is, for example, an input device such as a keyboard or mouse, or a touch sensor integrated with the display unit 68 . The input unit 66 receives input from an operator who operates the robot control device 6 and outputs the input to the program editing unit 67 .

プログラム編集部67は、入力部66からの入力に応じてロボットプログラム611を編集又は作成し、記憶部61に保存する。 The program editing unit 67 edits or creates the robot program 611 according to the input from the input unit 66 and stores it in the storage unit 61 .

表示部68は、液晶ディスプレイ等であり、制御部64による制御に従って各種情報を表示する。例えば、表示部68は、変数リスト情報612を表示する。 The display unit 68 is a liquid crystal display or the like, and displays various information under the control of the control unit 64 . For example, the display unit 68 displays variable list information 612 .

次に、本実施形態に係る数値制御システム1において、加工プログラム511にカスタムマクロ変数512を使用した場合に生じ得る不具合を防止するための処理について説明する。 Next, in the numerical control system 1 according to the present embodiment, processing for preventing problems that may occur when custom macro variables 512 are used in the machining program 511 will be described.

産業用装置4の変数リスト情報生成部41は、数値制御装置5の記憶部51に記憶された全ての加工プログラム511の取得要求を、産業用装置4のデータ送受信部43に通知する。ここで、全ての加工プログラム511は、変数512を含む。 The variable list information generation unit 41 of the industrial device 4 notifies the data transmission/reception unit 43 of the industrial device 4 of acquisition requests for all the machining programs 511 stored in the storage unit 51 of the numerical controller 5 . Here, all machining programs 511 contain variables 512 .

産業用装置4のデータ送受信部43は、数値制御装置5のデータ送受信部を介して、数値制御装置5の記憶部51から読み出された全ての加工プログラム511を取得し、変数リスト情報生成部41へ入力する。 The data transmission/reception unit 43 of the industrial device 4 acquires all the machining programs 511 read from the storage unit 51 of the numerical control device 5 via the data transmission/reception unit of the numerical control device 5, and outputs the variable list information generation unit 41.

変数リスト情報生成部41は、変数リスト情報513を作成し、入力された加工プログラム511中に含まれる変数512を検索する。検索した変数512は、当該変数512を含む加工プログラム511と対応付けられ、変数リスト情報513に追加される。変数リスト情報生成部41は、入力された加工プログラム511を全て検索した後、変数リスト情報513を変数リスト情報出力部42に入力する。 The variable list information generating unit 41 creates variable list information 513 and searches for variables 512 included in the input machining program 511 . The retrieved variable 512 is associated with the machining program 511 including the variable 512 and added to the variable list information 513 . After retrieving all the input processing programs 511 , the variable list information generation unit 41 inputs the variable list information 513 to the variable list information output unit 42 .

変数リスト情報出力部42は、産業用装置4の表示部44へ出力し、表示部44は、変数リスト情報513を表示する。変数リスト情報出力部42は、産業用装置4のデータ送受信部43へ変数リスト情報513を出力し、産業用装置4のデータ送受信部は、変数リスト情報513を数値制御装置5のデータ送受信部55へ送信する。 The variable list information output unit 42 outputs to the display unit 44 of the industrial device 4 , and the display unit 44 displays the variable list information 513 . The variable list information output unit 42 outputs the variable list information 513 to the data transmission/reception unit 43 of the industrial device 4 , and the data transmission/reception unit of the industrial device 4 outputs the variable list information 513 to the data transmission/reception unit 55 of the numerical controller 5 . Send to

数値制御装置5は、データ送受信部55で受信した変数リスト情報513を記憶部51に保存する。これにより、数値制御装置5は、変数リスト情報513を用いて、変数512を重複した加工プログラム511の編集、作成及び実行を回避できる。 Numerical controller 5 stores variable list information 513 received by data transmission/reception unit 55 in storage unit 51 . Thereby, the numerical control device 5 can avoid editing, creation and execution of the machining program 511 that duplicates the variables 512 by using the variable list information 513 .

次に、加工プログラム511を作成又は編集する場合、数値制御装置5の入力部56は、プログラム編集部57へ加工プログラム511の作成又は編集の要求を通知する。 Next, when creating or editing the machining program 511 , the input unit 56 of the numerical controller 5 notifies the program editing unit 57 of a request for creating or editing the machining program 511 .

加工プログラム511を作成する場合、プログラム編集部57は、加工プログラム511を生成し、記憶部51に記憶する。加工プログラム511を編集する場合、プログラム編集部57は、記憶部51から加工プログラム511を読み出す。 When creating the machining program 511 , the program editing unit 57 creates the machining program 511 and stores it in the storage unit 51 . When editing the machining program 511 , the program editing unit 57 reads the machining program 511 from the storage unit 51 .

加工プログラム511を編集する際に、変数512は、入力部56からプログラム編集部57に入力される。そして、プログラム編集部57は、記憶部51から変数リスト情報513を読み出し、入力された変数512が変数リスト情報513に存在するかを判定する。 When editing the machining program 511 , the variables 512 are input from the input section 56 to the program editing section 57 . Program editing unit 57 then reads variable list information 513 from storage unit 51 and determines whether input variable 512 exists in variable list information 513 .

プログラム編集部57は、変数512が変数リスト情報513に存在する場合、編集中の加工プログラム511と変数512との対応関係を変数リスト情報513に基づいて判定する。変数リスト情報513において編集中の加工プログラム511と変数512とが対応付けられていない場合、プログラム編集部57は、警告メッセージを表示部58に表示させ、入力された変数512を削除する。 If the variable 512 exists in the variable list information 513 , the program editing unit 57 determines the correspondence relationship between the machining program 511 being edited and the variable 512 based on the variable list information 513 . If the machining program 511 being edited and the variable 512 are not associated in the variable list information 513, the program editing unit 57 displays a warning message on the display unit 58 and deletes the input variable 512.

加工プログラム511を保存する際に、プログラム編集部57は、記憶部51から変数リスト情報513を読み出す。プログラム編集部57は、加工プログラム511中に変数512を使用している場合、使用された変数512が変数リスト情報513に存在するかを判定する。 When saving the machining program 511 , the program editing unit 57 reads the variable list information 513 from the storage unit 51 . When the variable 512 is used in the machining program 511 , the program editing unit 57 determines whether the used variable 512 exists in the variable list information 513 .

変数リスト情報513に変数512が存在する場合、プログラム編集部57は、変数リスト情報513に基づいて、保存する加工プログラム511と変数512との対応関係を判定する。 If the variable list information 513 includes the variable 512 , the program editing unit 57 determines the correspondence relationship between the saved machining program 511 and the variable 512 based on the variable list information 513 .

プログラム編集部57は、変数リスト情報513において加工プログラム511と変数512とが対応付けられていない場合、表示部58に警告メッセージを表示させ、加工プログラム511の保存を禁止する。プログラム編集部57は、変数リスト情報に存在しない変数の場合、又は加工プログラム511と変数512との対応関係が変数リスト情報513で対応付けられた変数512の場合、加工プログラム511を保存する。 If the machining program 511 and the variable 512 are not associated in the variable list information 513, the program editing unit 57 causes the display unit 58 to display a warning message and prohibits saving the machining program 511. FIG. The program editing unit 57 saves the machining program 511 when the variable does not exist in the variable list information, or when the correspondence between the machining program 511 and the variable 512 is the variable 512 associated with the variable list information 513 .

加工プログラム511を実行する際、プログラム入力部52は、記憶部51から加工プログラム511を読み出し、解析部53に入力する。
解析部53は、加工プログラム511に基づく指令種別を指令ブロックごとに解析する。解析部53は、変数512を解析する際に、記憶部51から変数リスト情報513を読み出し、変数512が変数リスト情報513に存在するかを判定する。
When executing the machining program 511 , the program input unit 52 reads the machining program 511 from the storage unit 51 and inputs it to the analysis unit 53 .
The analysis unit 53 analyzes the command type based on the machining program 511 for each command block. When analyzing the variable 512 , the analysis unit 53 reads the variable list information 513 from the storage unit 51 and determines whether the variable 512 exists in the variable list information 513 .

解析部53は、変数512が変数リスト情報513に存在する場合、変数リスト情報513に基づいて、実行中の加工プログラム511と変数512との対応関係を判定する。
変数リスト情報513において、変数512が、実行中の加工プログラム511と対応付けられていない場合、解析部53は、加工プログラムの実行を中止する。
When the variable 512 exists in the variable list information 513 , the analysis unit 53 determines the correspondence relationship between the machining program 511 being executed and the variable 512 based on the variable list information 513 .
In the variable list information 513, if the variable 512 is not associated with the machining program 511 being executed, the analysis unit 53 stops executing the machining program.

変数512が変数リスト情報に存在しない場合、又は変数512が、加工プログラム511と変数512とが変数リスト情報513において対応付けられている場合、解析部53は、解析結果に従って記憶部51の変数512の値を読み書きする。例えば、解析部53が移動指令を解析した際、制御部54は、移動指令を受け付け、移動指令に基づいて工作機械2の制御軸を駆動させる。 If the variable 512 does not exist in the variable list information, or if the variable 512 is associated with the machining program 511 and the variable 512 in the variable list information 513, the analysis unit 53 stores the variable 512 in the storage unit 51 according to the analysis result. Reads and writes the value of For example, when the analysis unit 53 analyzes the movement command, the control unit 54 receives the movement command and drives the control axis of the machine tool 2 based on the movement command.

次に、加工プログラム511及びロボットプログラム611から変数リスト情報612を作成する場合について説明する。変数リスト情報生成部41は、数値制御装置5の記憶部51における変数512を含む全ての加工プログラム511の取得要求と、ロボット制御装置6の記憶部61における変数512を含む全てのロボットプログラム611の取得要求と、を産業用装置4のデータ送受信部43に通知する。 Next, a case of creating the variable list information 612 from the machining program 511 and the robot program 611 will be described. The variable list information generating unit 41 requests acquisition of all the machining programs 511 including the variables 512 in the storage unit 51 of the numerical control device 5 and all robot programs 611 including the variables 512 in the storage unit 61 of the robot control device 6. An acquisition request is notified to the data transmission/reception unit 43 of the industrial device 4 .

産業用装置4のデータ送受信部43は、数値制御装置5のデータ送受信部55を介して、記憶部51から読み出された変数512を含む全ての加工プログラム511を取得する。また、データ送受信部43は、ロボット制御装置6のデータ送受信部65を介して、ロボット制御装置6の記憶部61から読み出された変数512を含む全てのロボットプログラム611を取得する。データ送受信部43は、取得した全ての加工プログラム511及び全てのロボットプログラム611を変数リスト情報生成部41へ入力する。 The data transmitter/receiver 43 of the industrial device 4 acquires all machining programs 511 including the variables 512 read from the storage unit 51 via the data transmitter/receiver 55 of the numerical controller 5 . The data transmitter/receiver 43 also acquires all the robot programs 611 including the variables 512 read from the storage 61 of the robot controller 6 via the data transmitter/receiver 65 of the robot controller 6 . The data transmission/reception unit 43 inputs all the acquired processing programs 511 and all robot programs 611 to the variable list information generation unit 41 .

変数リスト情報生成部41は、変数リスト情報612を作成し、入力された加工プログラム511及びロボットプログラム611中に含まれる変数512を検索する。変数リスト情報生成部41は、検索した変数512を、当該変数512を含む加工プログラム511又はロボットプログラム611と対応付けて変数リスト情報612に追加する。変数リスト情報生成部41は、入力された加工プログラム511及びロボットプログラム611を全て検索したのち、変数リスト情報612を変数リスト情報出力部42に入力する。 The variable list information generation unit 41 creates variable list information 612 and searches for variables 512 included in the input machining program 511 and robot program 611 . The variable list information generation unit 41 associates the searched variable 512 with the machining program 511 or the robot program 611 including the variable 512 and adds it to the variable list information 612 . The variable list information generation unit 41 searches all the input machining programs 511 and robot programs 611 and then inputs the variable list information 612 to the variable list information output unit 42 .

変数リスト情報出力部42は、変数リスト情報612を表示部44に表示させる。変数リスト情報出力部42は、データ送受信部55へ変数リスト情報612を出力し、データ送受信部43は、変数リスト情報612をロボット制御装置6のデータ送受信部65へ送信する。 The variable list information output unit 42 causes the display unit 44 to display the variable list information 612 . The variable list information output section 42 outputs the variable list information 612 to the data transmission/reception section 55 , and the data transmission/reception section 43 transmits the variable list information 612 to the data transmission/reception section 65 of the robot controller 6 .

ロボット制御装置6は、データ送受信部65で受信した変数リスト情報612をロボット制御装置6の記憶部61に保存する。 The robot control device 6 saves the variable list information 612 received by the data transmission/reception unit 65 in the storage unit 61 of the robot control device 6 .

次に、ロボットプログラム611を作成又は編集する場合について説明する。ロボット制御装置6の入力部66は、プログラム編集部67へロボットプログラム611の作成又は編集の要求を通知する。 Next, the case of creating or editing the robot program 611 will be described. The input unit 66 of the robot control device 6 notifies the program editing unit 67 of a request to create or edit the robot program 611 .

ロボットプログラム611を作成する場合、プログラム編集部67は、ロボットプログラム611を生成し、記憶部61に記憶する。ロボットプログラム611を編集する場合、プログラム編集部67は、記憶部61からロボットプログラム611を読み出す。 When creating the robot program 611 , the program editing unit 67 creates the robot program 611 and stores it in the storage unit 61 . When editing the robot program 611 , the program editing unit 67 reads the robot program 611 from the storage unit 61 .

ロボットプログラムを編集する際、入力部66は、プログラム編集部67に変数512を入力する。プログラム編集部67は、記憶部61から変数リスト情報612を読み出し、入力された変数512が変数リスト情報612に存在する変数であるかを判定する。変数512が変数リスト情報612に存在する場合、プログラム編集部67は、変数リスト情報612に基づいて、編集中のロボットプログラム611と変数512との対応関係を判定する。 When editing the robot program, the input unit 66 inputs variables 512 to the program editing unit 67 . Program editing unit 67 reads variable list information 612 from storage unit 61 and determines whether input variable 512 is a variable that exists in variable list information 612 . If the variable 512 exists in the variable list information 612 , the program editing unit 67 determines the correspondence relationship between the robot program 611 being edited and the variable 512 based on the variable list information 612 .

プログラム編集部67は、変数リスト情報612において加工プログラム511又はロボットプログラム611と変数512とが対応付けられていない場合、ロボット制御装置6の表示部68に警告メッセージを表示させ、入力された変数512を削除する。 If the machining program 511 or the robot program 611 is not associated with the variable 512 in the variable list information 612, the program editing unit 67 causes the display unit 68 of the robot controller 6 to display a warning message and displays the input variable 512. delete.

ロボットプログラム611を保存する際、プログラム編集部67は、記憶部61から変数リスト情報612を読み出す。ロボットプログラム611中に変数512を使用している場合、使用された変数512が変数リスト情報に存在するかを判定する。 When saving the robot program 611 , the program editing unit 67 reads the variable list information 612 from the storage unit 61 . If a variable 512 is used in the robot program 611, it is determined whether the used variable 512 exists in the variable list information.

変数512が変数リスト情報612に存在する場合、プログラム編集部67は、変数リスト情報612に基づいてロボットプログラム611と変数512との対応関係を判定する。変数リスト情報612においてロボットプログラム611と変数512とが対応付けられていない場合、プログラム編集部67は、表示部68に警告メッセージを表示させ、ロボットプログラム611の保存を禁止する。 If the variable 512 exists in the variable list information 612 , the program editor 67 determines the correspondence relationship between the robot program 611 and the variable 512 based on the variable list information 612 . If the robot program 611 and the variable 512 are not associated with each other in the variable list information 612 , the program editing unit 67 displays a warning message on the display unit 68 and prohibits saving the robot program 611 .

変数512が変数リスト情報612に存在しない場合、又はロボットプログラム611と変数512との対応関係が変数リスト情報612で対応付けられている場合、プログラム編集部67は、ロボットプログラム611を記憶部61に保存する。 If the variable 512 does not exist in the variable list information 612, or if the correspondence between the robot program 611 and the variable 512 is associated in the variable list information 612, the program editing unit 67 stores the robot program 611 in the storage unit 61. save.

ロボットプログラム611を実行した場合、プログラム入力部62は、ロボットプログラム611を記憶部61から読み出し、解析部63に入力する。 When the robot program 611 is executed, the program input unit 62 reads the robot program 611 from the storage unit 61 and inputs it to the analysis unit 63 .

解析部63は、ロボットプログラム611に基づく指令種別を指令ブロックごとに解析する。変数512を解析する際に、解析部63は、記憶部61から変数リスト情報612を読み出し、変数512が変数リスト情報612に存在するかを判定する。 The analysis unit 63 analyzes the command type based on the robot program 611 for each command block. When analyzing the variable 512 , the analysis unit 63 reads the variable list information 612 from the storage unit 61 and determines whether the variable 512 exists in the variable list information 612 .

変数512が変数リスト情報612に存在する場合、解析部63は、変数リスト情報612に基づいて、実行中のロボットプログラム611と変数512との対応関係を判定する。 If the variable 512 exists in the variable list information 612 , the analysis unit 63 determines the correspondence relationship between the robot program 611 being executed and the variable 512 based on the variable list information 612 .

変数リスト情報612において、変数512が、実行中のロボットプログラム611と対応付けられてない場合、解析部63は、ロボットプログラム611の実行を中止する。変数512が変数リスト情報に存在しない場合、又はロボットプログラム611と変数512とが変数リスト情報612で対応付けられている場合、解析部63は、解析結果に従い、データ送受信部55及びデータ送受信部65を介して、数値制御装置5の記憶部51の変数512を読み書きする。例えば、解析部63が移動指令を解析した際、制御部64は、移動指令に基づいてロボット3の各関節が駆動させる。 In the variable list information 612 , if the variable 512 is not associated with the robot program 611 being executed, the analysis unit 63 stops executing the robot program 611 . If the variable 512 does not exist in the variable list information, or if the robot program 611 and the variable 512 are associated in the variable list information 612, the analysis unit 63 sends the data transmission/reception unit 55 and the data transmission/reception unit 65 according to the analysis result. , the variable 512 in the storage unit 51 of the numerical controller 5 is read and written. For example, when the analysis unit 63 analyzes the movement command, the control unit 64 drives each joint of the robot 3 based on the movement command.

[第1実施形態]
第1実施形態に係る数値制御システム1の処理について、図2~図10を参照しながら説明する。図2~図7は、第1実施形態に係る数値制御システム1の処理の例を示す図であり、図8~図10は、第1実施形態に係る数値制御システム1の処理の流れを示すフローチャートである。
[First embodiment]
Processing of the numerical control system 1 according to the first embodiment will be described with reference to FIGS. 2 to 10. FIG. 2 to 7 are diagrams showing examples of processing of the numerical control system 1 according to the first embodiment, and FIGS. 8 to 10 show the flow of processing of the numerical control system 1 according to the first embodiment. It is a flow chart.

第1実施形態に係る数値制御システム1は、加工プログラム511において使用中の変数512を、既存の加工プログラム511aにおいて使用及び実行する。 The numerical control system 1 according to the first embodiment uses and executes variables 512 in use in the machining program 511 in the existing machining program 511a.

図8は、第1実施形態に係る産業用装置4の処理を示すフローチャートである。ステップS1において、変数リスト情報生成部41は、数値制御装置5の記憶部51に記憶された全ての加工プログラム511の取得要求を、産業用装置4のデータ送受信部43に通知する。ここで、全ての加工プログラム511は、変数512を含む。データ送受信部43は、数値制御装置5のデータ送受信部55を介して、数値制御装置5の記憶部51から読み出された全ての加工プログラム511を取得し、変数リスト情報生成部41へ入力する(図2参照)。 FIG. 8 is a flowchart showing processing of the industrial device 4 according to the first embodiment. In step S<b>1 , the variable list information generating section 41 notifies the data transmitting/receiving section 43 of the industrial device 4 of an acquisition request for all the machining programs 511 stored in the storage section 51 of the numerical controller 5 . Here, all machining programs 511 contain variables 512 . The data transmission/reception unit 43 acquires all the machining programs 511 read from the storage unit 51 of the numerical control device 5 via the data transmission/reception unit 55 of the numerical control device 5 and inputs them to the variable list information generation unit 41 . (See Figure 2).

ステップS2において、変数リスト情報生成部41は、変数リスト情報513を作成し、入力された加工プログラム511中に含まれる変数512を検索する(図3参照)。検索した変数512は、当該変数512を含む加工プログラム511と対応付けられ、変数リスト情報513に追加される(図4参照)。ここで、図4に示すように、変数リスト情報513は、使用中の変数512と、変数512を使用する加工プログラム511のプログラム名とを対応付けて記憶する。変数リスト情報生成部41は、入力された加工プログラム511を全て検索した後、変数リスト情報513を変数リスト情報出力部42に入力する。 In step S2, the variable list information generator 41 creates the variable list information 513 and searches for the variables 512 included in the input machining program 511 (see FIG. 3). The retrieved variable 512 is associated with the machining program 511 including the variable 512 and added to the variable list information 513 (see FIG. 4). Here, as shown in FIG. 4, the variable list information 513 stores the variable 512 in use and the program name of the machining program 511 that uses the variable 512 in association with each other. After retrieving all the input processing programs 511 , the variable list information generation unit 41 inputs the variable list information 513 to the variable list information output unit 42 .

ステップS3において、変数リスト情報出力部42は、産業用装置4のデータ送受信部43へ変数リスト情報513を出力し、産業用装置4のデータ送受信部は、変数リスト情報513を数値制御装置5のデータ送受信部55へ送信する(図5参照)。 In step S3, the variable list information output unit 42 outputs the variable list information 513 to the data transmission/reception unit 43 of the industrial device 4, and the data transmission/reception unit of the industrial device 4 outputs the variable list information 513 to the numerical controller 5. It transmits to the data transmitting/receiving unit 55 (see FIG. 5).

図9は、第1実施形態に係る数値制御装置5において加工プログラム511の編集を行う場合の処理を示すフローチャートである。ステップS11において、数値制御装置5の入力部56は、プログラム編集部57へ加工プログラム511aの編集の要求を通知する。プログラム編集部57は、記憶部51から加工プログラム511aを読み出し、入力部56は、変数512をプログラム編集部57に入力する。また、プログラム編集部57は、記憶部51から変数リスト情報513を読み出す。 FIG. 9 is a flow chart showing processing when editing the machining program 511 in the numerical controller 5 according to the first embodiment. In step S11, the input section 56 of the numerical controller 5 notifies the program editing section 57 of a request to edit the machining program 511a. The program editing unit 57 reads the machining program 511 a from the storage unit 51 , and the input unit 56 inputs variables 512 to the program editing unit 57 . Program editing unit 57 also reads variable list information 513 from storage unit 51 .

ステップS12において、プログラム編集部57は、入力された変数512が変数リスト情報513に存在するかを判定する。入力された変数512が変数リスト情報513に存在する場合(YES)、処理は、ステップS13へ移る。一方、変数512が変数リスト情報513に存在しない場合(NO)、処理は、ステップS16へ移る。 In step S<b>12 , the program editing unit 57 determines whether the input variable 512 exists in the variable list information 513 . If the input variable 512 exists in the variable list information 513 (YES), the process proceeds to step S13. On the other hand, if the variable 512 does not exist in the variable list information 513 (NO), the process proceeds to step S16.

ステップS13において、プログラム編集部57は、変数512が変数リスト情報513に存在する場合、変数リスト情報513に基づいて、編集中の加工プログラム511aと変数512との対応関係を判定する。加工プログラム511aと変数512との対応関係が異なる場合、すなわち加工プログラム511aと変数512とが対応付けられていない場合、(YES)、処理は、ステップS14へ移る。一方、加工プログラム511aと変数512とが対応付けられている場合(NO)、処理は、ステップS16へ移る。 In step S<b>13 , when the variable 512 exists in the variable list information 513 , the program editing unit 57 determines the correspondence relationship between the machining program 511 a being edited and the variable 512 based on the variable list information 513 . If the correspondence relationship between the machining program 511a and the variable 512 is different, that is, if the machining program 511a and the variable 512 are not associated (YES), the process proceeds to step S14. On the other hand, when the machining program 511a and the variable 512 are associated (NO), the process proceeds to step S16.

ステップS14において、プログラム編集部57は、既存の加工プログラム511aにおいて、入力された変数512を使用せず、削除する。 In step S14, the program editing unit 57 does not use the input variable 512 in the existing machining program 511a and deletes it.

ステップS15において、プログラム編集部57は、警告メッセージを表示部58に表示させる(図6参照)。図6の例では、表示部58は、「変数#121は加工プログラム名O0456で使用されていること及び加工プログラム名O0123を保存できない」ことを示す警告メッセージを表示する。ここで加工プログラム名O0123は、加工プログラム511aを示す。 In step S15, the program editing unit 57 causes the display unit 58 to display a warning message (see FIG. 6). In the example of FIG. 6, the display unit 58 displays a warning message indicating that "variable #121 is used in machining program name O0456 and machining program name O0123 cannot be saved". Here, the machining program name O0123 indicates the machining program 511a.

ステップS16において、プログラム編集部57は、変数512を使用して、既存の加工プログラム511aの編集を行う。 In step S16, the program editing unit 57 uses the variable 512 to edit the existing machining program 511a.

図10は、第1実施形態に係る数値制御装置5の処理を示すフローチャートである。ステップS21において、数値制御装置5の入力部56は、プログラム編集部57へ加工プログラム511aの実行の要求を通知する。プログラム編集部57は、記憶部51から加工プログラム511aを読み出し、入力部56は、変数512をプログラム編集部57に入力する。また、プログラム編集部57は、記憶部51から変数リスト情報513を読み出す。 FIG. 10 is a flow chart showing processing of the numerical controller 5 according to the first embodiment. In step S21, the input section 56 of the numerical controller 5 notifies the program editing section 57 of a request to execute the machining program 511a. The program editing unit 57 reads the machining program 511 a from the storage unit 51 , and the input unit 56 inputs variables 512 to the program editing unit 57 . Program editing unit 57 also reads variable list information 513 from storage unit 51 .

ステップS22において、プログラム編集部57は、入力された変数512が変数リスト情報513に存在するかを判定する。入力された変数512が変数リスト情報513に存在する場合(YES)、処理は、ステップS23へ移る。一方、変数512が変数リスト情報513に存在しない場合(NO)、処理は、ステップS26へ移る。 In step S<b>22 , the program editing unit 57 determines whether the input variable 512 exists in the variable list information 513 . If the input variable 512 exists in the variable list information 513 (YES), the process proceeds to step S23. On the other hand, if the variable 512 does not exist in the variable list information 513 (NO), the process proceeds to step S26.

ステップS23において、プログラム編集部57は、変数512が変数リスト情報513に存在する場合、変数リスト情報513に基づいて、加工プログラム511aと変数512との対応関係を判定する。加工プログラム511aと変数512との対応関係が異なる場合、すなわち加工プログラム511aと変数512とが対応付けられていない場合、(YES)、処理は、ステップS24へ移る。一方、加工プログラム511aと変数512とが対応付けられている場合(NO)、処理は、ステップS26へ移る。 In step S<b>23 , if the variable 512 exists in the variable list information 513 , the program editing unit 57 determines the correspondence relationship between the machining program 511 a and the variable 512 based on the variable list information 513 . If the correspondence relationship between the machining program 511a and the variable 512 is different, that is, if the machining program 511a and the variable 512 are not associated (YES), the process proceeds to step S24. On the other hand, when the machining program 511a and the variable 512 are associated (NO), the process proceeds to step S26.

ステップS24において、プログラム編集部57は、既存の加工プログラム511aにおいて、入力された変数512を使用せず、加工プログラム511aの実行を中止又は禁止する。 In step S24, the program editing unit 57 does not use the input variable 512 in the existing machining program 511a, and suspends or prohibits execution of the machining program 511a.

ステップS25において、プログラム編集部57は、既存の加工プログラム511aを実行できないことを示す警告メッセージを表示部58に表示させる(図7参照)。 In step S25, the program editing unit 57 causes the display unit 58 to display a warning message indicating that the existing machining program 511a cannot be executed (see FIG. 7).

ステップS26において、プログラム編集部57は、変数512を使用して、既存の加工プログラム511aを実行する。 In step S26, the program editor 57 uses the variables 512 to execute the existing machining program 511a.

このような構成により、第1実施形態に係る数値制御システム1は、全ての加工プログラム511から、加工プログラム511と対応付けられた変数512の変数リスト情報513を数値制御装置5に通知する。これにより、数値制御システム1は、加工プログラムと対応付けられた変数を重複した加工プログラムの編集を回避できる。 With such a configuration, the numerical control system 1 according to the first embodiment notifies the numerical control device 5 of the variable list information 513 of the variables 512 associated with the machining programs 511 from all the machining programs 511 . As a result, the numerical control system 1 can avoid editing a machining program that duplicates the variables associated with the machining program.

また、数値制御システム1は、加工プログラムと対応付けられた変数を重複した加工プログラムが実行された場合、変数リスト情報に基づいて加工プログラムの実行を中止又は禁止する。これにより、数値制御システム1は、加工プログラムと対応付けられた変数の重複によって生じ得る加工不良、工作機械2の破損、工作機械2とロボット3との衝突等のような不具合を回避できる。 In addition, when a machining program that duplicates the variables associated with the machining program is executed, the numerical control system 1 stops or prohibits execution of the machining program based on the variable list information. As a result, the numerical control system 1 can avoid problems such as defective machining, breakage of the machine tool 2, collision between the machine tool 2 and the robot 3, and the like, which may occur due to duplication of variables associated with machining programs.

更に、数値制御システム1は、数値制御装置5の全ての加工プログラム511から、加工プログラム511と対応付けられた変数512の変数リスト情報513を作成し、変数リスト情報513を出力及び表示する。これにより、数値制御システム1は、新たな用途で使用する変数を決定するときに、加工プログラムを確認する手間を省くことができる。 Further, the numerical control system 1 creates variable list information 513 of variables 512 associated with the machining programs 511 from all the machining programs 511 of the numerical control device 5, and outputs and displays the variable list information 513. As a result, the numerical control system 1 can save the trouble of checking the machining program when determining variables to be used in a new application.

また、数値制御システム1において、変数を使用しないことは、変数の保存を禁止すること、変数の参照を禁止すること、及び変数を含む加工プログラムの実行を禁止することのうちの少なくとも1つを含む。このような構成により、数値制御システム1は、加工プログラムと対応付けられた変数の重複によって生じ得る加工不良、工作機械2の破損、工作機械2とロボット3との衝突等のような不具合を適切に回避できる。 In addition, in the numerical control system 1, not using a variable means at least one of prohibiting storage of the variable, prohibiting reference to the variable, and prohibiting execution of a machining program containing the variable. include. With such a configuration, the numerical control system 1 appropriately corrects problems such as machining defects, breakage of the machine tool 2, collision between the machine tool 2 and the robot 3, etc. that may occur due to duplication of variables associated with machining programs. can be avoided.

また、数値制御装置5は、変数を使用しない場合、変数を使用しないことを示す警告メッセージを表示する表示部58を更に備える。このような構成により、数値制御システム1は、変数を使用しないことをユーザに対して適切に報知することができる。 The numerical controller 5 further includes a display unit 58 that displays a warning message indicating that the variable is not used when the variable is not used. With such a configuration, the numerical control system 1 can appropriately notify the user that the variables are not used.

[第2実施形態]
第2実施形態に係る数値制御システム1の処理について、図2~図5及び図11~図15を参照しながら説明する。図2~図5、図11及び図12は、第2実施形態に係る数値制御システム1の処理の例を示す図であり、図13~図15は、第2実施形態に係る数値制御システム1の処理の流れを示すフローチャートである。
[Second embodiment]
Processing of the numerical control system 1 according to the second embodiment will be described with reference to FIGS. 2 to 5 and 11 to 15. FIG. 2 to 5, 11 and 12 are diagrams showing examples of processing of the numerical control system 1 according to the second embodiment, and FIGS. 3 is a flowchart showing the flow of processing of .

第2実施形態に係る数値制御システム1は、加工プログラム511において使用中の変数512を、新規の加工プログラム511bにおいて使用及び実行する。 The numerical control system 1 according to the second embodiment uses and executes the variable 512 being used in the machining program 511 in the new machining program 511b.

図13は、第2実施形態に係る産業用装置4の処理を示すフローチャートである。ステップS31において、変数リスト情報生成部41は、数値制御装置5の記憶部51に記憶された全ての加工プログラム511の取得要求を、産業用装置4のデータ送受信部43に通知する。ここで、全ての加工プログラム511は、変数512を含む。データ送受信部43は、数値制御装置5のデータ送受信部55を介して、数値制御装置5の記憶部51から読み出された全ての加工プログラム511を取得し、変数リスト情報生成部41へ入力する(図2参照)。 FIG. 13 is a flow chart showing processing of the industrial device 4 according to the second embodiment. In step S<b>31 , the variable list information generation unit 41 notifies the data transmission/reception unit 43 of the industrial device 4 of an acquisition request for all the machining programs 511 stored in the storage unit 51 of the numerical controller 5 . Here, all machining programs 511 contain variables 512 . The data transmission/reception unit 43 acquires all the machining programs 511 read from the storage unit 51 of the numerical control device 5 via the data transmission/reception unit 55 of the numerical control device 5 and inputs them to the variable list information generation unit 41 . (See Figure 2).

ステップS32において、変数リスト情報生成部41は、変数リスト情報513を作成し、入力された加工プログラム511中に含まれる変数512を検索する(図3参照)。検索した変数512は、当該変数512を含む加工プログラム511と対応付けられ、変数リスト情報513に追加される(図4参照)。ここで、図4に示すように、変数リスト情報513は、使用中の変数512と、変数512を使用する加工プログラム511のプログラム名とを対応付けて記憶される。変数リスト情報生成部41は、入力された加工プログラム511を全て検索した後、変数リスト情報513を変数リスト情報出力部42に入力する。 In step S32, the variable list information generator 41 creates the variable list information 513 and searches for the variables 512 included in the input machining program 511 (see FIG. 3). The retrieved variable 512 is associated with the machining program 511 including the variable 512 and added to the variable list information 513 (see FIG. 4). Here, as shown in FIG. 4, the variable list information 513 stores the variable 512 in use and the program name of the machining program 511 that uses the variable 512 in association with each other. After retrieving all the input processing programs 511 , the variable list information generation unit 41 inputs the variable list information 513 to the variable list information output unit 42 .

ステップS33において、変数リスト情報出力部42は、産業用装置4のデータ送受信部43へ変数リスト情報513を出力し、産業用装置4のデータ送受信部は、変数リスト情報513を数値制御装置5のデータ送受信部55へ送信する(図5参照)。 In step S33, the variable list information output unit 42 outputs the variable list information 513 to the data transmission/reception unit 43 of the industrial device 4, and the data transmission/reception unit of the industrial device 4 outputs the variable list information 513 to the numerical controller 5. It transmits to the data transmitting/receiving unit 55 (see FIG. 5).

図14は、第2実施形態に係る数値制御装置5において加工プログラム511bの編集又は作成を行う場合の処理を示すフローチャートである。ステップS41において、数値制御装置5の入力部56は、プログラム編集部57へ加工プログラム511bの編集又は作成の要求を通知する。プログラム編集部57は、記憶部51から加工プログラム511bを読み出し、入力部56は、変数512をプログラム編集部57に入力する。また、プログラム編集部57は、記憶部51から変数リスト情報513を読み出す。 FIG. 14 is a flow chart showing processing when editing or creating the machining program 511b in the numerical controller 5 according to the second embodiment. In step S41, the input section 56 of the numerical controller 5 notifies the program editing section 57 of a request to edit or create the machining program 511b. The program editing unit 57 reads the machining program 511 b from the storage unit 51 and the input unit 56 inputs the variable 512 to the program editing unit 57 . Program editing unit 57 also reads variable list information 513 from storage unit 51 .

ステップS42において、プログラム編集部57は、入力された変数512が変数リスト情報513に存在するかを判定する。入力された変数512が変数リスト情報513に存在する場合(YES)、処理は、ステップS43へ移る。一方、変数512が変数リスト情報513に存在しない場合(NO)、処理は、ステップS46へ移る。 In step S<b>42 , the program editing unit 57 determines whether the input variable 512 exists in the variable list information 513 . If the input variable 512 exists in the variable list information 513 (YES), the process proceeds to step S43. On the other hand, if the variable 512 does not exist in the variable list information 513 (NO), the process proceeds to step S46.

ステップS43において、プログラム編集部57は、変数512が変数リスト情報513に存在する場合、変数リスト情報513に基づいて、加工プログラム511bと変数512との対応関係を判定する。加工プログラム511bと変数512との対応関係が異なる場合、すなわち加工プログラム511bと変数512とが対応付けられていない場合、(YES)、処理は、ステップS44へ移る。一方、加工プログラム511と変数512とが対応付けられている場合(NO)、処理は、ステップS46へ移る。 In step S<b>43 , when the variable 512 exists in the variable list information 513 , the program editor 57 determines the correspondence relationship between the machining program 511 b and the variable 512 based on the variable list information 513 . If the correspondence relationship between the machining program 511b and the variable 512 is different, that is, if the machining program 511b and the variable 512 are not associated (YES), the process proceeds to step S44. On the other hand, when the machining program 511 and the variable 512 are associated (NO), the process proceeds to step S46.

ステップS44において、プログラム編集部57は、新規の加工プログラム511bにおいて、入力された変数512を使用せず、削除する。また、プログラム編集部57は、入力された変数512を使用せず、新規の加工プログラム511bの保存を禁止してもよい。 In step S44, the program editing unit 57 does not use the input variable 512 in the new machining program 511b and deletes it. Also, the program editing unit 57 may prohibit saving of the new machining program 511b without using the input variable 512. FIG.

ステップS45において、プログラム編集部57は、警告メッセージを表示部58に表示させる(図11参照)。図11の例では、表示部58は、「変数#101は加工プログラム名O0123で使用されていること及び加工プログラム名O0789を保存できない」ことを示す警告メッセージを表示する。ここで加工プログラム名O0789は、加工プログラム511bを示す。 In step S45, the program editing unit 57 causes the display unit 58 to display a warning message (see FIG. 11). In the example of FIG. 11, the display unit 58 displays a warning message indicating that "variable #101 is used in machining program name O0123 and machining program name O0789 cannot be saved". Here, the machining program name O0789 indicates the machining program 511b.

ステップS46において、プログラム編集部57は、変数512を使用して、新規の加工プログラム511bの編集又は作成を行う。 In step S46, the program editor 57 uses the variable 512 to edit or create a new machining program 511b.

図15は、第2実施形態に係る数値制御装置5の処理を示すフローチャートである。ステップS51において、数値制御装置5の入力部56は、プログラム編集部57へ加工プログラム511bの実行の要求を通知する。プログラム編集部57は、記憶部51から加工プログラム511bを読み出し、入力部56は、変数512をプログラム編集部57に入力する。また、プログラム編集部57は、記憶部51から変数リスト情報513を読み出す。 FIG. 15 is a flow chart showing processing of the numerical controller 5 according to the second embodiment. In step S51, the input section 56 of the numerical controller 5 notifies the program editing section 57 of a request to execute the machining program 511b. The program editing unit 57 reads the machining program 511 b from the storage unit 51 and the input unit 56 inputs the variable 512 to the program editing unit 57 . Program editing unit 57 also reads variable list information 513 from storage unit 51 .

ステップS52において、プログラム編集部57は、入力された変数512が変数リスト情報513に存在するかを判定する。入力された変数512が変数リスト情報513に存在する場合(YES)、処理は、ステップS53へ移る。一方、変数512が変数リスト情報513に存在しない場合(NO)、処理は、ステップS56へ移る。 In step S<b>52 , the program editing unit 57 determines whether the input variable 512 exists in the variable list information 513 . If the input variable 512 exists in the variable list information 513 (YES), the process proceeds to step S53. On the other hand, if the variable 512 does not exist in the variable list information 513 (NO), the process proceeds to step S56.

ステップS53において、プログラム編集部57は、変数512が変数リスト情報513に存在する場合、変数リスト情報513に基づいて、加工プログラム511bと変数512との対応関係を判定する。加工プログラム511bと変数512との対応関係が異なる場合、すなわち加工プログラム511bと変数512とが対応付けられていない場合、(YES)、処理は、ステップS54へ移る。一方、加工プログラム511bと変数512とが対応付けられている場合(NO)、処理は、ステップS56へ移る。 In step S<b>53 , if the variable 512 exists in the variable list information 513 , the program editor 57 determines the correspondence relationship between the machining program 511 b and the variable 512 based on the variable list information 513 . If the correspondence relationship between the machining program 511b and the variable 512 is different, that is, if the machining program 511b and the variable 512 are not associated (YES), the process proceeds to step S54. On the other hand, when the machining program 511b and the variable 512 are associated (NO), the process proceeds to step S56.

ステップS54において、プログラム編集部57は、加工プログラム511bにおいて、入力された変数512を使用せず、加工プログラム511bの実行を中止又は禁止する。 In step S54, the program editing unit 57 does not use the input variable 512 in the machining program 511b, and suspends or prohibits execution of the machining program 511b.

ステップS55において、プログラム編集部57は、加工プログラム511bを実行できないことを示す警告メッセージを表示部58に表示させる(図12参照)。 In step S55, the program editing unit 57 causes the display unit 58 to display a warning message indicating that the machining program 511b cannot be executed (see FIG. 12).

ステップS56において、プログラム編集部57は、変数512を使用して、新規の加工プログラム511bを実行する。 In step S56, the program editor 57 uses the variable 512 to execute the new machining program 511b.

このような構成により、第2実施形態に係る数値制御システム1は、全ての加工プログラム511から、加工プログラム511と対応付けられた変数512の変数リスト情報513を数値制御装置5に通知する。これにより、数値制御システム1は、加工プログラムと対応付けられた変数を重複した加工プログラムの編集又は作成を回避できる。 With such a configuration, the numerical control system 1 according to the second embodiment notifies the numerical control device 5 of the variable list information 513 of the variables 512 associated with the machining programs 511 from all the machining programs 511 . Thereby, the numerical control system 1 can avoid editing or creating a machining program that duplicates the variables associated with the machining program.

また、数値制御システム1は、加工プログラムと対応付けられた変数を重複した加工プログラムが実行された場合、変数リスト情報に基づいて加工プログラムの実行を中止又は禁止する。これにより、数値制御システム1は、加工プログラムと対応付けられた変数の重複によって生じ得る加工不良、工作機械2の破損、工作機械2とロボット3との衝突等のような不具合を回避できる。 In addition, when a machining program that duplicates the variables associated with the machining program is executed, the numerical control system 1 stops or prohibits execution of the machining program based on the variable list information. As a result, the numerical control system 1 can avoid problems such as defective machining, breakage of the machine tool 2, collision between the machine tool 2 and the robot 3, and the like, which may occur due to duplication of variables associated with machining programs.

[第3実施形態]
第3実施形態に係る数値制御システム1の処理について、図16~図24を参照しながら説明する。図16~図21は、第3実施形態に係る数値制御システム1の処理の例を示す図であり、図22~図24は、第3実施形態に係る数値制御システム1の処理の流れを示すフローチャートである。第3実施形態に係る数値制御システム1は、加工プログラム511において使用中の変数512を、ロボットプログラム611aにおいて使用及び実行する。
[Third embodiment]
Processing of the numerical control system 1 according to the third embodiment will be described with reference to FIGS. 16 to 24. FIG. 16 to 21 are diagrams showing examples of processing of the numerical control system 1 according to the third embodiment, and FIGS. 22 to 24 show the flow of processing of the numerical control system 1 according to the third embodiment. It is a flow chart. The numerical control system 1 according to the third embodiment uses and executes variables 512 in use in the machining program 511 in the robot program 611a.

図22は、第3実施形態に係る産業用装置4の処理を示すフローチャートである。ステップS61において、変数リスト情報生成部41は、数値制御装置5の記憶部51における変数512を含む全ての加工プログラム511の取得要求と、ロボット制御装置6の記憶部61における変数512を含む全てのロボットプログラム611の取得要求と、を産業用装置4のデータ送受信部43に通知する。 FIG. 22 is a flow chart showing processing of the industrial device 4 according to the third embodiment. In step S61, the variable list information generation unit 41 issues an acquisition request for all machining programs 511 including the variables 512 in the storage unit 51 of the numerical controller 5, An acquisition request for the robot program 611 is notified to the data transmission/reception unit 43 of the industrial device 4 .

データ送受信部43は、数値制御装置5のデータ送受信部55を介して、記憶部51から読み出された変数512を含む全ての加工プログラム511を取得する。また、データ送受信部43は、ロボット制御装置6のデータ送受信部65を介して、ロボット制御装置6の記憶部61から読み出された変数512を含む全てのロボットプログラム611を取得する。データ送受信部43は、取得した全ての加工プログラム511及び全てのロボットプログラム611を変数リスト情報生成部41へ入力する。(図16参照)。 The data transmitter/receiver 43 acquires all machining programs 511 including variables 512 read from the storage unit 51 via the data transmitter/receiver 55 of the numerical controller 5 . The data transmitter/receiver 43 also acquires all the robot programs 611 including the variables 512 read from the storage 61 of the robot controller 6 via the data transmitter/receiver 65 of the robot controller 6 . The data transmission/reception unit 43 inputs all the acquired processing programs 511 and all robot programs 611 to the variable list information generation unit 41 . (See FIG. 16).

ステップS62において、変数リスト情報生成部41は、変数リスト情報612を作成し、入力された加工プログラム511及びロボットプログラム611中に含まれる変数512を検索する(図17参照)。変数リスト情報生成部41は、検索した変数512を、当該変数512を含む加工プログラム511又はロボットプログラム611と対応付けて変数リスト情報612に追加する(図18参照)。ここで、図18に示すように、変数リスト情報612は、使用中の変数と、加工プログラム511及び/又はロボットプログラム611のプログラム名とが対応付けて記憶される。変数リスト情報生成部41は、入力された加工プログラム511及びロボットプログラム611を全て検索したのち、変数リスト情報612を変数リスト情報出力部42に入力する。 In step S62, the variable list information generator 41 creates the variable list information 612 and searches for the variables 512 included in the input machining program 511 and robot program 611 (see FIG. 17). The variable list information generation unit 41 associates the retrieved variable 512 with the machining program 511 or the robot program 611 including the variable 512 and adds it to the variable list information 612 (see FIG. 18). Here, as shown in FIG. 18, the variable list information 612 stores variables in use and program names of the machining program 511 and/or the robot program 611 in association with each other. The variable list information generation unit 41 searches all the input machining programs 511 and robot programs 611 and then inputs the variable list information 612 to the variable list information output unit 42 .

ステップS63において、変数リスト情報出力部42は、データ送受信部55へ変数リスト情報612を出力し、データ送受信部43は、変数リスト情報612をロボット制御装置6のデータ送受信部65へ出力する。 In step S<b>63 , the variable list information output section 42 outputs the variable list information 612 to the data transmission/reception section 55 , and the data transmission/reception section 43 outputs the variable list information 612 to the data transmission/reception section 65 of the robot controller 6 .

図23は、第3実施形態に係るロボット制御装置6においてロボットプログラム611aの編集又は作成を行う場合の処理を示すフローチャートである。
ステップS71において、ロボット制御装置6の入力部66は、プログラム編集部67へロボットプログラム611の作成又は編集の要求を通知する。ロボットプログラム611を作成する場合、プログラム編集部67は、ロボットプログラム611を生成し、記憶部61に記憶する。ロボットプログラム611を編集する場合、プログラム編集部67は、記憶部61からロボットプログラム611を読み出す。ロボットプログラムを編集する際、入力部66は、プログラム編集部67に変数512を入力する。
FIG. 23 is a flow chart showing processing when the robot program 611a is edited or created in the robot control device 6 according to the third embodiment.
In step S71, the input section 66 of the robot control device 6 notifies the program editing section 67 of a request to create or edit the robot program 611. FIG. When creating the robot program 611 , the program editing unit 67 creates the robot program 611 and stores it in the storage unit 61 . When editing the robot program 611 , the program editing unit 67 reads the robot program 611 from the storage unit 61 . When editing the robot program, the input unit 66 inputs variables 512 to the program editing unit 67 .

ステップS72において、プログラム編集部67は、記憶部61から変数リスト情報612を読み出し、入力された変数512が変数リスト情報612に存在するかを判定する。入力された変数512が変数リスト情報612に存在する場合(YES)、処理は、ステップS73へ移る。一方、変数512が変数リスト情報612に存在しない場合(NO)、処理は、ステップS76へ移る。 In step S<b>72 , the program editing unit 67 reads the variable list information 612 from the storage unit 61 and determines whether the input variable 512 exists in the variable list information 612 . If the input variable 512 exists in the variable list information 612 (YES), the process proceeds to step S73. On the other hand, if the variable 512 does not exist in the variable list information 612 (NO), the process proceeds to step S76.

ステップS73において、プログラム編集部67は、変数512が変数リスト情報612に存在する場合、変数リスト情報612に基づいて、ロボットプログラム611aと変数512との対応関係を判定する。ロボットプログラム611aと変数512との対応関係が異なる場合、すなわちロボットプログラム611aと変数512とが対応付けられていない場合、(YES)、処理は、ステップS74へ移る。一方、ロボットプログラム611aと変数512とが対応付けられている場合(NO)、処理は、ステップS76へ移る。 In step S<b>73 , if the variable 512 exists in the variable list information 612 , the program editing unit 67 determines the correspondence relationship between the robot program 611 a and the variable 512 based on the variable list information 612 . If the robot program 611a and the variable 512 have different correspondences, that is, if the robot program 611a and the variable 512 are not associated (YES), the process proceeds to step S74. On the other hand, if the robot program 611a and the variable 512 are associated (NO), the process proceeds to step S76.

ステップS74において、プログラム編集部67は、ロボットプログラム611aにおいて、入力された変数512を使用せず、削除する。また、プログラム編集部67は、入力された変数512を使用せず、ロボットプログラム611aの保存を禁止してもよい。 In step S74, the program editing unit 67 does not use the input variable 512 in the robot program 611a and deletes it. Also, the program editing unit 67 may prohibit saving of the robot program 611a without using the input variable 512 .

ステップS75において、プログラム編集部57は、警告メッセージを表示部68に表示させる(図20参照)。図20の例では、表示部68は、「変数#101は加工プログラム名O0123とロボットプログラム名TEST1で使用されていること及びロボットプログラム名TEST2を保存できない」ことを示す警告メッセージを表示する。ここでロボットプログラム名TEST2は、ロボットプログラム611aを示す。 In step S75, the program editing unit 57 causes the display unit 68 to display a warning message (see FIG. 20). In the example of FIG. 20, the display unit 68 displays a warning message indicating that "variable #101 is used in machining program name O0123 and robot program name TEST1, and robot program name TEST2 cannot be saved." Here, the robot program name TEST2 indicates the robot program 611a.

ステップS76において、プログラム編集部67は、変数512を使用して、ロボットプログラム611aの編集又は作成を行う。 In step S76, the program editing unit 67 uses the variable 512 to edit or create the robot program 611a.

図24は、第3実施形態に係るロボット制御装置6においてロボットプログラム611aを実行する場合の処理を示すフローチャートである。ステップS81において、ロボットプログラム611を実行した場合、プログラム入力部62は、ロボットプログラム611を記憶部61から読み出し、解析部63に入力する。 FIG. 24 is a flow chart showing processing when the robot program 611a is executed in the robot control device 6 according to the third embodiment. In step S<b>81 , when the robot program 611 is executed, the program input unit 62 reads the robot program 611 from the storage unit 61 and inputs it to the analysis unit 63 .

ステップS82において、解析部63は、ロボットプログラム611aに基づく指令種別を指令ブロックごとに解析する。変数512を解析する際に、解析部63は、記憶部61から変数リスト情報612を読み出し、変数512が変数リスト情報612に存在するかを判定する。変数512が変数リスト情報612に存在する場合(YES)、処理は、ステップS83へ移る。一方、変数512が変数リスト情報612に存在しない場合(NO)、処理は、ステップS86へ移る。 In step S82, the analysis unit 63 analyzes the command type based on the robot program 611a for each command block. When analyzing the variable 512 , the analysis unit 63 reads the variable list information 612 from the storage unit 61 and determines whether the variable 512 exists in the variable list information 612 . If the variable 512 exists in the variable list information 612 (YES), the process proceeds to step S83. On the other hand, if the variable 512 does not exist in the variable list information 612 (NO), the process proceeds to step S86.

ステップS83において、解析部63は、変数リスト情報612に基づいて、実行中のロボットプログラム611aと変数512との対応関係を判定する。ロボットプログラム611aと変数512との対応関係が異なる場合、すなわち変数512が、実行中のロボットプログラム611aと対応付けられてない場合(YES)、処理は、ステップS84へ移る。一方、変数512が変数リスト情報に存在しない場合、又はロボットプログラム611と変数512とが変数リスト情報612で対応付けられている場合(NO)、処理は、ステップS86へ移る。 In step S<b>83 , the analysis unit 63 determines the correspondence relationship between the robot program 611 a being executed and the variables 512 based on the variable list information 612 . If the correspondence relationship between the robot program 611a and the variable 512 is different, that is, if the variable 512 is not associated with the robot program 611a being executed (YES), the process proceeds to step S84. On the other hand, if the variable 512 does not exist in the variable list information, or if the robot program 611 and the variable 512 are associated in the variable list information 612 (NO), the process proceeds to step S86.

ステップS84において、解析部63は、ロボットプログラム611aにおいて変数512を使用せず、ロボットプログラム611aの実行を中止又は禁止する。 In step S84, the analysis unit 63 does not use the variable 512 in the robot program 611a and suspends or prohibits execution of the robot program 611a.

ステップS85において、解析部63は、ロボットプログラム611aを実行できないことを示す警告メッセージを表示部68に表示させる(図21参照)。 In step S85, the analysis unit 63 causes the display unit 68 to display a warning message indicating that the robot program 611a cannot be executed (see FIG. 21).

ステップS86において、解析部63は、変数512を使用してロボットプログラム611aを実行する。具体的には、制御部64は、解析結果に従い、データ送受信部55及びデータ送受信部65を介して、数値制御装置5の記憶部51の変数512を読み書きする。例えば、解析部63が移動指令を解析した際、制御部64は、移動指令に基づいてロボット3の各関節が駆動させる。 In step S86, the analysis unit 63 uses the variables 512 to execute the robot program 611a. Specifically, the control unit 64 reads and writes the variable 512 of the storage unit 51 of the numerical controller 5 via the data transmission/reception unit 55 and the data transmission/reception unit 65 according to the analysis result. For example, when the analysis unit 63 analyzes the movement command, the control unit 64 drives each joint of the robot 3 based on the movement command.

このような構成により、第3実施形態に係る数値制御システム1は、変数リスト情報612をロボット制御装置6に通知する。これにより、数値制御システム1は、例えば、ロボットプログラム編集時に変数リスト情報に基づいて加工プログラムと対応付けられた変数を使用したロボットプログラムの保存を禁止し、警告メッセージを通知する。これにより、数値制御システム1は、加工プログラムと対応付けられた変数を重複して使用したロボットプログラムの作成を回避できる。 With such a configuration, the numerical control system 1 according to the third embodiment notifies the robot control device 6 of the variable list information 612 . As a result, the numerical control system 1, for example, prohibits the saving of the robot program using the variables associated with the machining program based on the variable list information when editing the robot program, and notifies a warning message. Thereby, the numerical control system 1 can avoid creating a robot program that redundantly uses the variables associated with the machining program.

また、数値制御システム1は、加工プログラムと対応付けられた変数を重複して使用したロボットプログラムが実行された場合、変数リスト情報に基づいて加工プログラムと対応付けられた変数を読み書きする前にロボットプログラムの実行を禁止する。これにより、数値制御システム1は、ロボット3が加工プログラム中の変数の値を書き込んで引き起こされる加工不良、工作機械2の破損、ロボット3が加工プログラム中の変数の値を読み込んで生じ得る工作機械2とロボット3との衝突等のような不具合を回避できる。 In addition, when a robot program that redundantly uses variables associated with a machining program is executed, the numerical control system 1 controls the robot before reading and writing variables associated with the machining program based on the variable list information. Prohibits program execution. As a result, the numerical control system 1 can detect machining defects caused by the robot 3 writing the values of variables in the machining program, damage to the machine tool 2, and machine tool processing that can occur when the robot 3 reads the values of variables in the machining program. 2 and the robot 3 can be avoided.

また、変数リスト情報生成部41は、ロボット制御装置6における全てのロボットプログラム611の中から変数512を取得し、変数512とロボットプログラム611との対応付けを変数リスト情報612に追加する。プログラム編集部67は、変数リスト情報612に含まれる変数512が、変数リスト情報612に存在しないロボットプログラム611で使用された場合、変数512を使用しない。 Also, the variable list information generation unit 41 acquires the variables 512 from all the robot programs 611 in the robot control device 6 and adds the correspondence between the variables 512 and the robot programs 611 to the variable list information 612 . If the variable 512 included in the variable list information 612 is used in the robot program 611 that does not exist in the variable list information 612, the program editor 67 does not use the variable 512. FIG.

これにより、数値制御システム1は、ロボット3が加工プログラム511中の変数512の値を書き込んで引き起こされる加工不良、工作機械2の破損、ロボット3が加工プログラム511中の変数512の値を読み込んで生じ得る工作機械2とロボット3との衝突等のような不具合を回避できる。 As a result, the numerical control system 1 can detect machining failure caused by the robot 3 writing the value of the variable 512 in the machining program 511, damage to the machine tool 2, and the robot 3 reading the value of the variable 512 in the machining program 511. Problems such as collision between the machine tool 2 and the robot 3 that may occur can be avoided.

また、数値制御システム1において、変数を使用しないことは、変数の保存を禁止すること、変数の参照を禁止すること、及び変数を含むロボットプログラムの実行を禁止することのうちの少なくとも1つを含む。このような構成により、数値制御システム1は、加工プログラム又はロボットプログラムと対応付けられた変数の重複によって生じ得る加工不良、工作機械2の破損、工作機械2とロボット3との衝突等のような不具合を適切に回避できる。 Further, in the numerical control system 1, not using a variable means at least one of prohibiting the saving of the variable, prohibiting the referencing of the variable, and prohibiting the execution of the robot program containing the variable. include. With such a configuration, the numerical control system 1 can detect problems such as machining defects, breakage of the machine tool 2, and collisions between the machine tool 2 and the robot 3 that may occur due to duplication of variables associated with the machining program or the robot program. Problems can be properly avoided.

また、ロボット制御装置6は、変数を使用しない場合、変数を使用しないことを示す警告メッセージを表示する表示部68を更に備える。このような構成により、数値制御システム1は、変数を使用しないことをユーザに対して適切に報知することができる。 Further, the robot control device 6 further includes a display section 68 that displays a warning message indicating that the variable is not used when the variable is not used. With such a configuration, the numerical control system 1 can appropriately notify the user that the variables are not used.

[第4実施形態]
第4実施形態に係る数値制御システム1の処理について、図16~図19及び図25~図27を参照しながら説明する。図16~図19、図25及び図26は、第4実施形態に係る数値制御システム1の処理の例を示す図であり、図27は、第4実施形態に係る数値制御システム1の処理の流れを示すフローチャートである。
[Fourth embodiment]
Processing of the numerical control system 1 according to the fourth embodiment will be described with reference to FIGS. 16 to 19 and 25 to 27. FIG. 16 to 19, 25 and 26 are diagrams showing examples of processing of the numerical control system 1 according to the fourth embodiment, and FIG. 27 shows processing of the numerical control system 1 according to the fourth embodiment. It is a flow chart which shows a flow.

第4実施形態に係る数値制御システム1は、産業用装置4において変数リスト情報を表示する。 The numerical control system 1 according to the fourth embodiment displays variable list information on the industrial device 4 .

図27は、第3実施形態に係る産業用装置4の処理を示すフローチャートである。ステップS91において、変数リスト情報生成部41は、数値制御装置5の記憶部51における変数512を含む全ての加工プログラム511の取得要求と、ロボット制御装置6の記憶部61における変数512を含む全てのロボットプログラム611の取得要求と、を産業用装置4のデータ送受信部43に通知する。 FIG. 27 is a flow chart showing processing of the industrial device 4 according to the third embodiment. In step S91, the variable list information generation unit 41 issues an acquisition request for all machining programs 511 including the variables 512 in the storage unit 51 of the numerical controller 5, An acquisition request for the robot program 611 is notified to the data transmission/reception unit 43 of the industrial device 4 .

データ送受信部43は、数値制御装置5のデータ送受信部55を介して、記憶部51から読み出された変数512を含む全ての加工プログラム511を取得する。また、データ送受信部43は、ロボット制御装置6のデータ送受信部65を介して、ロボット制御装置6の記憶部61から読み出された変数512を含む全てのロボットプログラム611を取得する。データ送受信部43は、取得した全ての加工プログラム511及び全てのロボットプログラム611を変数リスト情報生成部41へ入力する。(図16参照)。 The data transmitter/receiver 43 acquires all machining programs 511 including variables 512 read from the storage unit 51 via the data transmitter/receiver 55 of the numerical controller 5 . The data transmitter/receiver 43 also acquires all the robot programs 611 including the variables 512 read from the storage 61 of the robot controller 6 via the data transmitter/receiver 65 of the robot controller 6 . The data transmission/reception unit 43 inputs all the acquired processing programs 511 and all robot programs 611 to the variable list information generation unit 41 . (See FIG. 16).

ステップS92において、変数リスト情報生成部41は、変数リスト情報612を作成し、入力された加工プログラム511及びロボットプログラム611中に含まれる変数512を検索する(図17参照)。変数リスト情報生成部41は、検索した変数512を、当該変数512を含む加工プログラム511又はロボットプログラム611と対応付けて変数リスト情報612に追加する(図18参照)。ここで、図18に示すように、変数リスト情報612は、使用中の変数と、加工プログラム511及び/又はロボットプログラム611のプログラム名とが対応付けて記憶される。変数リスト情報生成部41は、入力された加工プログラム511及びロボットプログラム611を全て検索したのち、変数リスト情報612を変数リスト情報出力部42に入力する。 In step S92, the variable list information generator 41 creates the variable list information 612 and searches for the variables 512 included in the input machining program 511 and robot program 611 (see FIG. 17). The variable list information generation unit 41 associates the retrieved variable 512 with the machining program 511 or the robot program 611 including the variable 512 and adds it to the variable list information 612 (see FIG. 18). Here, as shown in FIG. 18, the variable list information 612 stores variables in use and program names of the machining program 511 and/or the robot program 611 in association with each other. The variable list information generation unit 41 searches all the input machining programs 511 and robot programs 611 and then inputs the variable list information 612 to the variable list information output unit 42 .

ステップS93において、変数リスト情報出力部42は、変数リスト情報612を表示部44に表示させる(図25参照)。また、変数リスト情報出力部42は、データ送受信部55へ変数リスト情報612を出力し、データ送受信部43は、変数リスト情報612をロボット制御装置6のデータ送受信部65へ送信する。また、データ送受信部43は、変数リスト情報612を数値制御装置5のデータ送受信部55へ送信する。 In step S93, the variable list information output unit 42 causes the display unit 44 to display the variable list information 612 (see FIG. 25). Also, the variable list information output unit 42 outputs the variable list information 612 to the data transmission/reception unit 55 , and the data transmission/reception unit 43 transmits the variable list information 612 to the data transmission/reception unit 65 of the robot controller 6 . The data transmitter/receiver 43 also transmits the variable list information 612 to the data transmitter/receiver 55 of the numerical controller 5 .

ステップS94において、数値制御装置5は、変数リスト情報612を記憶部51に保存し、ロボット制御装置6は、変数リスト情報612を記憶部61に保存する。加工プログラム511を作成する際に、数値制御装置5は、変数リスト情報612の加工プログラム511又はロボットプログラム611中に含まれない変数を使用して、新たな加工プログラム511cを作成し、新たなロボットプログラム611cを作成する(図26参照)。 In step S<b>94 , the numerical control device 5 saves the variable list information 612 in the storage unit 51 and the robot control device 6 saves the variable list information 612 in the storage unit 61 . When creating the machining program 511, the numerical controller 5 uses variables not included in the machining program 511 or the robot program 611 of the variable list information 612 to create a new machining program 511c, and to create a new robot. Create a program 611c (see FIG. 26).

このような構成により、第4実施形態に係る数値制御システム1は、加工プログラム511と対応付けられた変数512を重複して使用した加工プログラムの作成を回避できる。また、数値制御システム1は、数値制御装置の全ての加工プログラム511から、加工プログラム511と対応付けられた変数512の変数リスト情報612を作成し、変数リスト情報612を出力する。これにより、数値制御システム1は、新たな用途で使用する変数を決定するときに、加工プログラム511を確認する手間を省くことができる。 With such a configuration, the numerical control system 1 according to the fourth embodiment can avoid creating a machining program that redundantly uses the variable 512 associated with the machining program 511 . Also, the numerical control system 1 creates variable list information 612 of variables 512 associated with the machining programs 511 from all the machining programs 511 of the numerical control device, and outputs the variable list information 612 . Thereby, the numerical control system 1 can save the trouble of confirming the machining program 511 when determining variables to be used in a new application.

また、変数リスト情報生成部41は、ロボット制御装置6における全てのロボットプログラム611の中から変数512を取得し、変数512とロボットプログラム611との対応付けを変数リスト情報612に追加する。これにより、数値制御システム1は、ロボット3が加工プログラム511中の変数512の値を書き込んで引き起こされる加工不良、工作機械2の破損、ロボット3が加工プログラム511中の変数512の値を読み込んで生じ得る工作機械2とロボット3との衝突等のような不具合を回避できる。 Also, the variable list information generation unit 41 acquires the variables 512 from all the robot programs 611 in the robot control device 6 and adds the correspondence between the variables 512 and the robot programs 611 to the variable list information 612 . As a result, the numerical control system 1 can detect machining failure caused by the robot 3 writing the value of the variable 512 in the machining program 511, damage to the machine tool 2, and the robot 3 reading the value of the variable 512 in the machining program 511. Problems such as collision between the machine tool 2 and the robot 3 that may occur can be avoided.

また、産業用装置4は、変数リスト情報612に基づいて変数512と加工プログラム511又はロボットプログラム611との対応付けを表示する表示部44を更に備える。このような構成により、数値制御システムは、変数512を使用しないことをユーザに対して適切に報知することができる。 Moreover, the industrial device 4 further includes a display unit 44 that displays the correspondence between the variables 512 and the machining program 511 or the robot program 611 based on the variable list information 612 . With such a configuration, the numerical control system can appropriately notify the user that the variable 512 is not used.

以上、本発明の実施形態について説明したが、上記の数値制御システム1は、ハードウェア、ソフトウェア又はこれらの組み合わせにより実現することができる。また、上記の数値制御システム1により行なわれる制御方法も、ハードウェア、ソフトウェア又はこれらの組み合わせにより実現することができる。ここで、ソフトウェアによって実現されるとは、コンピュータがプログラムを読み込んで実行することにより実現されることを意味する。 Although the embodiments of the present invention have been described above, the numerical control system 1 can be realized by hardware, software, or a combination thereof. Also, the control method performed by the numerical control system 1 can be realized by hardware, software, or a combination thereof. Here, "implemented by software" means implemented by a computer reading and executing a program.

プログラムは、様々なタイプの非一時的なコンピュータ可読媒体(non-transitory computer readable medium)を用いて記憶され、コンピュータに供給することができる。非一時的なコンピュータ可読媒体は、様々なタイプの実体のある記録媒体(tangible storage medium)を含む。非一時的なコンピュータ可読媒体の例は、磁気記録媒体(例えば、ハードディスクドライブ)、光磁気記録媒体(例えば、光磁気ディスク)、CD-ROM(Read Only Memory)、CD-R、CD-R/W、半導体メモリ(例えば、マスクROM、PROM(Programmable ROM)、EPROM(Erasable PROM)、フラッシュROM、RAM(random access memory))を含む。 The program can be stored and provided to the computer using various types of non-transitory computer readable medium. Non-transitory computer-readable media include various types of tangible storage media. Examples of non-transitory computer-readable media include magnetic recording media (e.g., hard disk drives), magneto-optical recording media (e.g., magneto-optical discs), CD-ROMs (Read Only Memory), CD-Rs, CD-R/ W, semiconductor memory (eg, mask ROM, PROM (programmable ROM), EPROM (erasable PROM), flash ROM, RAM (random access memory)).

本開示について詳述したが、本開示は上述した個々の実施形態に限定されるものではない。これらの実施形態は、本開示の要旨を逸脱しない範囲で、または、特許請求の範囲に記載された内容とその均等物から導き出される本開示の趣旨を逸脱しない範囲で、種々の追加、置き換え、変更、部分的削除等が可能である。また、これらの実施形態は、組み合わせて実施することもできる。例えば、上述した実施形態において、各動作の順序や各処理の順序は、一例として示したものであり、これらに限定されるものではない。また、上述した実施形態の説明に数値又は数式が用いられている場合も同様である。 Although the disclosure has been described in detail, the disclosure is not limited to the specific embodiments described above. These embodiments include various additions, replacements, Modification, partial deletion, etc. are possible. Also, these embodiments can be implemented in combination. For example, in the above-described embodiments, the order of each operation and the order of each process are shown as an example, and are not limited to these. The same applies when numerical values or formulas are used in the description of the above-described embodiments.

上記実施形態及び変形例に関し、更に以下の付記を開示する。
(付記1)
数値制御装置の加工プログラムからロボット制御装置を介してロボットを制御する数値制御システムであって、前記数値制御装置における全ての前記加工プログラムの中から変数を取得し、前記変数と前記加工プログラムとが対応づけられた変数リスト情報を生成する変数リスト情報生成部と、前記数値制御装置における前記加工プログラム又は前記ロボット制御装置おけるロボットプログラムに含まれる前記変数が、前記変数リスト情報と異なる対応関係で使用された場合、前記変数を使用せず、前記変数リスト情報に含まれる前記変数が、前記変数リスト情報に存在しない前記加工プログラムで使用された場合、前記変数を使用しないプログラム編集部と、を備える数値制御システム。
(付記2)
変数リスト情報生成部は、前記ロボット制御装置における全ての前記ロボットプログラムの中から前記変数を取得し、前記変数と前記ロボットプログラムとの対応付けを前記変数リスト情報に追加し、前記プログラム編集部は、前記変数リスト情報に含まれる前記変数が、前記変数リスト情報に存在しない前記ロボットプログラムで使用された場合、前記変数を使用しない、付記1に記載の数値制御システム。
(付記3)
前記変数を使用しないことは、前記変数の保存を禁止すること、前記変数の参照を禁止すること、及び前記変数を含む前記加工プログラム又は前記ロボットプログラムの実行を禁止することのうちの少なくとも1つを含む、付記1又は2に記載の数値制御システム。
(付記4)
前記変数を使用しない場合、前記変数を使用しないことを示す警告メッセージを表示する表示部を更に備える、付記1又は2に記載の数値制御システム。
(付記5)
数値制御装置の加工プログラムからロボット制御装置を介してロボットを制御する数値制御システムであって、前記数値制御装置における全ての前記加工プログラムの中から変数を取得し、前記変数と前記加工プログラムとが対応付けられた変数リスト情報を生成する変数リスト情報生成部と、前記変数リスト情報を出力装置へ出力する変数リスト情報出力部と、を備える数値制御システム。
(付記6)
前記変数リスト情報生成部は、前記ロボット制御装置における全てのロボットプログラムの中から前記変数を取得し、前記変数と前記ロボットプログラムとの対応付けを前記変数リスト情報に追加する、付記5に記載の数値制御システム。
(付記7)
前記変数リスト情報に基づいて前記変数と前記加工プログラム又は前記ロボットプログラムとの対応付けを表示する表示部を更に備える、付記6に記載の数値制御システム。
(付記8)
加工プログラムを用いてロボット制御装置を介してロボットを制御する数値制御装置であって、前記数値制御装置における前記加工プログラム又は前記ロボット制御装置におけるロボットプログラムの中から変数を取得し、前記変数と前記加工プログラム又は前記ロボットプログラムとが対応付けられた変数リスト情報を生成する変数リスト情報生成部と、前記加工プログラム又は前記ロボットプログラムに含まれる前記変数が、前記変数リスト情報と異なる対応関係で使用された場合、前記変数を使用せず、前記変数リスト情報に含まれる前記変数が、前記変数リスト情報に存在しない前記加工プログラムで使用された場合、前記変数を使用しないプログラム編集部と、を備える数値制御装置。
(付記9)
前記変数を使用しないことは、前記変数の保存を禁止すること、前記変数の参照を禁止すること、及び前記変数を含む前記加工プログラム又は前記ロボットプログラムの実行を禁止することのうちの少なくとも1つを含む、付記8に記載の数値制御装置。
(付記10)
前記変数を使用しない場合、前記変数を使用しないことを示す警告メッセージを表示する表示部を更に備える、付記9に記載の数値制御システム。
(付記11)
数値制御装置又はロボット制御装置から加工プログラム又はロボットプログラムを受信する受信部と、前記数値制御装置における前記加工プログラム又は前記ロボット制御装置におけるロボットプログラムの中から変数を取得し、前記変数と前記加工プログラム又は前記ロボットプログラムとが対応付けられた変数リスト情報を生成する変数リスト情報生成部と、前記変数リスト情報を出力装置へ出力する変数リスト情報出力部と、を備える産業用装置。
(付記12)
前記変数リスト情報に基づいて前記変数と前記加工プログラム又は前記ロボットプログラムとの対応付けを表示する表示部を更に備える、付記11に記載の産業用装置。
(付記13)
数値制御装置の加工プログラムからロボット制御装置を介してロボットを制御するコンピュータに、前記数値制御装置における全ての加工プログラムの中から変数を取得し、前記変数と前記加工プログラムとが対応付けられた変数リスト情報を生成するステップと、前記数値制御装置における前記加工プログラム又は前記ロボット制御装置おけるロボットプログラムに含まれる前記変数が、前記変数リスト情報と異なる対応関係で使用された場合、前記変数を使用しないステップと、前記変数リスト情報に含まれる前記変数が、前記変数リスト情報に存在しない前記加工プログラムで使用された場合、前記変数を使用しないステップと、を実行させるためのコンピュータプログラム。
The following additional remarks are disclosed regarding the above-described embodiment and modifications.
(Appendix 1)
A numerical control system for controlling a robot from a machining program of a numerical controller via a robot controller, wherein variables are obtained from all the machining programs in the numerical controller, and the variables and the machining programs are A variable list information generation unit that generates associated variable list information, and the variables included in the machining program in the numerical control device or the robot program in the robot control device are used in a relationship different from the variable list information. a program editing unit that does not use the variable if the variable is included in the variable list information, and does not use the variable if the variable included in the variable list information is used in the processing program that does not exist in the variable list information. Numerical control system.
(Appendix 2)
The variable list information generating unit acquires the variables from all the robot programs in the robot control device, adds the correspondence between the variables and the robot programs to the variable list information, and the program editing unit , The numerical control system according to appendix 1, wherein the variable is not used when the variable included in the variable list information is used in the robot program that does not exist in the variable list information.
(Appendix 3)
Not using the variable is at least one of prohibiting storage of the variable, prohibiting reference to the variable, and prohibiting execution of the machining program or the robot program including the variable. The numerical control system according to appendix 1 or 2, comprising:
(Appendix 4)
3. The numerical control system according to appendix 1 or 2, further comprising a display unit that displays a warning message indicating that the variable is not used when the variable is not used.
(Appendix 5)
A numerical control system for controlling a robot from a machining program of a numerical controller via a robot controller, wherein variables are obtained from all the machining programs in the numerical controller, and the variables and the machining programs are A numerical control system comprising: a variable list information generating section that generates associated variable list information; and a variable list information output section that outputs the variable list information to an output device.
(Appendix 6)
5. The variable list information generating unit according to appendix 5, wherein the variable list information generating unit acquires the variables from all robot programs in the robot control device, and adds the association between the variables and the robot programs to the variable list information. Numerical control system.
(Appendix 7)
7. The numerical control system according to appendix 6, further comprising a display unit that displays correspondence between the variables and the machining program or the robot program based on the variable list information.
(Appendix 8)
A numerical controller for controlling a robot via a robot controller using a machining program, wherein a variable is acquired from the machining program in the numerical controller or the robot program in the robot controller, and the variable and the A variable list information generating unit that generates variable list information associated with a machining program or the robot program; and the variables included in the machining program or the robot program are used in a relationship different from the variable list information. a program editing unit that does not use the variable when the variable is used in the processing program that does not exist in the variable list information, and does not use the variable if the variable included in the variable list information is used in the processing program that does not exist in the variable list information Control device.
(Appendix 9)
Not using the variable is at least one of prohibiting storage of the variable, prohibiting reference to the variable, and prohibiting execution of the machining program or the robot program including the variable. The numerical control device according to appendix 8, comprising:
(Appendix 10)
The numerical control system according to appendix 9, further comprising a display unit that displays a warning message indicating that the variable is not used when the variable is not used.
(Appendix 11)
a receiving unit for receiving a machining program or a robot program from a numerical control device or a robot control device; obtaining variables from the machining program in the numerical control device or the robot program in the robot control device; Alternatively, an industrial apparatus comprising: a variable list information generation unit that generates variable list information associated with the robot program; and a variable list information output unit that outputs the variable list information to an output device.
(Appendix 12)
12. The industrial apparatus according to appendix 11, further comprising a display unit that displays correspondence between the variable and the machining program or the robot program based on the variable list information.
(Appendix 13)
Variables in which variables are acquired from all machining programs in the numerical control device from the machining program of the numerical control device to a computer that controls the robot via the robot control device, and the variables and the machining programs are associated with each other. generating list information; and not using the variables when the variables included in the machining program in the numerical control device or the robot program in the robot control device are used in a correspondence relationship different from the variable list information. and a step of not using the variable when the variable included in the variable list information is used in the processing program that does not exist in the variable list information.

1 数値制御システム
2 工作機械
3 ロボット
4 産業用装置
5 数値制御装置
6 ロボット制御装置
41 変数リスト情報生成部
42 変数リスト情報出力部
43 データ送受信部
51 記憶部
52 プログラム入力部
53 解析部
54 制御部
55 データ送受信部
56 入力部
57 プログラム編集部
58 表示部
61 記憶部
62 プログラム入力部
63 解析部
64 制御部
65 データ送受信部
66 入力部
67 プログラム編集部
68 表示部
1 numerical control system 2 machine tool 3 robot 4 industrial device 5 numerical control device 6 robot control device 41 variable list information generation unit 42 variable list information output unit 43 data transmission/reception unit 51 storage unit 52 program input unit 53 analysis unit 54 control unit 55 data transmission/reception unit 56 input unit 57 program editing unit 58 display unit 61 storage unit 62 program input unit 63 analysis unit 64 control unit 65 data transmission/reception unit 66 input unit 67 program editing unit 68 display unit

Claims (13)

数値制御装置の加工プログラムからロボット制御装置を介してロボットを制御する数値制御システムであって、
前記数値制御装置における全ての前記加工プログラムの中から変数を取得し、前記変数と前記変数を含む前記加工プログラムとが対応づけられた変数リスト情報を生成する変数リスト情報生成部と、
前記変数リスト情報に含まれる前記変数が、前記変数リスト情報に存在しない前記加工プログラムで使用された場合、前記変数を使用せず、前記数値制御装置において入力された変数と編集中の前記加工プログラムとの対応関係又は前記ロボット制御装置において入力された変数と編集中のロボットプログラムとの対応関係が、前記変数リスト情報と異なる対応関係で使用された場合、前記変数を使用しない、プログラム編集部と、
を備える数値制御システム。
A numerical control system for controlling a robot via a robot controller from a machining program of a numerical controller,
a variable list information generation unit that acquires variables from all the machining programs in the numerical control device and generates variable list information in which the variables and the machining programs containing the variables are associated;
When the variable included in the variable list information is used in the machining program that does not exist in the variable list information, the variable is not used, and the variable input in the numerical controller and the variable being edited are not used . Program editing that does not use the variables when the correspondence with the machining program or the correspondence between the variables input in the robot controller and the robot program being edited is used in a correspondence different from the variable list information Department and
Numerical control system with
変数リスト情報生成部は、前記ロボット制御装置における全ての前記ロボットプログラムの中から前記変数を取得し、前記変数と前記ロボットプログラムとの対応付けを前記変数リスト情報に追加し、
前記プログラム編集部は、前記変数リスト情報に含まれる前記変数が、前記変数リスト情報に存在しない前記ロボットプログラムで使用された場合、前記変数を使用しない、
請求項1に記載の数値制御システム。
a variable list information generating unit that acquires the variables from all the robot programs in the robot control device, adds a correspondence between the variables and the robot programs to the variable list information,
The program editing unit does not use the variable when the variable included in the variable list information is used in the robot program that does not exist in the variable list information.
The numerical control system according to claim 1.
前記変数を使用しないことは、前記変数の保存を禁止すること、前記変数の参照を禁止すること、及び前記変数を含む前記加工プログラム又は前記ロボットプログラムの実行を禁止することのうちの少なくとも1つを含む、請求項1又は2に記載の数値制御システム。 Not using the variable is at least one of prohibiting storage of the variable, prohibiting reference to the variable, and prohibiting execution of the machining program or the robot program including the variable. The numerical control system according to claim 1 or 2, comprising: 前記変数を使用しない場合、前記変数を使用しないことを示す警告メッセージを表示する表示部を更に備える、請求項1又は2に記載の数値制御システム。 3. The numerical control system according to claim 1, further comprising a display for displaying a warning message indicating that said variable is not used when said variable is not used. 数値制御装置の加工プログラムからロボット制御装置を介してロボットを制御する数値制御システムであって、
前記数値制御装置における全ての前記加工プログラムの中から変数を取得し、前記変数と前記変数を含む前記加工プログラムとが対応付けられた変数リスト情報を生成する変数リスト情報生成部と、
前記変数リスト情報を出力装置へ出力する変数リスト情報出力部と、
を備える数値制御システム。
A numerical control system for controlling a robot via a robot controller from a machining program of a numerical controller,
a variable list information generation unit that acquires variables from all the machining programs in the numerical control device and generates variable list information in which the variables and the machining programs containing the variables are associated;
a variable list information output unit that outputs the variable list information to an output device;
Numerical control system with
前記変数リスト情報生成部は、前記ロボット制御装置における全てのロボットプログラムの中から、当該ロボットプログラムで使用されている変数を取得し、前記変数と前記ロボットプログラムとの対応付けを前記変数リスト情報に追加する、請求項5に記載の数値制御システム。 The variable list information generation unit acquires variables used in the robot program from among all the robot programs in the robot control device, and associates the variables and the robot program with the variable list information. 6. The numerical control system of claim 5, additionally. 前記変数リスト情報に基づいて前記変数と前記加工プログラム又は前記ロボットプログラムとの対応付けを表示する表示部を更に備える、請求項6に記載の数値制御システム。 7. The numerical control system according to claim 6, further comprising a display unit that displays correspondence between said variables and said machining program or said robot program based on said variable list information. 加工プログラムを用いてロボット制御装置を介してロボットを制御する数値制御装置であって、
前記数値制御装置における前記加工プログラム又は前記ロボット制御装置におけるロボットプログラムの中から変数を取得し、前記変数と前記変数を含む前記加工プログラム又は前記変数と前記変数を含む前記ロボットプログラムとが対応付けられた変数リスト情報を生成する変数リスト情報生成部と、
前記変数リスト情報に含まれる前記変数が、前記変数リスト情報に存在しない前記加工プログラムで使用された場合、前記変数を使用せず、前記数値制御装置において入力された変数と編集中の前記加工プログラムとの対応関係又は前記ロボット制御装置において入力された変数と編集中の前記ロボットプログラムとの対応関係が、前記変数リスト情報と異なる対応関係で使用された場合、前記変数を使用しない、プログラム編集部と、
を備える数値制御装置。
A numerical controller that controls a robot via a robot controller using a machining program,
A variable is acquired from the machining program in the numerical control device or the robot program in the robot control device, and the variable and the machining program containing the variable or the variable and the robot program containing the variable are associated. a variable list information generation unit that generates variable list information according to
When the variable included in the variable list information is used in the machining program that does not exist in the variable list information, the variable is not used, and the variable input in the numerical control device and the machining program being edited or the correspondence relationship between the variable input in the robot control device and the robot program being edited is used in a correspondence relationship different from the variable list information, the program editing unit that does not use the variable and,
A numerical controller comprising
前記変数を使用しないことは、前記変数の保存を禁止すること、前記変数の参照を禁止すること、及び前記変数を含む前記加工プログラム又は前記ロボットプログラムの実行を禁止することのうちの少なくとも1つを含む、請求項8に記載の数値制御装置。 Not using the variable is at least one of prohibiting storage of the variable, prohibiting reference to the variable, and prohibiting execution of the machining program or the robot program including the variable. 9. The numerical controller of claim 8, comprising: 前記変数を使用しない場合、前記変数を使用しないことを示す警告メッセージを表示する表示部を更に備える、請求項9に記載の数値制御システム。 10. The numerical control system according to claim 9, further comprising a display for displaying a warning message indicating that said variable is not used when said variable is not used. 数値制御装置又はロボット制御装置から加工プログラム又はロボットプログラムを受信する受信部と、
前記数値制御装置における前記加工プログラム又は前記ロボット制御装置におけるロボットプログラムの中から変数を取得し、前記変数と前記変数を含む前記加工プログラム又は前記変数と前記変数を含む前記ロボットプログラムとが対応付けられた変数リスト情報を生成する変数リスト情報生成部と、
前記変数リスト情報を出力装置へ出力する変数リスト情報出力部と、
を備える産業用装置。
a receiving unit that receives a machining program or a robot program from a numerical control device or a robot control device;
A variable is acquired from the machining program in the numerical control device or the robot program in the robot control device, and the variable and the machining program containing the variable or the variable and the robot program containing the variable are associated. a variable list information generation unit that generates variable list information according to
a variable list information output unit that outputs the variable list information to an output device;
Industrial equipment with
前記変数リスト情報に基づいて前記変数と前記加工プログラム又は前記ロボットプログラムとの対応付けを表示する表示部を更に備える、請求項11に記載の産業用装置。 12. The industrial apparatus according to claim 11, further comprising a display unit that displays correspondence between said variable and said machining program or said robot program based on said variable list information. 数値制御装置の加工プログラムからロボット制御装置を介してロボットを制御するコンピュータに、
前記数値制御装置における全ての加工プログラムの中から変数を取得し、前記変数と前記変数を含む前記加工プログラムとが対応付けられた変数リスト情報を生成するステップと、
前記変数リスト情報に含まれる前記変数が、前記変数リスト情報に存在しない前記加工プログラムで使用された場合、前記変数を使用しないステップと、
前記数値制御装置において入力された変数と編集中の前記加工プログラムとの対応関係又は前記ロボット制御装置において入力された変数と編集中のロボットプログラムとの対応関係が、前記変数リスト情報と異なる対応関係で使用された場合、前記変数を使用しないステップと
実行させるためのコンピュータプログラム。
From the machining program of the numerical controller to the computer that controls the robot via the robot controller,
a step of obtaining variables from among all machining programs in the numerical control device and generating variable list information in which the variables and the machining programs containing the variables are associated;
a step of not using the variable when the variable included in the variable list information is used in the machining program that does not exist in the variable list information;
The correspondence relationship between the variables input in the numerical control device and the machining program being edited or the correspondence relationship between the variables input in the robot control device and the robot program being edited is different from the variable list information. not using the variable when used in correspondence ;
A computer program for executing
JP2022568401A 2022-08-26 2022-08-26 Numerical Control Systems, Numerical Control Devices, Industrial Devices and Computer Programs Active JP7256931B1 (en)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2022/032289 WO2024042728A1 (en) 2022-08-26 2022-08-26 Numeric value control system, numeric value control device, industrial device, and computer program

Publications (2)

Publication Number Publication Date
JP7256931B1 true JP7256931B1 (en) 2023-04-12
JPWO2024042728A1 JPWO2024042728A1 (en) 2024-02-29

Family

ID=85936726

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2022568401A Active JP7256931B1 (en) 2022-08-26 2022-08-26 Numerical Control Systems, Numerical Control Devices, Industrial Devices and Computer Programs

Country Status (5)

Country Link
JP (1) JP7256931B1 (en)
CN (1) CN119698578A (en)
DE (1) DE112022007186T5 (en)
TW (1) TW202408749A (en)
WO (1) WO2024042728A1 (en)

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS62276605A (en) * 1986-05-26 1987-12-01 Fanuc Ltd Method for inputting variable of robot control program
JPH04155406A (en) * 1990-10-19 1992-05-28 Fanuc Ltd Numerical control system
JPH06149329A (en) * 1992-11-11 1994-05-27 Brother Ind Ltd Robot controller
JP2001154717A (en) * 1999-09-13 2001-06-08 Fanuc Ltd Connection system between robot and machine
WO2014190483A1 (en) * 2013-05-28 2014-12-04 Abb Technology Ltd Method and apparatus for managing laser process parameters in a robotic laser cell
JP2018195055A (en) * 2017-05-17 2018-12-06 ファナック株式会社 Machine tool control device and production system
WO2020144772A1 (en) * 2019-01-09 2020-07-16 三菱電機株式会社 Numerical control device and numerical control method
WO2022097719A1 (en) * 2020-11-09 2022-05-12 ファナック株式会社 Numerical control system, and method for controlling industrial machine

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS62276605A (en) * 1986-05-26 1987-12-01 Fanuc Ltd Method for inputting variable of robot control program
JPH04155406A (en) * 1990-10-19 1992-05-28 Fanuc Ltd Numerical control system
JPH06149329A (en) * 1992-11-11 1994-05-27 Brother Ind Ltd Robot controller
JP2001154717A (en) * 1999-09-13 2001-06-08 Fanuc Ltd Connection system between robot and machine
WO2014190483A1 (en) * 2013-05-28 2014-12-04 Abb Technology Ltd Method and apparatus for managing laser process parameters in a robotic laser cell
JP2018195055A (en) * 2017-05-17 2018-12-06 ファナック株式会社 Machine tool control device and production system
WO2020144772A1 (en) * 2019-01-09 2020-07-16 三菱電機株式会社 Numerical control device and numerical control method
WO2022097719A1 (en) * 2020-11-09 2022-05-12 ファナック株式会社 Numerical control system, and method for controlling industrial machine

Also Published As

Publication number Publication date
JPWO2024042728A1 (en) 2024-02-29
TW202408749A (en) 2024-03-01
WO2024042728A1 (en) 2024-02-29
DE112022007186T5 (en) 2025-04-24
CN119698578A (en) 2025-03-25

Similar Documents

Publication Publication Date Title
US20230251630A1 (en) Numerical control system
JP7288158B1 (en) Numerical controller
JP7256931B1 (en) Numerical Control Systems, Numerical Control Devices, Industrial Devices and Computer Programs
JP7564217B2 (en) Numerical control system and robot control method
US11320800B2 (en) Optimization device
US11156986B2 (en) Machining program editing device
JP2000089813A (en) Working program editing method and controller for machine tool
US20240231308A9 (en) Command generation device and non-transitory computer-readable medium storing a computer program
JP7614220B2 (en) Numerical control device and numerical control system
TW202342246A (en) Robot control device, numerical control system, and numerical control method
US20230249337A1 (en) Numerical control system
JP6566151B2 (en) System design support apparatus and system design support method
US20240027990A1 (en) Numerical control device, and numerical control system
JP7674481B2 (en) Numerical Control System
WO2022030496A1 (en) Control device
JP7332822B1 (en) Numerical controller and numerical control system
US20240160181A1 (en) Motion-path generation device, numerical control device, numerical control system, and non-transitory computer-readable medium storing computer program
JP7260728B1 (en) Numerical controller and numerical control system
JP2021144284A (en) Machining program management device, management system, management method
JP2012048471A (en) Numerical control device and macro program execution method
JP7288157B1 (en) Numerical controller and numerical control system
WO2024166216A1 (en) Numerical control device and numerical control system
WO2024232056A1 (en) Numerical control device and numerical control system
TW202422252A (en) Numerical control device and numerical control system
WO2025062629A1 (en) Numerical control device and numerical control system

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20221109

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20221109

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20230110

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230210

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20230228

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20230331

R150 Certificate of patent or registration of utility model

Ref document number: 7256931

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150