JP7157281B1 - ロボット制御装置、数値制御システム及び数値制御方法 - Google Patents

ロボット制御装置、数値制御システム及び数値制御方法 Download PDF

Info

Publication number
JP7157281B1
JP7157281B1 JP2022542452A JP2022542452A JP7157281B1 JP 7157281 B1 JP7157281 B1 JP 7157281B1 JP 2022542452 A JP2022542452 A JP 2022542452A JP 2022542452 A JP2022542452 A JP 2022542452A JP 7157281 B1 JP7157281 B1 JP 7157281B1
Authority
JP
Japan
Prior art keywords
robot
control device
variables
numerical
numerical control
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
JP2022542452A
Other languages
English (en)
Other versions
JPWO2023203617A1 (ja
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 JP7157281B1 publication Critical patent/JP7157281B1/ja
Publication of JPWO2023203617A1 publication Critical patent/JPWO2023203617A1/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
    • 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/18Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
    • 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/18Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
    • G05B19/4155Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by programme execution, i.e. part programme or machine function execution, e.g. selection of a programme

Landscapes

  • Engineering & Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Manufacturing & Machinery (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Numerical Control (AREA)

Abstract

複数の制御系統を有する数値制御装置との連動制御を複雑化することなく実現できるロボット制御装置を提供する。ロボット制御装置3は、記憶部31からロボット30を制御するためのロボット制御プログラムを取得するプログラム入力部32と、プログラム入力部32により入力されたロボット制御プログラムを解析し、数値制御装置2を制御する数値制御プログラムの変数及び数値制御装置が有する複数の制御系統の中から対象の系統を特定する系統情報が設定される読み出し命令及び書き出し命令を取得する解析部33と、解析部33により取得された情報に基づいて対象の系統の変数を読み書きするための指令を出力する系統設定部37と、数値制御装置2に対して対象の系統の変数を読み書きするための指令を送信することにより、数値制御装置2に対象の系統の変数の更新を実行させるデータ通信部39と、を備える。

Description

本開示は、ロボット制御装置、数値制御システム及び数値制御方法に関する。
従来、加工機の自動化のため、工作機械やロボット等のそれぞれの制御装置を接続したシステムが構築されている。この種の技術に関するものとして例えば特許文献1や特許文献2がある。
特許文献1には、数値制御装置において、数値制御装置の設定に係るパラメータの比較関係を比較関係記憶部に記憶しておき、比較関係記憶部に記憶された比較関係に基づいて、数値制御装置の設定に係るパラメータのうちで、比較関係を有するデータを抽出して、この比較関係を有するデータを関連付けて表示部に表示させることが記載されている。
特許文献2には、機械制御装置とロボット制御装置を備える加工システムにおいて、機械制御装置が、判定部により移動ロボットが加工機に隣接した所定の位置に配置されていると判定された場合に、設定部により設定された加工品種に対応する設定データ及びロボット動作プログラムを記憶部から読みだして、ロボット制御装置に送信するようになされた通信部を有することが記載されている。
特開2021-009480号公報 特開2018-124910号公報
ところで、ロボットと工作機械を有するシステムでは、ロボットを制御するロボット制御装置が工作機械のマクロ変数を読み/書きすることにより、ロボットと工作機械を連動させる場合がある。例えば、ロボット制御装置が工作機械へマクロ変数経由で動作要求をONして工作機械のマクロ変数を読み出すことにより動作状態を取得し、動作状態が動作完了となった場合に動作要求をOFFし、次のシーケンスへ進むような処理を行うことがある。しかしながら、従来のロボット制御装置には機械の制御系統という概念がないため、複合加工機等のような複数群の刃物台や主軸から構成される既設機械とマクロ変数を介して連動することができない。
本開示は、複数の制御系統を有する数値制御装置との連動制御を複雑化することなく実現できるロボット制御装置及び数値制御システム及び数値制御方法を提供することを目的とする。
本開示の一態様は、記憶部からロボットを制御するためのロボット制御プログラムを取得するプログラム入力部と、前記プログラム入力部により入力された前記ロボット制御プログラムを解析し、数値制御装置を制御する数値制御プログラムの変数及び前記数値制御装置が有する複数の制御系統の中から対象の系統を特定する系統情報が設定される読み出し命令及び書き出し命令を取得する解析部と、前記解析部により取得された情報に基づいて前記対象の系統の変数を読み書きするための指令を出力する系統設定部と、前記数値制御装置に対して前記対象の系統の変数を読み書きするための指令を送信することにより、前記数値制御装置に前記対象の系統の変数の更新を実行させるデータ通信部と、を備えるロボット制御装置である。
また、本開示の一態様は、複数の制御系統を有する数値制御装置と、前記数値制御装置に連動してロボットを制御するロボット制御装置と、を備え、前記ロボット制御装置は、記憶部からロボットを制御するためのロボット制御プログラムを取得するプログラム入力部と、前記プログラム入力部により入力された前記ロボット制御プログラムを解析し、数値制御装置を制御する数値制御プログラムの変数及び前記数値制御装置が有する複数の制御系統の中から対象の系統を特定する系統情報が設定される読み出し命令及び書き出し命令を取得する解析部と、前記解析部により取得された情報に基づいて前記対象の系統の変数を読み書きするための指令を出力する系統設定部と、前記数値制御装置に対して前記対象の系統の変数を読み書きするための指令を送信するデータ通信部と、を備え、前記数値制御装置は、前記ロボット制御装置から受信した前記対象の系統の変数を読み書きするための指令に基づいて前記対象の系統の変数の更新を実行する、数値制御システムである。
また、本開示の一態様は、ロボット制御装置と数値制御装置を連動して制御する数値制御方法であって、記憶部からロボットを制御するためのロボット制御プログラムを取得するプログラム入力ステップと、前記プログラム入力ステップにより入力された前記ロボット制御プログラムを解析し、前記数値制御装置を制御する数値制御プログラムの変数及び前記数値制御装置が有する複数の制御系統の中から対象の系統を特定する系統情報が設定される読み出し命令及び書き出し命令を取得する解析ステップと、前記解析ステップにより取得された情報に基づいて前記対象の系統の変数を読み書きするための指令を出力する系統設定ステップと、前記ロボット制御装置が、前記数値制御装置に対して前記対象の系統の変数を読み書きするための指令を送信することにより、前記数値制御装置に前記対象の系統の変数の更新を実行させる更新ステップと、を含む数値制御方法である。
本開示によれば、複数の制御系統を有する数値制御装置との連動制御を複雑化することなく実現できるロボット制御装置及び数値制御システム及び数値制御方法を提供できる。
本開示の一実施形態に係る数値制御システムの概略図である。 本開示の一実施形態に係るロボット制御装置及び数値制御装置の機能ブロック図である。 読み出し命令及び書き出し命令を含むロボット制御プログラムの一例を示す図である。 系統1と系統2のそれぞれの機械的な構成を模式的に示す図である。 ロボット制御装置のロボット制御プログラムの一例を示す図である。 ロボット制御装置によって更新される数値制御プログラムのカスタムマクロ変数の割当例を示す図である。 系統1のメインプログラム及びサブプログラムの一例を示す図である。 系統2のメインプログラム及びサブプログラムの一例を示す図である。 本開示の一実施形態に係る数値制御システム1の処理の一例を示すフローチャートである。
以下、本開示の一実施形態について図面を参照して詳しく説明する。
図1は、本開示の一実施形態に係る数値制御システム1の概略図である。
数値制御システム1は、工作機械20を制御する数値制御装置(CNC)2と、数値制御装置2と通信可能に接続され且つ工作機械20の近傍に設けられたロボット30を制御するロボット制御装置3と、を備える。本実施形態に係る数値制御システム1は、互いに通信可能に接続された数値制御装置2及びロボット制御装置3を用いることによって、工作機械20及びロボット30の動作を連動して制御する。
数値制御装置2は、所定の数値制御プログラムに従い、工作機械20に対する指令である工作機械指令信号を生成し、工作機械20へ送信する。
工作機械20は、数値制御装置2から送信される工作機械指令信号に応じて図示しないワークを加工する。工作機械20は、例えば、タレット、テーブル、刃物台、主軸等を有する複合加工機である。工作機械20は、旋盤、ボール盤、フライス盤、研削盤、レーザ加工機、及び射出成形機等の構成を適宜組み合わせた複合加工機であってもよい。
ロボット30は、ロボット制御装置3による制御下において動作し、例えば工作機械20の内部で加工されるワークに対して所定の作業を実行する。ロボット30は、例えば多関節ロボットであり、そのアーム先端部30aにはワークを把持したり、加工したり、検査したりするためのツール30bが取り付けられる。以下では、ロボット30は、6軸の多関節ロボットとした場合について説明するが、これに限らない。以下では、ロボット30は、6軸の多関節ロボットとした場合について説明するが、軸数はこれに限らない。
図2は、本開示の一実施形態に係るロボット制御装置3及び数値制御装置2の機能ブロック図である。
数値制御装置2及びロボット制御装置3は、それぞれCPU(Central Processing Unit)等の演算処理手段、各種コンピュータプログラムを格納したHDD(Hard Disk Drive)やSSD(Solid State Drive)等の補助記憶手段、演算処理手段がコンピュータプログラムを実行する上で一時的に必要とされるデータを格納するためのRAM(Random Access Memory)といった主記憶手段、オペレータが各種操作を行うキーボードといった操作手段、及びオペレータに各種情報を表示するディスプレイといった表示手段等のハードウェアによって構成されるコンピュータである。これら数値制御装置2及びロボット制御装置3は、例えばイーサネット(登録商標)によって相互に各種信号を送受信することが可能となっている。
先ず、数値制御装置2の構成について説明する。数値制御装置2は、上記ハードウェア構成によって、ロボット30の制御軸の動作に連動する工作機械20の動作を制御する工作機械制御機能を実現する。具体的に、数値制御装置2は、これらの機能を実現するために、記憶部21、プログラム入力部22、解析部23、ロボット制御用変数部26、I/O制御部25、補間制御部24、サーボ制御部27及びデータ通信部28等を備える。
記憶部21は、数値制御プログラムを記憶する。数値制御プログラムは、例えば、オペレータによる操作に基づいて作成されたものである。数値制御プログラムは、工作機械20の動作を制御するための工作機械20に対する複数の指令ブロック等によって構成される。数値制御プログラムは、GコードやMコード等の既知のプログラム言語で記述されている。
なお、記憶部21には、数値制御プログラム以外の各種の情報も記憶される。各種の情報は、例えば、機械座標値、ロボット座標値、ロボット教示位置等である。
機械座標値は、上記数値制御プログラムの下で作動する工作機械20の各種軸の位置(即ち、工作機械20の刃物台やテーブル等の位置)を示す値である。機械座標値は、工作機械20上又は工作機械20の近傍の任意の位置に定められた基準点を原点とする工作機械座標系の下で定義される。記憶部21には、数値制御プログラムの下で逐次変化する機械座標値の最新値が格納されるよう、図示しない処理によって逐次更新される。
ロボット座標値は、ロボット制御装置3の制御下で作動するロボット30の制御点(例えば、ロボット30のアーム先端部30a)の位置及び姿勢、換言すればロボット30の各制御軸の位置を示す値である。ロボット座標値は、上述したように工作機械座標系とは異なるロボット座標系の下で定義される。ロボット座標系は、ロボット30上又はロボット30の近傍の任意の位置に定められた基準点を原点とする座標系である。以下では、ロボット座標系は工作機械座標系と異なる場合について説明するが、これに限らない。ロボット座標系は工作機械座標系と一致させてもよい。換言すれば、ロボット座標系の原点や座標軸方向を工作機械座標系の原点や座標軸方向と一致させてもよい。また、ロボット座標系は、制御軸が異なる2以上の座標形式の間で切り替え可能となっている。より具体的には、数値制御プログラムにおいてロボット30の制御点の位置及び姿勢は、直交座標形式又は各軸座標形式によって指定可能である。
記憶部21には、数値制御プログラムの下で逐次変化するロボット座標値の最新値が格納されるよう、図示しない処理によりロボット制御装置3から取得されたロボット座標値によって逐次更新される。
ロボット教示位置は、オペレータにより入力されたロボット30の始点及び終点といった教示位置、具体的には、ティーチペンダント等から入力されたロボット30の教示位置や、キーボード等から入力された教示位置等である。ロボット30の教示位置には、ロボット30の各制御軸の位置を示すロボット座標値が含まれる。
プログラム入力部22は、記憶部21から数値制御プログラムを読み出し、これを逐次、解析部23へ入力する。また、プログラム入力部22は、記憶部21に記憶されている機械座標値、ロボット座標値、ロボット教示位置等の各種の情報を読み出し、解析部23へ入力する。
解析部23は、プログラム入力部22から入力される数値制御プログラムに基づく指令種別を指令ブロックごとに解析するとともに、ロボット制御用変数部26からカスタムマクロ変数に関する情報を取得する。解析部23は、数値制御プログラムの解析結果とカスタムマクロ変数に基づいて工作機械20の制御を行うための指令を補間制御部24及びI/O制御部25に出力する。以降、カスタムマクロ変数のことを変数として説明する。
本実施形態では、解析部23は、ロボット制御用変数が更新されていた場合、系統を特定する情報に基づいて対象の系統を動作させるための指令を補間制御部24及びI/O制御部25に出力する。
補間制御部24は、サーボ制御部27に接続されており、サーボ制御部27を通じて直線補間、円弧補間、ヘリカル補間等の補間制御を行う。サーボ制御部27は、工作機械20の動作を制御するための工作機械制御信号を生成し、工作機械20の各種軸を駆動するアクチュエータへ入力する。工作機械20は、工作機械制御信号に応じて動作し、図示しないワークを加工する。数値制御プログラムに従って工作機械20の動作を制御した後、上述の機械座標値が最新の機械座標値によって更新される。
ロボット制御用変数部26は、ロボット制御装置3から読み書きされた加工プログラム内の指令を解析し、変数を更新する。
データ通信部28は、ロボット制御装置3のデータ通信部39と相互に各種指令やデータを送受信する。
次に、ロボット制御装置3の構成について詳細に説明する。図2に示すように、ロボット制御装置3は、ロボット30の動作を制御するために、記憶部31、プログラム入力部32、解析部33、軌跡制御部34、キネマティクス制御部35、サーボ制御部36、系統設定部37、ロボット制御用変数部38及びデータ通信部39等を備える。
記憶部31は、ロボット制御プログラム等、各種の情報を記憶する。ロボット制御プログラムは、例えば、オペレータによる操作に基づいて作成されたものである。ロボット制御プログラムは、ロボット30の動作を制御するためのロボット30に対する複数の指令ブロック等によって構成される。各種の情報は、例えば、機械座標値、ロボット座標値、ロボット教示位置等である。
プログラム入力部32は、記憶部31からロボット制御プログラムを読み出し、解析部33に入力する。
解析部33は、入力されたロボット制御プログラムの指令種別を判定する。解析部33は、その解析結果に基づく動作計画の指令を軌跡制御部34に送信する。
軌跡制御部34は、解析部33から動作計画の指令が入力されると、ロボット30の制御点の時系列データを算出し、キネマティクス制御部35へ出力する。
キネマティクス制御部35は、入力された時系列データに基づいて、逆運動学計算によりロボット30の各関節の目標角度を算出し、サーボ制御部36へ出力する。ここで、ロボット30の逆運動学計算とは、ロボット30の手先位置、姿勢から、各関節の角度を算出する計算手法である。
サーボ制御部36は、キネマティクス制御部35から入力される目標角度が実現するようにロボット30の各サーボモータをフィードバック制御することによってロボット30に対するロボット制御信号を生成し、ロボット30のサーボモータへ入力する。
また、本実施形態の解析部33は、入力されるロボット制御プログラムの指令種別が数値制御装置2の変数の読み書き命令と解析された場合、解析部33から読み書き命令に含まれる対象の系統が通知される。
読み書き命令は、読み出し命令と書き出し命令である。図3は、読み出し命令60及び書き出し命令70が含まれるロボット制御プログラムの一例を示す図である。読み出し命令60は、第1引数61、第2引数62、第3引数63及び第4引数64の4つのパラメータを有する。第1引数61は、読み出し命令60の対象となる機械を示し、この例では“MACHINE1”である。第2引数62は、複数の系統の中からどの系統かを特定するための系統番号(系統情報)であり、この例では“1”である。第3引数63は、対象のマクロ変数を特定するためのマクロ変数番号であり、この例では“100”である。第4引数64は、読み出した値を格納するアドレスを示し、この例では“1”である。
また、書き出し命令70も、同様に、第1引数71、第2引数72、第3引数73及び第4引数74の4つのパラメータを有する。第1引数71は、書き出し命令70の対象となる機械を示し、この例では“MACHINE1”である。第2引数72は、複数の系統の中からどの系統かを特定するための系統番号(系統情報)であり、この例では“1”である。第3引数73は、対象のマクロ変数を特定するためのマクロ変数番号であり、この例では“100”である。第4引数74は、対象のマクロ変数に書き込む値を示し、この例では“1”である。
系統設定部37は、読み出し命令60及び書き出し命令70が含まれるロボット制御プログラムに基づいて対象の系統の変数を読み書きする指令をロボット制御用変数部38に送信する。
ロボット制御用変数部38は、系統設定部37から通知された指令に基づいて変数を読み書きする指令をデータ通信部39に送信する。データ通信部39は、データ通信部28との間で指令信号の送受信を行う。変数を読み書きする指令は、データ通信部28を介してロボット制御用変数部26に送信される。
次に、図4~図8を参照し、系統1と系統2を制御する具体的な実施例について説明する。図4は、系統1と系統2のそれぞれの機械的な構成を模式的に示す図である。図4には、テーブル53にセットされるワークW1に対して第2タレット52によって加工を行う系統1と、テーブル54にセットされるワークW2に対して第1タレット51によって加工を行う系統2と、が示されている。
図4における系統1のZ1はz軸方向を示し、系統1のz軸方向の座標を示す変数に対応する。X2はx軸方向を示し、系統1のx軸方向の座標を示す変数に対応する。同様に、系統2のZ2はz軸方向を示し、系統2のz軸方向の座標を示す変数に対応する。X1はx軸方向を示し、系統2のx軸方向の座標を示す変数に対応する。
図5は、プログラム入力部32から解析部33に入力されるロボット制御プログラムの一例を示す図である。図5に示すように、1行目ではラベル[1]が記述される。2行目の“ヨビダシ WR CNC_MACRO(‘MACHINE1’,1,101,1)”は系統1の読み出し命令であり、系統1の加工開始要求の読み出し処理が行われる。3行目の“ヨビダシ WR CNC_MACRO(‘MACHINE1’,2,101,1)”は系統2の読み出し命令であり、系統2の加工開始要求の読み出し処理が行われる。
4行目では、ラベル[2]が記述される。5行目の“タイキ 10.0sec”は10秒間の待機処理が行われる。6行目の“ヨビダシ RD_CNC_MACRO(‘MACHINE1’,1,101,1)”は系統1の書き出し命令である。“モシ レジ[1]=ON,ジャンプ ラベル 2”は、系統1の加工完了を確認する処理であり、“モシ レジ[1]=ON”の条件が満たされると“ラベル 2”に処理が移行する。
7行目では、ラベル[3]が記述される。8行目の“タイキ 10.0sec”は10秒間の待機処理が行われる。9行目では、“ヨビダシ RD_CNC_MACRO(‘MACHINE1’,2,101,2)”は系統2の書き出し命令である。“モシ レジ[2]=ON,ジャンプ ラベル 3”は、系統2の加工完了を確認する処理であり、“モシ レジ[2]=ON”の条件が満たされるとラベル 3に処理が移行する。
図5に示すように、ロボット制御プログラムにおいて、系統が区別されて変数を読み書きする処理がロボット制御装置3によって行われる。図6は、ロボット制御装置3によって読み書きされる数値制御プログラムのカスタムマクロ変数の割当例を示す図である。図6の例では、変数#100は、プログラム停止要求を示す変数であり、#100=0が要求OFFを意味し、#100=1が要求ONを意味する。また、変数#101は加工要求を意味し、変数#102はドア開要求を意味し、変数#103はドア閉要求を意味し、変数#104はチャック開要求を意味し、変数#105はチャック閉要求を意味する。変数#101~変数#105の何れにおいても、0が要求OFFを意味し、1が要求ONを意味する。
次に、図7及び図8を参照し、図7の例で示した変数が設定された状況における系統1と系統2の制御について説明する。
図7は、系統1のメインプログラム及びサブプログラムの一例を示す図である。図7には、図5のロボット制御プログラムで呼び出される系統1のプログラムが示される。
まず、系統1の制御について説明する。シーケンス番号“N10”には条件分岐が設定される。最初の“IF[#101 EQ 1]GOTO20”では、変数である#101=1が成立すると、シーケンス番号“N20”に処理が移行する。シーケンス番号“N20”では、“M98P1000”によってプログラム番号1000に対応するサブプログラムO1000が呼び出され、実行される。
サブプログラムO1000では、“G00”でX2=100、Z1=100の座標に基づいて位置決め処理が行われる。位置決め処理は、“G01”によりZ1=0の座標にF=1000に基づく送り速度で直線移動させる処理が行われる。次に、“#101”に要求OFFを意味する0が入力され、“M99”でサブプログラムが終了する。サブプログラムO1000の終了後、“GOTO10”で処理はシーケンス番号“N10”に戻り、条件分岐の処理を繰り返す。
最初の“IF[#101 EQ 1]GOTO20”で#101=1が成立しない場合、処理は“IF[#102 EQ 1]GOTO30”に移行する。この“IF[#102 EQ 1]GOTO30”で#102=1が成立すると処理が図略のシーケンス番号“N30”に移行し、シーケンス番号“N30”では、具体的な処理は省略するが、ドアを開く動作に関する処理が実行される。“IF[#102 EQ 1]GOTO30”で#102=1が成立しない場合は、“IF[#103 EQ 1]GOTO40”に処理が移行する。この“IF[#103 EQ 1]GOTO40”で#103=1が成立すると処理が図略のシーケンス番号“N40”に移行し、シーケンス番号“N40”では、具体的な処理は省略するが、ドアを閉じる動作に関する処理が実行される。“IF[#103 EQ 1]GOTO40”で#103=1が成立しない場合は、“IF[#104 EQ 1]GOTO50”に処理が移行する。この“IF[#104 EQ 1]GOTO50”で#104=1が成立すると処理が図略のシーケンス番号“N50”に移行し、シーケンス番号“N50”では、具体的な処理は省略するが、チャックを開く動作に関する処理が実行される。“IF[#104 EQ 1]GOTO50”で#104=1が成立しない場合は、“IF[#105 EQ 1]GOTO60”に処理が移行する。この“IF[#105 EQ 1]GOTO60”で#105=1が成立すると処理が図略のシーケンス番号“N60”に移行し、シーケンス番号“N60”では、具体的な処理は省略するが、チャックを閉じる動作に関する処理が実行される。
“IF[#105 EQ 1]GOTO60”の判定条件を満たさなかった場合は、“IF[#100 EQ 1]GOTO100”の判定が行われる。“IF[#100 EQ 1]GOTO100”の判定の条件が満たされると、シーケンス番号“N100”では“M30”によりプログラムが終了する。
図8は、系統2のメインプログラム及びサブプログラムの一例を示す図である。図8には、図5のロボット制御プログラムで呼び出される系統2のプログラムが示される。図8においても、図7で示した例と同様の処理が行われる。図8の例では、シーケンス番号“N20”において“M98P2000”によってプログラム番号2000に対応するサブプログラムO2000が呼び出される点が異なる。
サブプログラムO2000では、“G00”でX1=200、Z2=0の座標に基づいて位置決め処理が行われる。位置決め処理は、“G01”でZ2=1000の座標にF=1000に基づく送り速度で直線移動させる処理が行われる。次に、“#101”に要求OFFを意味する0が入力され、“M99”でサブプログラムが終了する。サブプログラムO2000の終了後、“GOTO10”で処理はシーケンス番号“N10”に戻り、条件分岐の処理を繰り返す。
図8及び図9を参照して説明した例では、系統1と系統2の間で変数♯100~♯105が共通している。本実施形態の構成では、ロボット制御装置3から出力される指令では系統1と系統2が区別されているので、数値制御装置2側で系統を特定することができる。
次に、図9を参照して数値制御システム1の系統選択処理の流れを説明する。図9は、本開示の一実施形態に係る数値制御システム1の処理の一例を示すフローチャートである。なお、図9は、あくまで系統選択処理の流れの一例を説明するものであり、その他の並行する処理については省略するものとする。
まず、ロボット制御装置3のプログラム入力部32は、記憶部31からロボット制御プログラムを読み出し、解析部33に入力する入力処理を実行する(ステップS1)。
次に、解析部33は、入力されたロボット制御プログラムの指令種別を判定し、指令種別が数値制御装置2の変数読み書き命令と解析された場合に系統を特定する系統情報及び系統に属する変数を取得し、系統設定部37に対象の系統を通知する解析処理を実行する(ステップS2)。
ステップS2で対象の系統を通知された系統設定部37は、解析部33から通知された対象の系統及びそれに属する変数をロボット制御用変数部38に出力する設定処理を実行する(ステップS3)。
ロボット制御用変数部38は、データ通信部39によって数値制御装置2のデータ通信部28に対して対象の系統及びこれに属する変数を送信し、数値制御装置2のロボット制御用変数部26の対象の系統及びこれに属する変数を更新する更新処理を実行する(ステップS4)。
ロボット制御装置3は、工作機械20の対象の系統に加工を指令する加工要求処理を実行し、工作機械20の対象の系統はワークに対する加工を実行する(ステップS5)。以上により、本処理を終了する。
以上説明したように、本実施形態の数値制御システム1は、複数の制御系統を有する数値制御装置2と、数値制御装置2に連動してロボット30を制御するロボット制御装置3と、備える。そして、ロボット制御装置3は、記憶部31からロボット30を制御するためのロボット制御プログラムを取得するプログラム入力部32と、プログラム入力部32により入力されたロボット制御プログラムを解析し、数値制御装置2を制御する数値制御プログラムの変数及び数値制御装置が有する複数の制御系統の中から対象の系統を特定する系統情報(系統番号)が設定される読み出し命令及び書き出し命令を取得する解析部33と、解析部33により取得された情報に基づいて対象の系統の変数を読み書きするための指令を出力する系統設定部37と、数値制御装置2に対して対象の系統の変数を読み書きするための指令を送信することにより、数値制御装置2に対象の系統の変数の更新を実行させるデータ通信部39と、を備える。
また、本実施形態のロボット制御装置3と数値制御装置2を連動して制御する数値制御方法は、記憶部31からロボット30を制御するためのロボット制御プログラムを取得するプログラム入力ステップと、プログラム入力ステップにより入力されたロボット制御プログラムを解析し、数値制御装置2を制御する数値制御プログラムの変数及び数値制御装置2が有する複数の制御系統の中から対象の系統を特定する系統情報(系統番号)が設定される読み出し命令及び書き出し命令を取得する解析ステップと、解析ステップにより取得された情報に基づいて対象の系統の変数を読み書きするための指令を出力する系統設定ステップと、ロボット制御装置3が、数値制御装置2に対して対象の系統の変数を読み書きするための指令を送信することにより、数値制御装置2に対象の系統の変数の更新を実行させる更新ステップと、を含む。
本実施形態のロボット制御装置3、数値制御システム1及び数値制御方法は、以下のような効果を奏する。即ち、数値制御装置2が複数の制御系統を有し、各制御系統で変数が共通するような場合であっても、ロボット制御装置3によって系統を区別して数値制御装置2の変数を読み書きすることができる。従って、数値制御装置2側で異なる系統の変数が設定されることもなく、適切に対象の系統の変数の更新を行うことができ、複数の制御系統を有する数値制御装置2とロボット制御装置3の連動制御を複雑化することなく適切に実現できる。
また、本実施形態のロボット制御装置3の解析部33は、更新された対象の系統の変数に基づいて数値制御装置2が制御する複数の制御系統に連動するようにロボット制御を行う指令を出力する。
これにより、複数の制御系統を有する数値制御装置2とロボット制御装置3の連動を適切に行うことができる。
また、本実施形態では、複数の制御系統(系統1及び系統2)のそれぞれは、刃物台、タレット、テーブル及び主軸のうち少なくとも1つを制御してワークを加工するものであり、数値制御装置2で更新された対象の系統の変数に基づき、刃物台、タレット、テーブル及び主軸の少なくとも1つが制御される。本実施形態では、第1タレット51、第2タレット、テーブル53、テーブル54が制御対象となっている。
これにより、複数の制御系統のそれぞれが、刃物台、タレット、テーブル及び主軸の少なくとも1つを有するため、多種多様な制御が設定されるような場合であっても、変数を利用した効率的な制御プログラムの構築を実現できる。
なお、本開示は、上記実施形態に限定されるものではなく、種々の変更及び変形が可能である。
1 数値制御システム
2 数値制御装置
3 ロボット制御装置
20 工作機械
30 ロボット
31 記憶部
32 プログラム入力部
33 解析部
37 系統設定部
39 データ通信部

Claims (7)

  1. 記憶部からロボットを制御するためのロボット制御プログラムを取得するプログラム入力部と、
    前記プログラム入力部により入力された前記ロボット制御プログラムを解析し、数値制御装置を制御する数値制御プログラムの変数及び前記数値制御装置が有する複数の制御系統の中から対象の系統を特定する系統情報が設定される読み出し命令及び書き出し命令を取得する解析部と、
    前記解析部により取得された情報に基づいて前記対象の系統の変数を読み書きするための指令を出力する系統設定部と、
    前記数値制御装置に対して前記対象の系統の変数を読み書きするための指令を送信することにより、前記数値制御装置に前記対象の系統の変数の更新を実行させるデータ通信部と、を備えるロボット制御装置。
  2. 前記解析部は、更新された前記対象の系統の変数に基づいて前記数値制御装置が制御する前記複数の制御系統に連動するようにロボット制御を行う指令を出力する、請求項1に記載のロボット制御装置。
  3. 前記複数の制御系統のそれぞれは、刃物台、タレット、テーブル及び主軸のうち少なくとも1つを制御してワークを加工するものであり、
    前記数値制御装置で更新された前記対象の系統の変数に基づき、前記刃物台、前記タレット、前記テーブル及び前記主軸の少なくとも1つが制御される、請求項1又は2に記載のロボット制御装置。
  4. 複数の制御系統を有する数値制御装置と、
    前記数値制御装置に連動してロボットを制御するロボット制御装置と、を備え、
    前記ロボット制御装置は、
    記憶部からロボットを制御するためのロボット制御プログラムを取得するプログラム入力部と、
    前記プログラム入力部により入力された前記ロボット制御プログラムを解析し、前記数値制御装置を制御する数値制御プログラムの変数及び前記数値制御装置が有する複数の制御系統の中から対象の系統を特定する系統情報が設定される読み出し命令及び書き出し命令を取得する解析部と、
    前記解析部により取得された情報に基づいて前記対象の系統の変数を読み書きするための指令を出力する系統設定部と、
    前記数値制御装置に対して前記対象の系統の変数を読み書きするための指令を送信するデータ通信部と、を備え、
    前記数値制御装置は、前記ロボット制御装置から受信した前記対象の系統の変数を読み書きするための指令に基づいて前記対象の系統の変数の更新を実行する、数値制御システム。
  5. 前記解析部は、更新された前記対象の系統の変数に基づいて前記数値制御装置が制御する前記複数の制御系統に連動するようにロボット制御を行う指令を出力する、請求項4に記載の数値制御システム。
  6. 前記複数の制御系統のそれぞれは、刃物台、タレット、テーブル及び主軸のうち少なくとも1つを制御してワークを加工するものであり、
    前記数値制御装置で更新された前記対象の系統の変数に基づき、前記刃物台、前記タレット、前記テーブル及び前記主軸の少なくとも1つが制御される、請求項4又は5に記載の数値制御システム。
  7. ロボット制御装置と数値制御装置を連動して制御する数値制御方法であって、
    記憶部からロボットを制御するためのロボット制御プログラムを取得するプログラム入力ステップと、
    前記プログラム入力ステップにより入力された前記ロボット制御プログラムを解析し、前記数値制御装置を制御する数値制御プログラムの変数及び前記数値制御装置が有する複数の制御系統の中から対象の系統を特定する系統情報が設定される読み出し命令及び書き出し命令を取得する解析ステップと、
    前記解析ステップにより取得された情報に基づいて前記対象の系統の変数を読み書きするための指令を出力する系統設定ステップと、
    前記ロボット制御装置が、前記数値制御装置に対して前記対象の系統の変数を読み書きするための指令を送信することにより、前記数値制御装置に前記対象の系統の変数の更新を実行させる更新ステップと、を含む数値制御方法。
JP2022542452A 2022-04-18 2022-04-18 ロボット制御装置、数値制御システム及び数値制御方法 Active JP7157281B1 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2022/018072 WO2023203617A1 (ja) 2022-04-18 2022-04-18 ロボット制御装置、数値制御システム及び数値制御方法

Publications (2)

Publication Number Publication Date
JP7157281B1 true JP7157281B1 (ja) 2022-10-19
JPWO2023203617A1 JPWO2023203617A1 (ja) 2023-10-26

Family

ID=83688415

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2022542452A Active JP7157281B1 (ja) 2022-04-18 2022-04-18 ロボット制御装置、数値制御システム及び数値制御方法

Country Status (3)

Country Link
JP (1) JP7157281B1 (ja)
TW (1) TW202342246A (ja)
WO (1) WO2023203617A1 (ja)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010277425A (ja) * 2009-05-29 2010-12-09 Fanuc Ltd 工作機械に対してワークの供給及び取り出しを行うロボットを制御するロボット制御装置
WO2021049028A1 (ja) * 2019-09-13 2021-03-18 三菱電機株式会社 数値制御装置、および機械学習装置
WO2022054245A1 (ja) * 2020-09-11 2022-03-17 三菱電機株式会社 数値制御装置および産業機械制御システム

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010277425A (ja) * 2009-05-29 2010-12-09 Fanuc Ltd 工作機械に対してワークの供給及び取り出しを行うロボットを制御するロボット制御装置
WO2021049028A1 (ja) * 2019-09-13 2021-03-18 三菱電機株式会社 数値制御装置、および機械学習装置
WO2022054245A1 (ja) * 2020-09-11 2022-03-17 三菱電機株式会社 数値制御装置および産業機械制御システム

Also Published As

Publication number Publication date
JPWO2023203617A1 (ja) 2023-10-26
WO2023203617A1 (ja) 2023-10-26
TW202342246A (zh) 2023-11-01

Similar Documents

Publication Publication Date Title
US9063535B2 (en) Numerical control program execution by robot
WO2022224425A1 (ja) 数値制御装置及び数値制御システム
US20110238204A1 (en) Numerical control device, method of controlling the same, and system program therefor
JP7022260B1 (ja) 数値制御システム
WO2022097719A1 (ja) 数値制御システム及び産業機械の制御方法
WO2022034848A1 (ja) 数値制御システム及びロボット制御方法
JP7157281B1 (ja) ロボット制御装置、数値制御システム及び数値制御方法
US20230415341A1 (en) Numerical control device 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
WO2022131173A1 (ja) 数値制御システム及び産業機械の制御方法
WO2023053435A1 (ja) 数値制御システム及びロボット制御装置
JP7495499B2 (ja) 数値制御システム
US20240231308A9 (en) Command generation device and non-transitory computer-readable medium storing a computer program
JP7492006B2 (ja) 数値制御システム
US20240134342A1 (en) Command generation device and non-transitory computer-readable medium storing a computer program
JP7121221B1 (ja) 数値制御装置及び数値制御システム
US20230185272A1 (en) Program analyzer and control system
WO2024042679A1 (ja) 数値制御装置及び数値制御システム
WO2022176818A1 (ja) ロボット制御装置、ロボット制御システム、及びコンピュータプログラム
WO2023026373A1 (ja) 数値制御システム
JP7177301B1 (ja) 数値制御装置、及び数値制御システム
JP2694638B2 (ja) 数値制御装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220711

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20220711

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: 20220906

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20221006

R150 Certificate of patent or registration of utility model

Ref document number: 7157281

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150