JPWO2010095164A1 - 数値制御装置、数値制御装置の制御方法、及びシステムプログラム - Google Patents

数値制御装置、数値制御装置の制御方法、及びシステムプログラム Download PDF

Info

Publication number
JPWO2010095164A1
JPWO2010095164A1 JP2011500353A JP2011500353A JPWO2010095164A1 JP WO2010095164 A1 JPWO2010095164 A1 JP WO2010095164A1 JP 2011500353 A JP2011500353 A JP 2011500353A JP 2011500353 A JP2011500353 A JP 2011500353A JP WO2010095164 A1 JPWO2010095164 A1 JP WO2010095164A1
Authority
JP
Japan
Prior art keywords
command
coordinate system
interpolation
interpolation command
tool
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2011500353A
Other languages
English (en)
Other versions
JP5187436B2 (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.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Publication of JPWO2010095164A1 publication Critical patent/JPWO2010095164A1/ja
Application granted granted Critical
Publication of JP5187436B2 publication Critical patent/JP5187436B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

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/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/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 programme 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 programme, 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
    • 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/41Numerical 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 interpolation, e.g. the computation of intermediate points between programmed end points to define the path to be followed and the rate of travel along that path
    • G05B19/4103Digital interpolation
    • 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/33Director till display
    • G05B2219/33269Convert cartesian to machine coordinates
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02PCLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
    • Y02P90/00Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
    • Y02P90/02Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]

Landscapes

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

Abstract

CPU41は次のブロックを読み込み(S1)、読み込んだブロックが工具先端点制御終了指令「G49」であるか否かを判断する(S2)。工具先端点制御終了指令「G49」であると判断した場合は、工具先端点制御を終了する。工具先端点制御終了指令「G49」でないと判断した場合は、読み込んだブロックが座標系変換指令「P1」であるか否かを判断する(S3)。次に、座標系変換指令「P1」でないと判断した場合は、座標系変換を行うことなく、当該ブロックの指令に従って工具先端点制御を行う(S11)。次に、S1に戻り、S1以下の処理を実行する。座標系変換指令「P1」であると判断した場合は、当該ブロックの非機械座標系上の始点(xs, ys, zs, bs, cs)、終点(xe, ye, ze, be, ce)を、それぞれ機械座標系上の始点(Xs, Ys, Zs, Bs, Cs)、終点(Xe, Ye, Ze, Be, Ce)に変換する(S4)。

Description

本発明は、加工プログラムに基づいて複数の直線移動軸とテーブルを回転させる回転移動軸を少なくとも1軸有する工作機械を制御して、前記テーブルに固定されたワークを工具により加工するための数値制御装置、数値制御装置の制御方法、及び中央処理装置に実行させるためのシステムプログラムに関する。
従来、ワークを固定したテーブルを回転させる回転軸を少なくとも1軸有する工作機械として、複数の直線軸と1軸のテーブル回転軸とを有し、さらに少なくとも1軸のテーブル回転軸または少なくとも1軸の工具回転軸を有するものが知られている。例えば、図1に示すような、互いに直交するX、Y、Z軸の3つの直線軸によって工具2が駆動されるとともに、Y軸周りの回転軸Bによって工具2が回転制御され、さらにZ軸周りの回転軸Cによってテーブル1が制御されることによって、テーブル1に載置固定されたワーク3を加工する5軸加工機が知られている。
そして、テーブル回転軸を少なくとも1軸有する工作機械では、テーブルの回転によって回転されるワークに対して工具が加工プログラムによって指令された軌跡及び速度で移動するのを担保するため、予め工作機械に設定された機械座標系とは異なる座標系上で工具を移動させる場合がある。例えば加工プログラムが指令するワーク上の軌跡及び速度と工具先端点(工具の刃先位置)のワーク上の軌跡及び速度とが一致するように制御される工具先端点制御では、機械座標系の他に、テーブルに固定されテーブルの回転とともに回転するテーブル座標系、又はテーブルの回転とともに回転しないワーク座標系上で工具を移動させる。
例えば特許文献1では、テーブル座標系上で補間を行うことによって、ワーク上に直線を切削加工する工具先端点制御が開示されている。
一般的に数値制御装置は、Gコードと呼ばれる指令のコードを用いて書かれた加工プログラムに従い、X、Y、Z、B、C軸等を駆動するサーボモータを回転させるサーボアンプに指令を与える。加工プログラムに指令される動作は、加工動作と加工動作以外の動作(以下、非加工動作と呼ぶ)の2通りがある。加工動作は工具が直接ワークを切削加工等する動作であり、非加工動作は例えばワークの割り出しのためのテーブル回転軸の位置決めや、ワークに穴を開ける位置まで工具を移動させる動作や、工具をワークへ接近させる動作などがある。
以下の加工プログラムは、工具先端点制御における非加工動作指令の一例であり、ワークの反対側の面を割り出すためのテーブル座標系上のC軸の位置決め指令を示している。なお、説明を簡単にするため、切削加工などの加工指令は示されていない。また、テーブル回転軸であるC軸の位置は、予め0度にあるとする。

