JP7842229B2 - 処理装置、プログラム及び処理方法 - Google Patents

処理装置、プログラム及び処理方法

Info

Publication number
JP7842229B2
JP7842229B2 JP2024543611A JP2024543611A JP7842229B2 JP 7842229 B2 JP7842229 B2 JP 7842229B2 JP 2024543611 A JP2024543611 A JP 2024543611A JP 2024543611 A JP2024543611 A JP 2024543611A JP 7842229 B2 JP7842229 B2 JP 7842229B2
Authority
JP
Japan
Prior art keywords
rotation
tool
processor
angle
combinations
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
JP2024543611A
Other languages
English (en)
Other versions
JPWO2024047698A1 (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
Publication of JPWO2024047698A1 publication Critical patent/JPWO2024047698A1/ja
Application granted granted Critical
Publication of JP7842229B2 publication Critical patent/JP7842229B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Program-control systems
    • G05B19/02Program-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 program data in numerical form
    • G05B19/406Numerical 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 program data in numerical form characterised by monitoring or safety
    • G05B19/4061Avoiding collision or forbidden zones
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Program-control systems
    • G05B19/02Program-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 program data in numerical form
    • G05B19/4093Numerical 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 program data in numerical form characterised by part programming, e.g. entry of geometrical information as taken from a technical drawing, combining this with machining and material information to obtain control information, named part program, for the NC machine
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/50Machine tool, machine tool null till machine tool work handling
    • G05B2219/50256Orienting selected tool with respect to workpiece
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/50Machine tool, machine tool null till machine tool work handling
    • G05B2219/50353Tool, probe inclination, orientation to surface, posture, attitude

Landscapes

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

Description

本発明は、処理装置、プログラム及び処理方法に関する。
工作機械などを用いてワークの傾斜面に穴又はポケットなどの形状を加工する場合に、XY平面と同様のプログラムで加工したい場合がある。
このような加工をするための技術として、数値制御装置に傾斜面を定義する技術(傾斜面割出し指令(G68.2))と、傾斜面に対して工具を垂直にする技術(工具軸方向制御(G53.1))がある。
工具の方向を変えることが可能な回転軸が2軸存在する工作機械の場合、傾斜面に対して工具が垂直になる回転軸2軸の角度の組は2組存在する。従来の数値制御装置は、当該2組から、回転軸の移動量が小さい方を選択する。
国際公開第2011/117915号
しかしながら、数値制御装置が選択した角度の組では、工具などとワーク又は治具などとの干渉が発生する場合がある。
本発明の実施形態が解決しようとする課題は、傾斜面を基準にして工具の方向を変える際に工具などが干渉を起こすことを防ぐことができる処理装置、プログラム及び処理方法を提供することである。
実施形態の処理装置は、算出部及び決定部を備える。算出部は、工具の向きを変えることが可能な複数の回転軸の、前記工具が平面に対して所定の角度となるような角度の組み合わせを1つ以上算出する。決定部は、前記複数の回転軸を前記算出部によって算出されたいずれかの前記組み合わせにするために前記複数の回転軸のそれぞれをどちらの方向に何度回転させるかを、少なくとも1つの前記回転軸をどちらの方向に回転するかを示す指示に従い、且つ前記回転軸の回転の移動量又は移動時間が最小となるように決定する。
本発明は、傾斜面を基準にして工具の方向を変える際に工具などが干渉を起こすことを防ぐことができる。
実施形態に係る数値制御システム及び当該数値制御システムに含まれる構成要素の要部構成の一例を示すブロック図。 図1中のプロセッサーによる処理の一例を示すフローチャート。 図1中のプロセッサーによる処理の一例を示すフローチャート。 第2垂直命令の参照先のテーブルの一例を示す図。 ワークの傾斜面に対して工具が垂直になるようにした場合の工具及び主軸の状態の第1の例を示す図。 ワークの傾斜面に対して工具が垂直になるようにした場合の工具及び主軸の状態の第2の例を示す図。 工具及び治具などの状態の一例を示す図。
以下、実施形態に係る数値制御システムについて図面を用いて説明する。なお、以下の実施形態の説明に用いる各図面は、各部の縮尺を適宜変更している場合がある。また、以下の実施形態の説明に用いる各図面は、説明のため、構成を省略して示している場合がある。また、各図面及び本明細書中において、同一の符号は同様の要素を示す。
図1は、実施形態に係る数値制御システム1及び数値制御システム1に含まれる構成要素の要部構成の一例を示すブロック図である。数値制御システム1は、一例として、数値制御装置100及び産業機械200を含む。なお、数値制御システム1は、制御システムの一例である。
数値制御装置100は、産業機械200などに対して数値制御を行う装置である。また、数値制御装置100は、傾斜面に対して工具を垂直にするための各回転軸の回転方法の候補の中から移動量が少ない候補を決定する機能を備える。数値制御装置100は、サーバー装置、PC、タブレット端末又はスマートホンなどであっても良い。数値制御装置100は、一例として、プロセッサー110、ROM(read-only memory)120、RAM(random-access memory)130、補助記憶装置140、入力デバイス150、表示デバイス160及び制御インターフェース170を含む。そして、バス180などが、これら各部を接続する。
なお、数値制御装置100は、処理装置の一例である。また、傾斜面に対して工具を垂直にする場合の当該垂直は、所定の角度の一例である。
プロセッサー110は、数値制御装置100の動作に必要な演算及び制御などの処理を行うコンピューターの中枢部分であり、各種演算及び処理などを行う。プロセッサー110は、例えば、CPU(central processing unit)、MPU(micro processing unit)、SoC(system on a chip)、DSP(digital signal processor)、GPU(graphics processing unit)、ASIC(application specific integrated circuit)、PLD(programmable logic device)又はFPGA(field-programmable gate array)などである。あるいは、プロセッサー110は、これらのうちの複数を組み合わせたものである。また、プロセッサー110は、これらにハードウェアアクセラレーターなどを組み合わせたものであっても良い。プロセッサー110は、ROM120又は補助記憶装置140などに記憶されたファームウェア、システムソフトウェア及びアプリケーションソフトウェア、NC(numerical control)プログラムなどのプログラムに基づいて、数値制御装置100の各種の機能を実現するべく各部を制御する。また、プロセッサー110は、当該プログラムに基づいて後述する処理を実行する。なお、当該プログラムの一部又は全部は、プロセッサー110の回路内に組み込まれていても良い。NCプログラムは、産業機械200を数値制御するためのプログラムである。
また、プロセッサー110は、上記のプログラムを実行することで、プログラム解析部111、方向位置選択部112、位置選択部113及び移動制御部114として機能する。
プログラム解析部111は、NCプログラムの解析を行う。
方向位置選択部112は、後述の方向指示を用いて、傾斜面に対して工具を垂直にするための各回転軸の回転方法を決定する。
位置選択部113は、後述の方向指示を用いずに、傾斜面に対して工具を垂直にするための各回転軸の回転方法を決定する。
移動制御部114は、産業機械200の工具220の移動を制御する。移動制御部114は、産業機械200の各回転軸を制御する。
ROM120及びRAM130は、プロセッサー110を中枢としたコンピューターの主記憶装置である。
ROM120は、専らデータの読み出しに用いられる不揮発性メモリである。ROM120は、上記のプログラムのうち、例えばファームウェアなどを記憶する。また、ROM120は、プロセッサー110が各種の処理を行う上で使用するデータなども記憶する。
RAM130は、データの読み書きに用いられるメモリである。RAM130は、プロセッサー110が各種の処理を行う上で一時的に使用するデータを記憶するワークエリアなどとして利用される。RAM130は、典型的には揮発性メモリである。
補助記憶装置140は、プロセッサー110を中枢としたコンピューターの補助記憶装置である。補助記憶装置140は、例えばEEPROM(electric erasable programmable read-only memory)、HDD(hard disk drive)又はフラッシュメモリなどである。補助記憶装置140は、上記のプログラムのうち、例えば、システムソフトウェア、アプリケーションソフトウェア及びNCプログラムなどを記憶する。また、補助記憶装置140は、プロセッサー110が各種の処理を行う上で使用するデータ、プロセッサー110での処理によって生成されたデータ及び各種の設定値などを記憶する。
なお、補助記憶装置140は、傾斜面情報テーブル141を記憶する。傾斜面情報テーブル141については後述する。
補助記憶装置140は、記憶部の一例である。
入力デバイス150は、数値制御装置100の操作者による操作を受け付ける。入力デバイス150は、例えば、キーボード、キーパッド、タッチパッド、マウス又はコントローラーなどである。また、入力デバイス150は、音声入力用のデバイスであっても良い。
表示デバイス160は、数値制御装置100の操作者などに各種情報を通知するための画面を表示する。表示デバイス160は、例えば、液晶ディスプレイ又は有機EL(electro-luminescence)ディスプレイなどのディスプレイである。また、入力デバイス150及び表示デバイス160としては、タッチパネルを用いることもできる。すなわち、タッチパネルが備える表示パネルを表示デバイス160として、タッチパネルが備える、タッチ入力によるポインティングデバイスを入力デバイス150として用いることができる。
制御インターフェース170は、数値制御装置100が産業機械200などと通信するためのインターフェースである。数値制御装置100は、NCプログラムに基づき、制御インターフェース170を介して産業機械200などを制御する。
バス180は、コントロールバス、アドレスバス及びデータバスなどを含み、数値制御装置100の各部で授受される信号を伝送する。
産業機械200は、数値制御などによって動作する機械である。産業機械200は、例えば、工作機械、マニピュレーター、ロボットアーム又はロボットなどである。産業機械200は、一例として、入力デバイス210、工具220及び主軸230を含む。
入力デバイス210は、産業機械200の操作者による操作を受け付ける。入力デバイス210は、例えば、操作盤、キーボード、キーパッド、タッチパッド、タッチパネル、マウス又はコントローラーなどである。また、入力デバイス210は、音声入力用のデバイスであっても良い。
工具220及び主軸230について、図5を用いて説明する。
図5は、ワーク300の傾斜面301に対して工具220が垂直になるようにした場合の工具220及び主軸230の状態の第1の例を示す図である。
工具220は、ドリルなどの、ワーク300に対する加工などを行うための工具である。
主軸230は、工具220を取り付け可能である。主軸230は、例えば、工具220を工具220の中心軸を中心に回転させることができる。
また、主軸230は、回転軸231及び回転軸232を備える。回転軸231は、B軸方向に回転可能である。主軸230は、回転軸231によって工具220をB軸方向に回転させることで、工具220の向きを変えることが可能である。回転軸232は、C軸方向に回転可能である。主軸230は、回転軸232によって工具220をC軸方向に回転させることで工具220の向きを変えることが可能である。回転軸231及び回転軸232は、典型的には正負どちらの方向にも回転可能である。回転軸231及び回転軸232は、回転可能な範囲が制限されていても良いし、制限されていなくても良い。なお、主軸230は、3つ以上の回転軸を備えていても良い。
以下、実施形態に係る数値制御システム1の動作を図2及び図3などに基づいて説明する。なお、以下の動作説明における処理の内容は一例であって、同様な結果を得ることが可能な様々な処理を適宜に利用できる。図2及び図3は、数値制御装置100のプロセッサー110による処理の一例を示すフローチャートである。プロセッサー110は、例えば、ROM120又は補助記憶装置140などに記憶されたプログラムに基づいて図2及び図3の処理を実行する。
プロセッサー110は、NCプログラムを実行する場合に図2及び図3の処理を開始する。
図2のステップST11において数値制御装置100のプロセッサー110は、実行する対象のNCプログラム(以下「対象プログラム」という。)を、補助記憶装置140などから取得する。
図2の説明では、以下の2つのNCプログラム「O0001」及び「O0002」を例に説明を行う。すなわち、プロセッサー110が、対象プログラムとして「O0001」又は「O0002」を取得した場合を例に説明を行う。なお、NCプログラムに用いるプログラミング言語は、限定しない。また、NCプログラムは、1行に複数の命令を含んでも良い。また、NCプログラムは、1つの命令が複数行にわたっていても良い。
O0001
N1 G54
N2 G90 G00 X0 Y200.0 Z0 B0 C0
N3 G68.2 P1 X-50.0 Y0 Z-80.0 I0 J30.0 K0
N4 G53.1 P1
N5 G43 H1 X0 Y0 Z0
O0002
N1 G54
N2 G90 G00 X0 Y200.0 Z0 B0 C0
N3 G68.5 P1
N4 G43 H1 X0 Y0 Z0
NCプログラム「O0001」及び「O0002」の先頭のN及び当該Nに続く数字は、何行目であるかを示す。N3であれば3行目である。NCプログラム「O0001」及び「O0002」は、それぞれ1つの垂直命令を含む。垂直命令は、傾斜面に対して工具220を垂直にし、当該傾斜面を基準とした座標系を設定する命令である。また、当該傾斜面は、当該垂直命令などによって定義される傾斜面である。なお、垂直命令には、第1垂直命令及び第2垂直命令の2種類がある。NCプログラム「O0001」は、1つの第1垂直命令を含む。NCプログラム「O0002」は、1つの第2垂直命令を含む。
NCプログラム「O0001」及び「O0002」の1行目は、初期状態の座標系、すなわちX1Y1Z1座標系を決定する命令である。
NCプログラム「O0001」及び「O0002」の2行目は、産業機械200の工具220を移動させる命令である。
NCプログラム「O0001」の3行目は、ワーク300の傾斜面301の位置及び角度を定義する命令である。
NCプログラム「O0001」の4行目は、第1垂直命令である。NCプログラム「O0001」では、4行目の第1垂直命令は、3行目で定義される傾斜面301に対して工具220を垂直にする。また、第1垂直命令は、回転軸をどちらの方向に回転させるかを示す指示(以下「方向指示」という。)を含んでも良い。NCプログラム「O0001」の4行目の第1垂直命令では、「P1」の部分が、方向指示である。方向指示「P1」は、回転軸231を正方向(B軸を正方向)に回転させることを示す。方向指示は、「P1」以外にも、「P-1」、「P2」及び「P-2」などとすることも可能である。方向指示「P-1」は、回転軸231を負方向に回転させることを示す。方向指示「P2」は、回転軸232を正方向(C軸を正方向)に回転させることを示す。方向指示「P-2」は、回転軸232を負方向に回転させることを示す。なお、第1垂直命令は、複数の方向指示を含んでも良い。この場合の方向指示の数は、2つ以上回転軸の数以下である。例えば、方向指示「P1P2」は、方向指示「P1」及び方向指示「P2」を含む。すなわち、方向指示「P1P2」は、回転軸231を正方向に回転させ、回転軸232を正方向に回転させることを示す。
NCプログラム「O0002」の3行目は、第2垂直命令である。第2垂直命令は、NCプログラム「O0002」の外部を参照することで、ワーク300の傾斜面301の位置及び角度、並びに方向指示を取得する。当該外部は、例えば、NCプログラム「O0002」を含むファイルとは異なるファイルである。あるいは、当該外部は、NCプログラム「O0002」を含むファイルのNCプログラム「O0002」以外の部分であっても良い。NCプログラム「O0002」の3行目の第2垂直命令中の「P1」は、参照先を示す情報である。
図4は、第2垂直命令の参照先のテーブルT1の一例を示す図である。テーブルT1は、傾斜面情報テーブル141の一例である。テーブルT1は、垂直情報を記憶する。垂直情報は、例えば、傾斜面301の位置及び角度、並びに方向指示などを含む。また、垂直情報は、角度組み合わせの候補及び決定済みの回転方法を含んでも良い。テーブルT1は、例えば、1行で1つの垂直情報を記憶する。テーブルT1は、一例として、番号、解斜面原点、傾斜面向き、工具垂直動作、回転軸の指定及び指定回転軸の回転方向、候補1、候補2及び決定済みの回転方法を含む。
テーブルT1の番号は、傾斜面301の位置及び角度、並びに方向指示の組ごとにユニークに付与される識別情報である。傾斜面原点は、傾斜面301の位置を示す。傾斜面向きは、傾斜面301の角度を示す。工具垂直動作は、傾斜面に対して工具220を垂直にするか否かを示す。回転軸の指定及び指定回転軸の回転方向は、方向指示を示す。回転軸の指定は、どの回転軸を、方向指示の対象とするかを示す。指定回転軸の回転方向は、方向指示の対象とするまた、テーブルT1の各行は、複数の方向指示を含んでも良い。この場合の方向指示の数は、2つ以上回転軸の数以下である。テーブルT1が2つの方向指示を含む場合、テーブルT1は、例えば、回転軸の指定1及び指定回転軸の回転方向1並びに回転軸の指定2及び指定回転軸の回転方向2を含む。回転軸の指定1及び指定回転軸の回転方向1が1つの方向指示、回転軸の指定2及び指定回転軸の回転方向2が1つの方向指示であり、合わせて2つの方向指示である。
候補1及び候補2のそれぞれは、後述の角度組み合わせの候補を示す。なお、垂直情報に含まれる候補の数は、2に限らない。
決定済みの回転方法は、後述の処理によって決定される回転方法を示す。
なお、テーブルT1は、例えば、NCプログラムの実行前に作成しておく。また、第2垂直命令の参照先は、テーブル以外であっても良い。この場合、参照先は、テーブル以外の形式でワーク300の傾斜面301の位置及び角度、並びに方向指示を記憶する。
第2垂直命令中の「Pn」は、例えば、テーブルT1のどの位置を参照するかを示す。なお、nは、例えば、1以上の整数である。第2垂直命令中の「Pn」は、例えば、テーブルT1のn行目を参照することを示す。例えば、n=1である場合、すなわち、第2垂直命令中の「P1」は、テーブルT1の1行目を参照することを示す。
ステップST12においてプロセッサー110は、対象プログラムから、次に実行する命令を取得する。ステップST12において最後に取得された命令を以下「取得命令」という。
ステップST13においてプロセッサー110は、取得命令が第1垂直命令であるか否かを判定する。プロセッサー110は、取得命令が第1垂直命令であるならば、ステップST13においてYesと判定してステップST14へと進む。
ステップST14においてプロセッサー110は、取得命令を実行するための回転方法が決定済みであるか否かを判定する。プロセッサー110は、回転方法が決定済みであるならば、ステップST14においてNoと判定してステップST15へと進む。回転方法の詳細については後述する。
ステップST15においてプロセッサー110は、第1垂直命令によって定義される傾斜面に基づき角度組み合わせを算出する。なお、「角度組み合わせ」は、「傾斜面に対して工具を垂直にするための各回転軸の角度の組み合わせ」を示すものとする。NCプログラム「O0001」であれば、3行目で定義されている。ここで算出される角度組み合わせは、産業機械200の制御において用いられる角度組み合わせの候補である。工具220の向きを変えることが可能な回転軸が2つである場合、通常、候補は2組である。ただし、各回転軸の回転可能な範囲によっては、候補が2組より少ない場合も考えらえる。また、プロセッサー110は、回転軸が3つ以上である場合などにおいて、算出する組み合わせを、所定の条件を満たしたものだけとなるように制限しても良い。
プロセッサー110は、ステップST15の処理を行うことで、工具の向きを変えることが可能な複数の回転軸の、工具が平面に対して所定の角度となるような角度の組み合わせを1つ以上算出する算出部の一例として機能する。
図5及び図6に、2つの角度組み合わせ候補の例を示す。
図6は、ワーク300の傾斜面301に対して工具220が垂直になるようにした場合の工具220及び主軸230の状態の第2の例を示す図である。
図5及び図6に示す傾斜面301は、X1軸に対して30度傾いている。また、傾斜面301は、Y1軸と平行である。なお、X1Y1Z1座標系は、傾斜面に対して工具220を垂直にする前の初期状態の座標系である。また、X2Y2Z2座標系は、傾斜面301に対して工具220を垂直にした後の座標である。すなわち、X2Y2Z2座標系では、傾斜面301は、X2Y2平面と平行である。好ましくは、傾斜面301は、X2Y2平面と一致する。
図5に示す第1の例では、回転軸231の角度は30度、回転軸232の角度は0度である。図6に示す第2の例では、回転軸231の角度は-30度、回転軸232の角度は180度である。
ステップST16においてプロセッサー110は、表示デバイス160などに、ステップST15で算出された各角度組み合わせを示す画像を表示する。例えば、プロセッサー110は、図5及び図6と同様の内容を示す画像を表示する。あるいは、プロセッサー110は、文字などによってステップST15で算出された各角度組み合わせを示す画像を表示する。
プロセッサー110は、表示デバイス160と協働して、ステップST16の処理を行うことで、組み合わせを示す画像を表示する表示部の一例として機能する。
ステップST17においてプロセッサー110は、取得命令が方向指示を含むか否かを判定する。プロセッサー110は、取得命令が方向指示を含むならば、ステップST17においてYesと判定してステップST18へと進む。
ステップST18においてプロセッサー110は、取得命令中の方向指示に従い、傾斜面に対して工具を垂直にするための各回転軸の回転方法を決定する。回転方法は、回転方向及び回転角度を含む。プロセッサー110は、移動量が最も少なくなるような回転方法を決定する。
ただし、プロセッサー110は、回転方法を既に決定済みである場合には、回転方法を決定することに代えて、決定済みの回転方法を取得しても良い。
一例として、以下の場合について考える。
回転軸231の角度:0度
回転軸232の角度:0度
取得命令に含まれる方向指示:回転軸231を正方向に回転させる(P1)。
傾斜面301:X1軸に対して30度傾いており、Y1軸と平行(図5及び図6に示す傾斜面301と同一)。
この状態から第1の例の状態にするには、回転軸231を正方向に30度回転させれば良い。回転軸232の回転は不要である。また、この状態から第2の例の状態にするには、回転軸231を正方向に330度回転させ、回転軸232を正方向又は負方向に180度回転させれば良い。
回転軸231を正方向に30度回転させる方が移動量が少ない。したがって、移動量が最も少なくなる回転方法は、以下のようになる。
回転軸231:正方向に30度回転させる。
回転軸232:回転方向はどちらでも良く、0度回転させる(回転させない)。
なお、移動量は、例えば以下の(i)又は(ii)により求める。
(i)各回転軸の回転角度を足し合わせた角度。
(ii)各回転軸の回転角度のうち最も大きい角度。
また、別の一例として、以下の場合について考える。
回転軸231の角度:0度
回転軸232の角度:0度
取得命令に含まれる方向指示:回転軸231を負方向に回転させる(P-1)。
傾斜面301:X1軸と平行、Y1軸に対して20度傾いている。
この場合の角度組み合わせは、組み合わせA1(回転軸231の角度が20度、回転軸232の角度が90度)及び組み合わせA2(回転軸231の角度が-20度、回転軸の角度が-90度)の2つである。
組み合わせA1の状態にするには、回転軸231を負方向に340度回転させ、回転軸232を正方向に90度回転させれば良い。なお、回転軸232を負方向に270度回転させた場合も組み合わせA1の状態となるが、正方向に90度回転させる場合よりも移動量が多くなるため不適である。組み合わせA2の状態にするには、回転軸231を負方向に20度回転させ、回転軸232を負方向に90度回転させれば良い。
回転軸231を負方向に20度回転させ、回転軸232を負方向に90度回転させる方が移動量が少ない。したがって、移動量が最も少なくなる回転方法は、以下のようになる。
回転軸231:負方向に20度回転させる。
回転軸232:負方向に90度回転させる。
一方、プロセッサー110は、取得命令が方向指示を含まないならば、ステップST17においてNoと判定してステップST19へと進む。
プロセッサー110は、決定した回転方法を、対象プログラム及び取得命令と関連付けて記憶する。ここで記憶される回転方法は、決定済みの回転方法である。
例えば、方向位置選択部112がステップST18の処理を実行する。
プロセッサー110は、ステップST18の処理を行うことで、複数の回転軸を算出部によって算出されたいずれかの組み合わせにするために複数の回転軸のそれぞれをどちらの方向に何度回転させるかを、少なくとも1つの回転軸をどちらの方向に回転するかを示す指示に従い、且つ回転軸の回転の移動量又は移動時間が最小となるように決定する決定部の一例として機能する。
ステップST19においてプロセッサー110は、傾斜面に対して工具を垂直にするための各回転軸の回転方法を決定する。プロセッサー110は、移動量が最も少なくなるような回転方法を決定する。ステップST19で決定する回転方法は、ステップST18とは異なり、いずれの回転軸もどちらの方向に回転させても良い。
例えば、位置選択部113がステップST19の処理を実行する。
プロセッサー110は、回転方法が決定済みであるならば、ステップST14においてYesと判定してステップST20へと進む。
ステップST20においてプロセッサー110は、決定済みの回転方法を取得する。当該回転方法は、前回以前の対象プログラムの実行におけるステップST18の処理において記憶された回転方法である。
プロセッサー110は、取得命令が第1垂直命令でないならば、ステップST13においてNoと判定して図3のステップST21へと進む。
ステップST21においてプロセッサー110は、取得命令が第2垂直命令であるか否かを判定する。プロセッサー110は、取得命令が第2垂直命令であるならば、ステップST21においてYesと判定してステップST22へと進む。
ステップST22においてプロセッサー110は、取得命令で指定される垂直情報を取得する。すなわち、プロセッサー110は、第2垂直命令に含まれる参照先を示す情報に基づき、当該参照先から垂直情報を取得する。
垂直情報中の傾斜面向きは、平面の角度の一例である。
プロセッサー110は、ステップST22の処理を行うことで、所定の角度及び指示をテーブルから取得する取得部の一例として機能する。
ステップST23においてプロセッサー110は、取得命令を実行するための回転方法が決定済みであるか否かを判定する。プロセッサー110は、例えば、ステップST22で取得された垂直情報に、決定済みの回転方法が含まれる場合、回転方法が決定済みであると判定する。プロセッサー110は、回転方法が決定済みでないならば、ステップST23においてNoと判定してステップST24へと進む。
ステップST24においてプロセッサー110は、ステップST22で取得された垂直情報中の解斜面原点及び傾斜面向きに従い、角度組み合わせの候補を算出する。また、プロセッサー110は、第2垂直命令に含まれる参照先に、算出した各角度組み合わせを書き込む。プロセッサー110は、例えば、テーブルT1のうち、参照先の行の候補1及び候補2に算出した角度組み合わせを書き込む。
プロセッサー110は、ステップST24の処理を行うことで、工具の向きを変えることが可能な複数の回転軸の、工具が平面に対して所定の角度となるような角度の組み合わせを1つ以上算出する算出部の一例として機能する。
ステップST25においてプロセッサー110は、表示デバイス160などに、ステップST24で算出された各角度組み合わせを示す画像を表示する。例えば、プロセッサー110は、図5及び図6と同様の内容を示す画像を表示する。あるいは、プロセッサー110は、文字などによってステップST24で算出された各角度組み合わせを示す画像を表示する。
プロセッサー110は、表示デバイス160と協働して、ステップST25の処理を行うことで、組み合わせを示す画像を表示する表示部の一例として機能する。
ステップST26においてプロセッサー110は、ステップST22で取得された垂直情報中の方向指示に従い、傾斜面に対して工具を垂直にするための各回転軸の回転方法を決定する。プロセッサー110は、例えば、ステップST18と同様にして回転方法を決定する。
また、プロセッサー110は、決定した回転方法を、第2垂直命令に含まれる参照先に書き込む。テーブルT1のうち、番号が2番の行は、決定した回転方法が書き込み済みの行である。
プロセッサー110は、ステップST26の処理を行うことで、複数の回転軸を算出部によって算出されたいずれかの組み合わせにするために複数の回転軸のそれぞれをどちらの方向に何度回転させるかを、少なくとも1つの回転軸をどちらの方向に回転するかを示す指示に従い、且つ回転軸の回転の移動量又は移動時間が最小となるように決定する決定部の一例として機能する。
プロセッサー110は、回転方法が決定済みであるならば、ステップST23においてYesと判定してステップST27へと進む。
ステップST27においてプロセッサー110は、ステップST22で取得された垂直情報から、決定済みの回転方法を取得する。
プロセッサー110は、図2のステップST18、ステップST19、ステップST20、図3のステップST26又はステップST27の処理の後、ステップST28へと進む。
ステップST28においてプロセッサー110は、取得命令である垂直命令を実行する。なお、プロセッサー110は、図2のステップST18、ステップST19又は図3のステップST26からステップST28へ進んでいる場合、図2のステップST18、ステップST19又は図3のステップST26で決定された回転方法で各回転軸を回転させることで垂直命令を実行する。また、プロセッサー110は、図2のステップST20又は図3のステップST27からステップST28へ進んでいる場合、図2のステップST20又は図3のステップST27で取得された回転方法で各回転軸を回転させることで垂直命令を実行する。
プロセッサー110は、取得命令が第2垂直命令でないならば、ステップST21においてNoと判定してステップST29へと進む。
ステップST29においてプロセッサー110は、取得命令を実行する。
ステップST30においてプロセッサー110は、対象プログラムの実行を終了するか否かを判定する。プロセッサー110は、例えば、取得命令の次に実行する命令が無い場合に対象プログラムの実行を終了すると判定する。あるいは、プロセッサー110は、取得命令の次に実行する命令がプログラムを終了することを示す命令である場合に対象プログラムの実行を終了すると判定する。プロセッサー110は、対象プログラムの実行を終了しないならば、ステップST30においてNoと判定して図2のステップST12へと戻る。対して、プロセッサー110は、対象プログラムの実行を終了するならば、ステップST30においてYesと判定して図2及び図3に示す処理を終了する。
実施形態の数値制御システム1によれば、数値制御装置100は、垂直命令において、回転軸を、方向指示で指示されている方向に回転させることで、傾斜面に対して工具を垂直にする。
NCプログラムの作成者などは、NCプログラム又はテーブルT1などに方向指示を含めることにより、傾斜面に対して工具を垂直にする際の回転軸の回転方向を数値制御装置100に指示することができる。これにより、NCプログラムの作成者などは、工具220などがワーク又は治具などと干渉を起こすことを防ぐことができる。
図7は、工具220及び治具400などの状態の一例を示す図である。図7に示すような状態では、回転軸231を正方向(B1方向)に回転させた場合、工具220は治具400と干渉しない。しかしながら、回転軸231を負方向(B2方向)に回転させた場合、工具220は治具400と干渉する。したがって、NCプログラムの作成者などは、NCプログラム又はテーブルT1などに、方向指示として、回転軸231を正方向に回転させる指示を含める。これにより、実施形態の数値制御装置100は、工具220が治具400と干渉せずに垂直命令を実行可能である。
また、実施形態の数値制御システム1によれば、数値制御装置100は、算出した角度組み合わせを表示デバイス160に表示させる。これにより、作業者などは、どのような角度組み合わせがあるかを確認可能である。
また、実施形態の数値制御システム1によれば、数値制御装置100は、方向指示をテーブルT1などから取得することが可能である。したがって、実施形態の数値制御装置100は、NCプログラムの外部から回転軸をどちらの方向に回転させるか指示することが可能となる。
また、実施形態の数値制御システム1によれば、数値制御装置100は、傾斜面301の位置及び角度をテーブルT1などから取得する。したがって、実施形態の数値制御装置100は、NCプログラムの外部で傾斜面301の位置及び角度を定義することができる。
また、実施形態の数値制御システム1によれば、数値制御装置100は、決定した回転方法を補助記憶装置140などに記憶する。これにより、実施形態の数値制御装置100は、同一のNCプログラムの2回目以降の実行時、回転方法の決定が不要であり、決定済みの回転方法を取得して用いることができる。
上記の実施形態は、以下のような変形も可能である。
上記の実施形態では、数値制御装置100は、工具220を傾斜面301に対して垂直にする。しかしながら、数値制御装置100は、垂直に代えて他の角度を用いても良い。当該他の角度は、所定の角度の一例である。
移動量に代えて移動時間を用いても良い。移動時間は、例えば以下の(iii)又は(iv)により求める。
(iii)各回転軸の((回転角度)÷(回転速度))を足し合わせた時間。
(iv)各回転軸の((回転角度)÷(回転速度))のうち最も長い時間。
プロセッサー110は、上記実施形態においてプログラムによって実現する処理の一部又は全部を、回路のハードウェア構成によって実現するものであっても良い。
実施形態の処理を実現するプログラムは、例えば装置内の非一時的な記録媒体に記憶された状態で譲渡される。しかしながら、当該装置は、当該プログラムが記憶されない状態で譲渡されても良い。そして、当該プログラムが別途に譲渡され、当該装置へと書き込まれても良い。このときのプログラムの譲渡は、例えば、リムーバブルで非一時的な記憶媒体に記録して、あるいはインターネット又はLAN(local area network)などのネットワークを介したダウンロードによって実現できる。
以上、本発明の実施形態を説明したが、例として示したものであり、本発明の範囲を限定するものではない。本発明の実施形態は、本発明の要旨を逸脱しない範囲において種々の態様で実施可能である。
1 数値制御システム
100 数値制御装置
110 プロセッサー
111 プログラム解析部
112 方向位置選択部
113 位置選択部
114 移動制御部
120 ROM
130 RAM
140 補助記憶装置
141 傾斜面情報テーブル
150,210 入力デバイス
160 表示デバイス
170 制御インターフェース
180 バス
200 産業機械
220 工具
230 主軸
231,232 回転軸

Claims (5)

  1. 工具の向きを変えることが可能な複数の回転軸の、前記工具が平面に対して所定の角度となるような角度の組み合わせを1つ以上算出する算出部と、
    前記複数の回転軸を前記算出部によって算出されたいずれかの前記組み合わせにするために前記複数の回転軸のそれぞれをどちらの方向に何度回転させるかを、少なくとも1つの前記回転軸をどちらの方向に回転するかを示す指示、及び前記平面の角度をテーブルから取得する取得部と、
    前記指示に従い、且つ前記回転軸の回転の移動量又は移動時間が最小となるように決定する決定部と、を備え
    前記算出部は、前記テーブルから取得された前記平面の角度を用いて前記組み合わせを算出し、
    前記決定部は、前記テーブルから取得された前記指示を用いて、前記複数の回転軸のそれぞれをどちらの方向に何度回転させるかを決定する、
    処理装置。
  2. 前記組み合わせを示す画像を表示する表示部をさらに備える、請求項1に記載の処理装置。
  3. 前記決定部によって決定された前記複数の回転軸のそれぞれをどちらの方向に何度回転させるかを示す情報を記憶する記憶部をさらに備える、請求項1に記載の処理装置。
  4. 処理装置が備えるプロセッサーを、
    工具の向きを変えることが可能な複数の回転軸の、前記工具が平面に対して所定の角度となるような角度の組み合わせを1つ以上算出する算出部と、
    前記複数の回転軸を前記算出部によって算出されたいずれかの前記組み合わせにするために前記複数の回転軸のそれぞれをどちらの方向に何度回転させるかを、少なくとも1つの前記回転軸をどちらの方向に回転するかを示す指示、及び前記平面の角度をテーブルから取得する取得部と、
    前記指示に従い、且つ前記回転軸の回転の移動量又は移動時間が最小となるように決定する決定部と、して機能させるコンピュータープログラムであって、
    前記算出部は、前記テーブルから取得された前記平面の角度を用いて前記組み合わせを算出し、
    前記決定部は、前記テーブルから取得された前記指示を用いて、前記複数の回転軸のそれぞれをどちらの方向に何度回転させるかを決定する、
    コンピュータープログラム
  5. 処理装置が備えるプロセッサーが、
    工具の向きを変えることが可能な複数の回転軸の、前記工具が平面に対して所定の角度となるような角度の組み合わせを1つ以上算出し、
    前記複数の回転軸を算出されたいずれかの前記組み合わせにするために前記複数の回転軸のそれぞれをどちらの方向に何度回転させるかを、少なくとも1つの前記回転軸をどちらの方向に回転するかを示す指示、及び前記平面の角度をテーブルから取得し、
    前記指示に従い、且つ前記回転軸の回転の移動量又は移動時間が最小となるように決定する、処理方法であって、
    前記角度の組み合わせを1つ以上算出することは、前記テーブルから取得された前記平面の角度を用いて前記組み合わせを算出することを含み、
    前記回転軸の回転の移動量又は移動時間が最小となるように決定することは、前記テーブルから取得された前記指示を用いて、前記複数の回転軸のそれぞれをどちらの方向に何度回転させるかを決定することを含む、
    処理方法
JP2024543611A 2022-08-29 2022-08-29 処理装置、プログラム及び処理方法 Active JP7842229B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2022/032406 WO2024047698A1 (ja) 2022-08-29 2022-08-29 処理装置、プログラム及び処理方法

Publications (2)

Publication Number Publication Date
JPWO2024047698A1 JPWO2024047698A1 (ja) 2024-03-07
JP7842229B2 true JP7842229B2 (ja) 2026-04-07

Family

ID=90099100

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2024543611A Active JP7842229B2 (ja) 2022-08-29 2022-08-29 処理装置、プログラム及び処理方法

Country Status (4)

Country Link
JP (1) JP7842229B2 (ja)
CN (1) CN119744371A (ja)
DE (1) DE112022007343T5 (ja)
WO (1) WO2024047698A1 (ja)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003103481A (ja) 2001-09-28 2003-04-08 Honda Motor Co Ltd 多関節ロボットの姿勢適正化方法および適正化装置
WO2011117915A1 (ja) 2010-03-24 2011-09-29 三菱電機株式会社 数値制御装置及び数値制御方法
JP2019204354A (ja) 2018-05-24 2019-11-28 ファナック株式会社 数値制御装置

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3116129B2 (ja) * 1995-08-07 2000-12-11 株式会社牧野フライス製作所 加工方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003103481A (ja) 2001-09-28 2003-04-08 Honda Motor Co Ltd 多関節ロボットの姿勢適正化方法および適正化装置
WO2011117915A1 (ja) 2010-03-24 2011-09-29 三菱電機株式会社 数値制御装置及び数値制御方法
JP2019204354A (ja) 2018-05-24 2019-11-28 ファナック株式会社 数値制御装置

Also Published As

Publication number Publication date
DE112022007343T5 (de) 2025-03-27
WO2024047698A1 (ja) 2024-03-07
CN119744371A (zh) 2025-04-01
JPWO2024047698A1 (ja) 2024-03-07

Similar Documents

Publication Publication Date Title
JP5458115B2 (ja) 加工経路生成方法及びその装置
JP6320668B1 (ja) 数値制御装置および数値制御方法
EP2833224B1 (en) Workpiece machining surface display method, workpiece machining surface display device, tool path generation device and workpiece machining surface display program
US20200139546A1 (en) Robotic saw and water jet control
JP2019070953A (ja) 加工プログラム処理装置およびこれを備えた多軸加工機
JP7842229B2 (ja) 処理装置、プログラム及び処理方法
US20230286169A1 (en) Numerical control system and robot control method
CN108693831B (zh) 模拟装置、程序生成装置、控制装置及计算机的显示方法
JP2016064497A (ja) データ補正装置、データ補正方法、及び、加工装置
JP2020055082A (ja) ロボット教示装置、ロボット教示方法、及び動作命令を記憶する方法
JPH08229770A (ja) 5軸ncデータの作成方法
CN113946136B (zh) 数控系统的控制方法、数控系统及具有存储功能的装置
JP7733258B1 (ja) 歯車の諸元データの妥当性を判定する判定方法、加工プログラムの生成方法、プログラム、数値制御装置、および、工作機械システム
US20250383647A1 (en) Control device, control system, and program
CN119136953A (zh) 机器人控制装置、数值控制系统及数值控制方法
CN116261695B (zh) 程序生成装置以及机床
JP7762639B2 (ja) 変換用計算機、ncプログラム変換方法、及びncプログラム変換プログラム
US12449786B2 (en) Program analyzer and control system
JP2005031981A (ja) 数値制御装置
WO2026022987A1 (ja) 演算装置、プログラム及び支持システム
WO2026094206A1 (ja) ロボットプログラミング装置
WO2025062629A1 (ja) 数値制御装置及び数値制御システム
WO2026023021A1 (ja) ロボットプログラミング装置
CN119017147A (zh) 多角钻头后刀面磨削方法、装置、数控机和存储介质
WO2026088311A1 (ja) シミュレーション装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20250306

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20251209

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20260128

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20260326

R150 Certificate of patent or registration of utility model

Ref document number: 7842229

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150