<従来の加工プログラム例1>
N100 G28 XYZ :機械原点への復帰
N200 G54 G00 X100. Y100. :ワーク座標系選択、始点への位置決め
N300 G43.4 :工具先端点制御開始
N400 G00 C180. :(テーブル座標系)位置決め
N500 G49 :工具先端点制御終了
上記の「従来の加工プログラム例1」により、工作機械は図2のように動作する。なお、図2はZ軸+方向から見た図であり、テーブル1には図示しないワーク3が載置固定されている。N100のブロックにおいて、「G28」は機械原点への復帰指令のコードであり、図2の(a)に示すように、工具2は機械座標系上の原点(0.0, 0.0, 0.0)にまで移動する。またN200のブロックにおいて、「G54」はワーク座標系選択指令のコードである。N200のブロックにおいて、「G00」は位置決め指令のコードであり、非加工動作時に指令した終点まで工具またはテーブルを速く移動させたい場合に用いられる指令である。したがってN200のブロックは、図2の(b)に示すように、ワーク座標系上の終点(100.0, 100.0, 0.0)まで工具2を移動させる指令である。ここで、図2の太線矢印は工具2の軌跡を示しており、また、便宜のためワーク座標系上の位置(100.0, 100.0, 0.0)はベクトルで示している。そして、N200のブロックの終点は、次のN300のブロックによって開始される工具先端点制御の始点となる。N300のブロックにおいて、「G43.4」は工具先端点制御開始指令のコードであり、以後、工具先端点制御終了指令のコードである「G49」のブロックが読み込まれるまでは、工具先端点制御が実行される。
N400のブロックは、図2の(c)に示すように、位置決め指令コード「G00」によってC軸の終点を180度とし、当該終点までC軸を回転させるテーブル座標系上の位置決め指令である。したがってC軸は始点0度から終点180度まで、180度回転する。このとき、工具2はテーブル1との相対位置を保持しながら、テーブル1のC軸周りの回転に追従するため、太線矢印で示す円弧軌跡上を移動する。N500のブロックにおいて、「G49」は工具先端点制御終了指令のコードであり、工具先端点制御が終了する。
上記「従来の加工プログラム例1」のN400のブロックのように、テーブル座標系上の指令では、テーブル回転軸及び工具先端点を終点まで移動させるためには、テーブル回転軸の終点のみを指令すればよい。したがって加工プログラムの作成が容易である。このように工具先端点制御では、加工動作だけでなく、非加工動作でも、機械座標系とは異なる座標系(以下、非機械座標系と呼ぶ)上の指令がされる場合が多い。
しかしながら、上記のような非機械座標系上の指令がされると、テーブルが回転し、工具先端点は始点から終点まで円弧軌道上を移動するため、工具先端点は始点から終点までを結ぶ直線軌道上を移動しない。このため、加工プログラムを作成する者や工作機械を操作する者にとっては、特に非加工動作時において、テーブルの回転に伴って工具がどのように移動するかを予測することができず、工具がソフトリミットの範囲から逸脱して移動する恐れや、工具が周辺の機器等と干渉する恐れがある。
一方、非加工動作時にはテーブルと工具の相対位置を保持する必要はない。したがって、上記のような問題を解決するためには、工具が始点から終点までを結ぶ直線軌道上を移動すればよい。しかし非機械座標系上の指令で工具を上記のように移動させるためには、上記「従来の加工プログラム例1」のN400のブロックの代わりに、上記直線軌道上の微小線分ごとの位置をそれぞれ終点として指令する複数のブロックに置き換えることができるが、加工プログラムのブロック数が増大してしまう。
また、工具を直線軌道上で移動させるために、「従来の加工プログラム例1」の代わりに以下の加工プログラムを作成することができる。以下の加工プログラムは、工具先端点制御における非加工動作指令の一例であり、機械座標系上のワークの反対側の面を割り出すための工具及びC軸の位置決め指令を示している。

<従来の加工プログラム例2>
N100 G28 XYZ :機械原点への復帰
N200 G54 G00 X100. Y100. :ワーク座標系選択、始点への位置決め
N300 G43.4 :工具先端点制御開始
N400 G53 X-210. Y-150. C180. :(機械座標系)位置決め
N500 G49 :工具先端点制御終了
この「従来の加工プログラム例2」が「従来の加工プログラム例1」と相違する点は、N400のブロックにおいて、「従来の加工プログラム例1」では「G00 C180.」であったが、「従来の加工プログラム例2」では「G53 X-210. Y-150. C180.」であることである。上記の「従来の加工プログラム例2」のN400のブロックにより、工作機械は図3のように動作する。なお、図3はZ軸+方向から見た図であり、テーブル1には図示しないワーク3が載置固定されている。このN400のブロック以外のブロックは同じである。
この「従来の加工プログラム例2」のN400のブロックにおいて、「G53」は機械座標系選択指令のコードである。したがってN400のブロックでは、図3に示すように、位置決め指令コード「G00」によってC軸の終点を180度とし、当該終点までC軸を回転させるとともに、機械座標系上の(-210.0, -150.0, 0.0)にまで工具2を移動させる位置決め指令である。この機械座標系上の(-210.0, -150.0, 0.0)は、「従来の加工プログラム例1」のN400のブロックの工具2の機械座標系上の終点である。したがって「従来の加工プログラム例1」のN400のブロックと「従来の加工プログラム例2」のN400のブロックとは、機械座標系上の始点及び終点が同じであるが、前者は始点から終点まで工具2がテーブル1との相対位置を保持しながら円弧軌道上を移動するのに対し、後者は始点から終点まで工具2がテーブル1との相対位置を保持せずに直線軌道上を移動する。
特開2003-195917号公報
従来の数値制御装置によれば、上記の「従来の加工プログラム例2」のように、テーブル1の回転を伴う機械座標系上の位置決めを指令をする場合、加工プログラムを作成する者が機械座標系上の工具2の終点(-210.0, -150.0, 0.0)を予め求めた上で、求めた終点を当該加工プログラムにおいて指定する必要があるが、当該終点を求めるには手間やコストを要するという問題があった。
上記の課題を解決するために、本発明にかかる数値制御装置は、加工プログラムに基づいて複数の直線移動軸とテーブルを回転させる回転移動軸を少なくとも1軸有する工作機械を制御して、前記テーブルに固定されたワークを工具により加工するための数値制御装置において、中央処理装置と、加工動作にかかる補間指令と予め定義された指令コードが付された非加工動作にかかる非機械座標系上の補間指令とを含む加工プログラムを記録する記録媒体と、前記補間指令に基づいて前記中央処理装置が求めた前記各軸に対応する移動量に従って前記各軸に対応するサーボモータを駆動するサーボアンプと、を備えることを特徴とする。
また、つぎの発明にかかる数値制御装置は、前記指令コードは、前記指令コードが付された前記非加工動作にかかる非機械座標系上の補間指令を機械座標系上の補間指令へ変換することを指令するためのものであることを特徴とする。
また、本発明にかかる数値制御装置の制御方法は、複数の直線移動軸とテーブルを回転させる回転移動軸を少なくとも1軸有する工作機械を制御して、前記テーブルに固定されたワークを工具により加工するための数値制御装置の制御方法において、加工プログラムに含まれる補間指令を読み込む補間指令読込ステップと、前記補間指令読込ステップで読み込まれた補間指令が非加工動作にかかる非機械座標系上の補間指令であるか否かを判断する補間指令判断ステップと、前記補間指令判断ステップにて前記補間指令が非加工動作にかかる非機械座標系上の補間指令でないと判断した場合、前記補間指令に従って前記各移動軸に対応するサーボモータを駆動する第1の駆動ステップと、前記補間指令判断ステップにて前記補間指令が非加工動作にかかる非機械座標系上の補間指令であると判断した場合、前記補間指令を機械座標系上の補間指令へ変換し、前記補間指令における始点座標から終点座標までを、前記工具が直線軌道上を補間により移動するように、前記各移動軸に対応するサーボモータを駆動する第2の駆動ステップと、を備えることを特徴とする。
また、つぎの発明にかかる数値制御装置の制御方法は、前記補間指令判断ステップでは、前記補間指令読込ステップで読み込まれた補間指令に前記補間指令を非機械座標系上の補間指令から機械座標系上の補間指令へ変換する座標系変換指令が付されているか否かを判断することを特徴とする。
また、本発明にかかるシステムプログラムは、加工プログラムに基づいて複数の直線移動軸とテーブルを回転させる回転移動軸を少なくとも1軸有する工作機械を制御して、前記テーブルに固定されたワークを工具により加工するための数値制御装置の中央処理装置に実行させるためのシステムプログラムにおいて、加工プログラムに含まれる補間指令を読み込む補間指令読込ステップと、前記補間指令読込ステップで読み込まれた補間指令に前記補間指令を非機械座標系上の補間指令から機械座標系上の補間指令へ変換する座標系変換指令が付されているか否かを判断する座標系変換指令判断ステップと、前記座標系変換指令判断ステップにて前記補間指令に前記座標系変換指令が付されていないと判断した場合、前記補間指令に従って前記各移動軸に対応する第1の移動量を求める第1の補間ステップと、前記座標系変換指令判断ステップにて前記補間指令に前記座標系変換指令が付されていると判断した場合、前記補間指令を機械座標系上の補間指令に変換し、前記変換された補間指令に従って前記各移動軸に対応する第2の移動量を求める第2の補間ステップと、前記第1の移動量または前記第2の移動量に基づいて対応する前記各移動軸のサーボモータを駆動する駆動ステップと、を前記中央処理装置に実行させることを特徴とする。
また、つぎの発明にかかるシステムプログラムは、前記第2の補間ステップは、前記座標系変換指令が付された補間指令における非機械座標系上の始点座標および終点座標を、それぞれ機械座標系上の始点座標および終点座標に変換することを特徴とする。
また、つぎの発明にかかるシステムプログラムは、前記座標系変換指令が付された補間指令は、非加工動作にかかる非機械座標系上の補間指令であること特徴とする。
本発明は、加工プログラムを実行する過程で、非機械座標系上の指令を機械座標系上の指令へ変換することができるため、加工プログラムの作成者が加工プログラムを作成する際に、テーブルの回転を指令するブロックの機械座標系上の終点を求める必要がなく、工具がソフトリミットの範囲から逸脱して移動する恐れや、工具が周辺の機器等と干渉する恐れの無い加工プログラムを、容易かつ低コストで作成することができる。
5軸加工機の一例を示す図である。 <従来の加工プログラム例1>に従った工作機械の動作説明図である。 <従来の加工プログラム例2>または<本発明の加工プログラム例>に従った工作機械の動作説明図である。 本実施例にかかる数値制御装置40の構成を示すブロック図である。 本実施例にかかる数値制御装置40の動作を示すフローチャートである。
符号の説明
1 テーブル
2 工具
3 ワーク
40 数値制御装置
41 CPU
42 ROM
43 加工プログラム記憶部
50〜54 移動量出力部
60〜64 サーボアンプ
本発明に係る第1の実施例を、図4及び図5を参照して説明する。図4は、本実施例にかかる数値制御装置40の構成を示すブロック図である。図5は、本実施例にかかる数値制御装置40の動作を示すフローチャートである。
図4において、40は数値制御装置である。CPU(Central Processing Unit)41は、ROM(Read-Only Memory)42に格納されたシステム・プログラムをバス45を介して読み出し、当該システム・プログラムに従って数値制御装置40全体を制御する。記録媒体であるRAM(Random-Access Memory)で構成される加工プログラム記憶部43は、I/F(Interface)部44または手動データ入力装置46を介して入力された加工プログラム等を記憶する。I/F部44は、数値制御装置40とFCA(Fiber Cable Adapter)等の外部機器45との間の接続を可能にする。CRT/MDI(Cathode Ray Tube / Multiple Document Interface)等の手動データ入力装置46は、ディスプレイやキーボード等を備えている。
加工プログラムは、例えば以下のようなものが入力される。以下の加工プログラムは、工具先端点制御における非加工動作指令の一例であり、座標系変換指令およびワークの反対側の面を割り出すためのC軸の位置決め指令を示している。なお、説明を簡単にするため、切削加工などの加工指令は示されていない。また、テーブル回転軸であるC軸の位置は、予め0度にあるとする。

<本発明の加工プログラム例>
N100 G28 XYZ :機械原点への復帰
N200 G54 G00 X100. Y100. :ワーク座標系選択、始点への位置決め
N300 G43.4 :工具先端点制御開始
N400 G00 C180. P1 :位置決め、座標系変換
N500 G49 :工具先端点制御終了
この「本発明の加工プログラム例」が「従来の加工プログラム例1」および「従来の加工プログラム例2」と相違する点は、N400のブロックにおいて、「従来の加工プログラム例1」では「G00 C180.」であり、「従来の加工プログラム例2」では「G53 X-210. Y-150. C180.」であったが、「本発明の加工プログラム例」では「G00 C180. P1」であることである。上記の「本発明の加工プログラム例」のN400のブロックにより、工作機械は図3のように動作する。このN400のブロック以外のブロックは同じである。
この「本発明の加工プログラム例」のN400のブロックにおいて、指令コードである「P1」は非機械座標系上の指令を機械座標系上の指令に変換する座標系変換指令のコードである。N400のブロックでは、C軸の終点を180度とし、当該終点までC軸を回転させるテーブル座標系上の位置決め指令「G00 C180.」が、機械座標系上の指令に変換される。
図4において、それぞれX、Y、Z、B、C軸に対応する移動量出力部50〜54は、CPU41が求める工具2及びテーブル1の現在位置から補間点位置までの移動量を、それぞれサーボアンプ60〜64に出力する。各軸に対応するサーボアンプ60〜64は、移動量出力部50〜54が出力する移動量に従ってそれぞれ各軸のサーボモータ70〜74を回転させる。各軸に対応するサーボモータ70〜74は、それぞれ工作機械のX、Y、Z、B、C軸を駆動する。また、主軸速度出力部55は、CPU41が指令する指令回転速度を主軸アンプ65に出力する。主軸モータ75は、主軸アンプ65が出力する指令回転速度に従って主軸モータ75を回転させる。主軸モータ75は、工具2の主軸2aを回転させる。
次に、数値制御装置40の動作を説明する。CPU41は、加工プログラム記憶部43に記憶された加工プログラムを1ブロックずつ読み、読み込んだブロックが工具先端点制御開始指令「G43.4」であるか否かを判断する。工具先端点制御開始指令「G43.4」でないと判断した場合は、当該ブロックの指令に従って工具先端点制御以外の制御、例えば機械原点への復帰、始点への位置決め、ワーク設置誤差補正などの制御を行う。
工具先端点制御開始指令「G43.4」であると判断したは場合は、図5に示す処理を行う。図5は、CPU41が工具先端点制御開始指令「G43.4」を読み込んだ後に行われる処理を示すフローチャートである。まず、CPU41は次のブロックを読み込み(S1)、読み込んだブロックが工具先端点制御終了指令「G49」であるか否かを判断する(S2)。工具先端点制御終了指令「G49」であると判断した場合は、工具先端点制御を終了する。工具先端点制御終了指令「G49」でないと判断した場合は、読み込んだブロックが座標系変換指令「P1」であるか否かを判断する(S3)。
次に、座標系変換指令「P1」でないと判断した場合は、座標系変換を行うことなく、当該ブロックの指令に従って工具先端点制御を行う(S11)。次に、S1に戻り、S1以下の処理を実行する。座標系変換指令「P1」であると判断した場合は、当該ブロックの非機械座標系上の始点(xs, ys, zs, bs, cs)、終点(xe, ye, ze, be, ce)を、それぞれ機械座標系上の始点(Xs, Ys, Zs, Bs, Cs)、終点(Xe, Ye, Ze, Be, Ce)に変換する(S4)。この非機械座標系上の座標を機械座標系上の座標に変換する方法は、従来から行われていた方法(例えば、特許文献1の式(18)〜(20))と同じものでよい。
例えば、「本発明の加工プログラム例」のN400のブロックにおける座標系変換の手順は次のとおりである。まず、テーブル座標系上の始点(100.0, 100.0, 0.0, 0.0, 0.0)を、機械座標系上の始点(-90.0, -50.0, 0.0, 0.0, 0.0)に変換する。次に、テーブル座標系上の終点(100.0, 100.0, 0.0, 0.0, 180.0)を、機械座標系上の始点(-90.0, -50.0, 0.0, 0.0, 0.0)を機械座標系上のC軸の位置(-150.0, -100.0, 0.0)を回転の中心として180度回転させた後の、機械座標系上の終点(-210.0, -150.0, 0.0, 0.0, 180.0)に変換する。したがって、N400のブロックでは、工具2は「従来の加工プログラム例2」のN400のブロックと同様に、図3の太線矢印に示す直線軌跡上を移動する。
次に、求めた機械座標系上の始点(Xs, Ys, Zs, Bs, Cs)、終点(Xe, Ye, Ze, Be, Ce)に基づいて、当該ブロックの全移動量たるブロック長Lを求める(S5)。ブロック長Lは、機械座標系上の始点(Xs, Ys, Zs, Bs, Cs)と終点(Xe, Ye, Ze, Be, Ce)とを結んだ線分の長さであり、以下の式で求めることができる。
Figure 2010095164
次に、時刻t=0における工具先端点及びテーブルの位置{X(0), Y(0), Z(0), B(0), C(0)}を、始点(Xs, Ys, Zs, Bs, Cs)として、以下のように設定する(S6)。
Figure 2010095164
次に、補間周期Δt毎に、現在時刻から補間周期Δt後の工具先端点の補間点位置を以下の式で求める(S7)。以下の式は、現在時刻tにおける現在位置{X(t), Y(t), Z(t), B(t), C(t)}と、現在時刻tから補間周期Δt後の補間時刻t+1における工具先端点の補間点位置{X(t+1), Y(t+1), Z(t+1), B(t+1), C(t+1)}との関係を表すものである。Fはワーク3に対する工具先端点の指令相対速度である。
Figure 2010095164
次に、現在時刻tから時刻t+1までの移動量である、上記式の時刻t+1における補間点位置{X(t+1), Y(t+1), Z(t+1), B(t+1), C(t+1)}から現在時刻tにおける現在位置{X(t), Y(t), Z(t), B(t), C(t)}を減じた各軸に対応する差分を、それぞれ各軸のサーボアンプ60〜64に出力する(S8)。次に、位置{X(t+1), Y(t+1), Z(t+1), B(t+1), C(t+1)}を現在位置{X(t), Y(t), Z(t), B(t), C(t)}として記憶し(S9)、工具先端点が当該ブロックの終点(Xe, Ye, Ze, Be, Ce)まで達したか否かをチェックする(S10)。ここでは、例えば以下の式が成り立つか否かをチェックする。
Figure 2010095164
S10において、終点(Xe, Ye, Ze, Be, Ce)まで達したと判断した場合は、次にS1に戻り、S1以下の処理を実行する。
なお、本実施例では、工具先端点制御におけるテーブル座標系上の指令から機械座標系上の指令への変換について説明したが、工具先端点制御におけるワーク座標系上の指令から機械座標系上の指令への変換を行うようにしてもよい。また、非機械座標系上の指令から機械座標系上の指令への変換は、工具先端点制御ではなく、例えばワーク設置誤差補正などの、テーブル回転軸を少なくとも1軸有する工作機械によるいかなる制御にて行うようにしてもよい。
また、本実施例では、座標系変換指令のコードとして「P1」を用いたが、指令コードはこれに限られない。例えば、新規のGコードにより指令してもよいし、アドレスを引数として渡すことにより指令するようにしてもよいし、パラメータを用いて指令するようにしてもよい。また、例えば「G00」の指令コードでは常に機械座標系で補間するようにしてもよい。すなわち、「G00」が機械座標系上の指令として与えられたブロックについては座標系変換を行わずに当該ブロックの指令に従った処理を行い、「G00」が非機械座標系上の指令として与えられたブロックについては当該指令を機械座標系へ変換した上で当該指令に従った処理を行うようにすることができる。
また、本実施例では、数値制御装置が加工プログラムを実行中に座標系変換を行う場合について説明しているが、入力された加工プログラムの座標系変換を予め行った上で当該座標系変換済みの加工プログラムを記憶しておき、実際に加工を行う際には、当該入力された加工プログラムの代わりに当該座標系変換済みの加工プログラムを実行するようにしてもよい。これによって加工プログラム実行中における数値制御装置の処理を一部削減することができる。
本実施例によれば、数値制御装置のCPUが加工プログラムを実行する過程で、非機械座標系上の指令を機械座標系上の指令へ変換することができるため、加工プログラムの作成者が加工プログラムを作成する際に、テーブルの回転を指令するブロックの機械座標系上の終点を求める必要がなく、工具がソフトリミットの範囲から逸脱して移動する恐れや、工具が周辺の機器等と干渉する恐れの無い加工プログラムを、容易かつ低コストで作成することができる。

Claims (7)

  1. 加工プログラムに基づいて複数の直線移動軸とテーブルを回転させる回転移動軸を少なくとも1軸有する工作機械を制御して、前記テーブルに固定されたワークを工具により加工するための数値制御装置において、
    中央処理装置と、
    加工動作にかかる補間指令と予め定義された指令コードが付された非加工動作にかかる非機械座標系上の補間指令とを含む加工プログラムを記録する記録媒体と、
    前記補間指令に基づいて前記中央処理装置が求めた前記各軸に対応する移動量に従って前記各軸に対応するサーボモータを駆動するサーボアンプと、
    を備えることを特徴とする数値制御装置。
  2. 前記指令コードは、前記指令コードが付された前記非加工動作にかかる非機械座標系上の補間指令を機械座標系上の補間指令へ変換することを指令するためのものであることを特徴とする請求項1記載の数値制御装置。
  3. 複数の直線移動軸とテーブルを回転させる回転移動軸を少なくとも1軸有する工作機械を制御して、前記テーブルに固定されたワークを工具により加工するための数値制御装置の制御方法において、
    加工プログラムに含まれる補間指令を読み込む補間指令読込ステップと、
    前記補間指令読込ステップで読み込まれた補間指令が非加工動作にかかる非機械座標系上の補間指令であるか否かを判断する補間指令判断ステップと、
    前記補間指令判断ステップにて前記補間指令が非加工動作にかかる非機械座標系上の補間指令でないと判断した場合、前記補間指令に従って前記各移動軸に対応するサーボモータを駆動する第1の駆動ステップと、
    前記補間指令判断ステップにて前記補間指令が非加工動作にかかる非機械座標系上の補間指令であると判断した場合、前記補間指令を機械座標系上の補間指令へ変換し、前記補間指令における始点座標から終点座標までを、前記工具が直線軌道上を補間により移動するように、前記各移動軸に対応するサーボモータを駆動する第2の駆動ステップと、
    を備えることを特徴とする数値制御装置の制御方法。
  4. 前記補間指令判断ステップでは、前記補間指令読込ステップで読み込まれた補間指令に前記補間指令を非機械座標系上の補間指令から機械座標系上の補間指令へ変換する座標系変換指令が付されているか否かを判断することを特徴とする請求項3記載の数値制御装置の制御方法。
  5. 加工プログラムに基づいて複数の直線移動軸とテーブルを回転させる回転移動軸を少なくとも1軸有する工作機械を制御して、前記テーブルに固定されたワークを工具により加工するための数値制御装置の中央処理装置に実行させるためのシステムプログラムにおいて、
    加工プログラムに含まれる補間指令を読み込む補間指令読込ステップと、
    前記補間指令読込ステップで読み込まれた補間指令に前記補間指令を非機械座標系上の補間指令から機械座標系上の補間指令へ変換する座標系変換指令が付されているか否かを判断する座標系変換指令判断ステップと、
    前記座標系変換指令判断ステップにて前記補間指令に前記座標系変換指令が付されていないと判断した場合、前記補間指令に従って前記各移動軸に対応する第1の移動量を求める第1の補間ステップと、
    前記座標系変換指令判断ステップにて前記補間指令に前記座標系変換指令が付されていると判断した場合、前記補間指令を機械座標系上の補間指令に変換し、前記変換された補間指令に従って前記各移動軸に対応する第2の移動量を求める第2の補間ステップと、
    前記第1の移動量または前記第2の移動量に基づいて対応する前記各移動軸のサーボモータを駆動する駆動ステップと、
    を前記中央処理装置に実行させることを特徴とするシステムプログラム。
  6. 前記第2の補間ステップは、前記座標系変換指令が付された補間指令における非機械座標系上の始点座標および終点座標を、それぞれ機械座標系上の始点座標および終点座標に変換することを特徴とする請求項5記載のシステムプログラム。
  7. 前記座標系変換指令が付された補間指令は、非加工動作にかかる非機械座標系上の補間指令であること特徴とする請求項5または6に記載のシステムプログラム。
JP2011500353A 2009-02-17 2009-02-17 数値制御装置、数値制御装置の制御方法、及びシステムプログラム Active JP5187436B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2009/000628 WO2010095164A1 (ja) 2009-02-17 2009-02-17 数値制御装置、数値制御装置の制御方法、及びシステムプログラム

Publications (2)

Publication Number Publication Date
JPWO2010095164A1 true JPWO2010095164A1 (ja) 2012-08-16
JP5187436B2 JP5187436B2 (ja) 2013-04-24

Family

ID=42633471

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011500353A Active JP5187436B2 (ja) 2009-02-17 2009-02-17 数値制御装置、数値制御装置の制御方法、及びシステムプログラム

Country Status (5)

Country Link
US (1) US8831768B2 (ja)
JP (1) JP5187436B2 (ja)
CN (1) CN102301292B (ja)
DE (1) DE112009004583B4 (ja)
WO (1) WO2010095164A1 (ja)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5202735B2 (ja) * 2009-06-03 2013-06-05 三菱電機株式会社 数値制御装置
JP5037704B2 (ja) * 2011-01-26 2012-10-03 ファナック株式会社 3軸加工機用ワーク設置誤差補正部を有する数値制御装置
CN105247432B (zh) * 2013-06-03 2017-06-09 三菱电机株式会社 频率响应测定装置
JP5800886B2 (ja) * 2013-12-16 2015-10-28 ファナック株式会社 単一指令で複数の軸に指令を与える数値制御装置
JP6250887B2 (ja) 2014-07-22 2017-12-20 ファナック株式会社 左手座標系対応の数値制御装置
CN104238460A (zh) * 2014-08-29 2014-12-24 北京配天技术有限公司 一种工件的协同加工方法、系统及协同控制方法、装置
JP6487490B2 (ja) * 2017-05-11 2019-03-20 ファナック株式会社 数値制御装置
CN116400647B (zh) * 2023-06-08 2023-09-29 成都飞机工业(集团)有限责任公司 多轴插补运动控制方法、装置、存储介质及电子设备

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4150328A (en) * 1977-09-14 1979-04-17 Dana Corporation Apparatus and method for controlling a machine tool along a circular path
US4493032A (en) * 1982-09-07 1985-01-08 General Electric Company Method and apparatus for positioning using circular interpolation
JP2897333B2 (ja) * 1990-04-11 1999-05-31 ブラザー工業株式会社 サーボ制御装置
JP2773517B2 (ja) 1992-02-27 1998-07-09 三菱電機株式会社 プログラム表示装置
JPH09120310A (ja) 1995-10-24 1997-05-06 Fanuc Ltd 軸移動方法及び軸移動方式
JP3086172B2 (ja) 1996-05-24 2000-09-11 株式会社不二越 産業用ロボットの制御装置
DE60230009D1 (de) 2001-10-16 2009-01-08 Fanuc Ltd Numerische Steuerung
JP3643098B2 (ja) 2001-10-16 2005-04-27 ファナック株式会社 数値制御装置
CN1630838B (zh) * 2002-02-07 2010-05-26 三菱电机株式会社 数值控制方法及数值控制系统
CN1540469A (zh) * 2003-10-28 2004-10-27 华北电力大学 一种用于数控机床的三坐标圆弧插补方法及装置
JP2006072909A (ja) 2004-09-06 2006-03-16 Fanuc Ltd 数値制御装置
US8131396B2 (en) * 2007-04-26 2012-03-06 Mitsubishi Electric Corporation Numerical control apparatus and numerical control system
US8478438B2 (en) * 2008-09-16 2013-07-02 Shin Nippon Koki Co., Ltd. Numerical control device

Also Published As

Publication number Publication date
DE112009004583T5 (de) 2012-08-16
WO2010095164A1 (ja) 2010-08-26
JP5187436B2 (ja) 2013-04-24
CN102301292B (zh) 2014-09-24
CN102301292A (zh) 2011-12-28
US20110238204A1 (en) 2011-09-29
DE112009004583B4 (de) 2018-06-14
US8831768B2 (en) 2014-09-09

Similar Documents

Publication Publication Date Title
JP5187436B2 (ja) 数値制御装置、数値制御装置の制御方法、及びシステムプログラム
JP6644630B2 (ja) 加工プログラム処理装置およびこれを備えた多軸加工機
JP5220183B2 (ja) 数値制御装置および当該数値制御装置の制御方法
JP4975872B1 (ja) 多軸加工機用速度制御機能を有する数値制御装置
JP4837110B2 (ja) 工具軌跡表示機能を有する数値制御装置
JP5037704B2 (ja) 3軸加工機用ワーク設置誤差補正部を有する数値制御装置
JP4291386B2 (ja) ワーク設置誤差補正手段を有する数値制御装置
US9304503B2 (en) Numerical control device configured to reduce a machining cycle time of a machine tool that does not move along Y-axis
JP6450732B2 (ja) 数値制御装置
JP4503659B2 (ja) 座標変換工具位相制御用数値制御装置
JP6320668B1 (ja) 数値制御装置および数値制御方法
US9529352B2 (en) Numerical control device
JP3650027B2 (ja) Nc加工支援方法及び装置
JP2019070953A (ja) 加工プログラム処理装置およびこれを備えた多軸加工機
US10073432B2 (en) Numerical controller having tool tip point control function
JP2010247246A (ja) 数値制御装置
TWI684841B (zh) 加工傾斜平面的多軸工具機的程式碼產生方法及其裝置
JP5020579B2 (ja) 数値制御装置
CN105278463A (zh) 基于表形式数据进行运转的数值控制装置
JP2019185467A (ja) 設定装置及び設定プログラム
JP4734440B2 (ja) 4軸加工機用数値制御装置
US10539945B2 (en) Numerical controller
JP4734439B2 (ja) 4軸加工機用数値制御装置
JP7401665B2 (ja) 数値制御装置及び制御方法
CN111190391B (zh) 数值控制装置

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20121009

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20121130

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130107

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20160201

Year of fee payment: 3

R151 Written notification of patent or utility model registration

Ref document number: 5187436

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20160201

Year of fee payment: 3

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250