JP4902816B1 - 数値制御装置 - Google Patents

数値制御装置 Download PDF

Info

Publication number
JP4902816B1
JP4902816B1 JP2011525344A JP2011525344A JP4902816B1 JP 4902816 B1 JP4902816 B1 JP 4902816B1 JP 2011525344 A JP2011525344 A JP 2011525344A JP 2011525344 A JP2011525344 A JP 2011525344A JP 4902816 B1 JP4902816 B1 JP 4902816B1
Authority
JP
Japan
Prior art keywords
axis
unit
virtual
command
coordinate system
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
JP2011525344A
Other languages
English (en)
Other versions
JPWO2012101790A1 (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
Application granted granted Critical
Publication of JP4902816B1 publication Critical patent/JP4902816B1/ja
Publication of JPWO2012101790A1 publication Critical patent/JPWO2012101790A1/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/4097Numerical 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 using design data to control NC machines, e.g. CAD/CAM
    • G05B19/4099Surface or curve machining, making 3D objects, e.g. desktop manufacturing
    • 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/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 programme data in numerical form characterised by monitoring or safety
    • G05B19/4067Restoring data or position after power failure or other interruption
    • 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/33131Synthesize programmable axis, to simulate a non existing, virtual axis
    • 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/50104Before restarting program, restore machine status existing at stop time

Landscapes

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

Abstract

数値制御装置は、複数の工具が取り付けられるタレットを移動させるX軸と、前記タレットを回転させるH軸と、ワークを回転させるC軸とを有し、前記X軸に直交するY軸を有さない工作機械を制御する数値制御装置であって、プログラム座標系で記述された加工プログラム中のX−Y軸移動指令をX−H−C軸からなる機械座標系での指令に変換し、変換した指令に従ってX軸、H軸およびC軸を連動駆動する仮想Y軸制御モードを実行する仮想Y軸制御部と、前記仮想Y軸制御モード中に非常停止が発生した場合、非常停止が解除されたときの前記X軸、C軸およびH軸の現在の位置を取得する取得部と、前記取得したX軸、C軸およびH軸の現在の位置から前記プログラム座標系での現在のX軸座標位置およびY軸座標位置を復元する復元部とを備えている。
【選択図】図2

Description

本発明は、数値制御装置に関する。
特許文献1には、Y軸を持たないNCターレット旋盤が記載されている。NCターレット旋盤は、ワークの送り動作を行うZ軸と、ワークの回転を行うC軸と、Z軸に垂直な軸であって工具ターレットの送り動作を行うX軸と、工具ターレットの回転を行うターレット回転軸とを有しているが、Z軸及びX軸に垂直なY軸を有していない。このようなNCターレット旋盤において、C軸の回転とターレット回転軸の回転とを結合させて行い、工具のワークに対するY軸方向の送り動作を生起するものとされている。これにより、特許文献1によれば、Y軸を持たないNCターレット旋盤を用いて、あたかもY軸を有しているかのように機械加工作用を実行できるとされている。
特公平3−33441号公報
あたかもY軸を有しているかのように機械加工を行うための制御、すなわち仮想Y軸制御では、工作機械が工具でワークを加工している途中に、工作機械が非常停止された場合、仮想Y軸制御がキャンセルされる。その後、工作機械の非常停止が解除されたとしても、工具がワーク内に入り込んだ状態になっている場合、仮想Y軸制御がキャンセルされているため、X軸方向に工具を動かしながらそれに同期させてタレット及びワークを回転させることが困難である。すなわち、工作機械を非常停止前の状態に戻すために、工具をワークから引き抜くことが困難であり、無理やり工具をワークから引き抜こうとすると工具を破損させる可能性がある。
また、工具がワーク内に入り込んだ状態になっていない場合でも、工作機械が非常停止されると、仮想Y軸制御がキャンセルされるとともに、タレット及びワークの駆動がサーボオフ状態になるため、タレットやワークが自重で動いてしまう。これにより、工作機械の非常停止直前におけるタレットやワークの座標を把握することが困難になる。すなわち、工作機械を非常停止前の状態に戻すために、工作機械におけるタレットやワークを非常停止直前の位置に復帰させることが困難である。さらに、工作機械の非常停止時に実行していた加工を工作機械の非常停止が解除された後に再開させることも困難である。
本発明は、上記に鑑みてなされたものであって、工作機械を非常停止前の状態に戻すことができる数値制御装置を得ることを目的とする。
上述した課題を解決し、目的を達成するために、本発明の1つの側面にかかる数値制御装置は、複数の工具が取り付けられるタレットを移動させるX軸と、前記タレットを回転させるH軸と、ワークを回転させるC軸とを有し、前記X軸に直交するY軸を有さない工作機械を制御する数値制御装置であって、プログラム座標系で記述された加工プログラム中のX−Y軸移動指令をX−H−C軸からなる機械座標系での指令に変換し、変換した指令に従ってX軸、H軸およびC軸を連動駆動する仮想Y軸制御モードを実行する仮想Y軸制御部と、前記仮想Y軸制御モード中に非常停止が発生した場合、非常停止が解除されたときの前記X軸、C軸およびH軸の現在の位置を取得する取得部と、前記取得したX軸、C軸およびH軸の現在の位置から前記プログラム座標系での現在のX軸座標位置およびY軸座標位置を復元する復元部とを備えたことを特徴とする。
本発明によれば、プログラム座標系における現在のX軸及びY軸の座標位置を復元するので、プログラム座標系上で工作機械を非常停止前の状態に戻すように指令することができる。したがって、工作機械を非常停止前の状態に戻すことができる。
図1は、実施の形態1における工作機械の外観構成を示す図である。 図2は、実施の形態1にかかる数値制御装置の構成を示す図である。 図3は、実施の形態1にかかる数値制御装置の通常時の動作を示すフローチャートである。 図4は、実施の形態1における数値制御装置の非常停止時の動作を示すフローチャートである。 図5は、実施の形態1における工作機械の非常停止時の動作を示す図である。 図6は、実施の形態1における工作機械の非常停止時の動作を示す図である。 図7は、実施の形態1における運転モード信号を示す図である。 図8は、実施の形態1における工作機械の非常停止解除後の動作を示す図である。 図9は、実施の形態2にかかる数値制御装置の構成を示す図である。 図10は、実施の形態2における数値制御装置の非常停止時の動作を示すフローチャートである。 図11は、実施の形態2における工作機械の非常停止時の動作を示す図である。 図12は、実施の形態2における加工プログラムを示す図である。 図13は、比較例にかかる数値制御装置の構成を示す図である。 図14は、比較例における工作機械の非常停止時の動作を示す図である。 図15は、比較例における工作機械の非常停止時の動作を示す図である。
以下に、本発明にかかる数値制御装置の実施の形態を図面に基づいて詳細に説明する。なお、これらの実施の形態によりこの発明が限定されるものではない。
実施の形態1.
実施の形態1にかかる数値制御装置1の概略構成について図1及び図2を用いて説明する。図1(a)及び図1(b)は、それぞれ、数値制御装置1により制御される工作機械900の外観構成を示す斜視図及び正面図である。図2は、数値制御装置1の構成を示すブロック図である。
工作機械900は、図1(a)、(b)に示すように、タレット905、及びワーク支持部906を有する。工作機械900は、X軸、Z軸、H軸、及びC軸を有する。X軸は、タレット905を移動させる移動軸である。Z軸は、ワークWを移動させる移動軸である。H軸は、タレット905を回転させることで、工具9051、9052を旋回させる回転軸である。C軸は、ワークWを回転させる回転軸である。
なお、図1には、X軸、Z軸に垂直なY軸を破線で図示している。Y軸はユーザが作成する加工プログラム343中の仮想Y軸制御モード内で使用される仮想的な移動軸である。ユーザは、仮想Y軸制御モード内では、X軸、Y軸、H軸およびC軸の座標位置を指定して所要の加工プログラム343を作成する。本実施形態では、仮想Y軸制御モード中、Z軸の指定はなされない。ユーザは、H軸、C軸の回転を考慮することなく、例えば、工具方向と仮想平面X軸が一致した状態を想定してX−Y座標などを指定することによって加工プログラム343を作成する。加工プログラム343において、例えば、X軸指令は「X20」、Y軸指令は「Y50」、C軸指令は「C180」、H軸指令は「T1111」というように記述される(図12参照)。
工作機械900は、図2に示すように、さらに、X軸、H軸、Z軸、C軸サーボモータ901、902、903、904を有する。X軸サーボモータ901、H軸サーボモータ902は、タレット905に対して、X軸の移動、H軸の回転を行う。Z軸サーボモータ903、C軸サーボモータ904は、ワーク支持部906に対して、Z軸の移動、C軸の回転を行う。
数値制御装置1は、表示部10、入力操作部20、制御演算部30、及び駆動部90を備える。例えば、ユーザによる加工プログラム343の自動起動ボタンの操作に応じて、加工プログラム343の自動起動の信号が制御演算部30へ供給される。これに応じて、制御演算部30は、加工プログラム343を起動して、加工プログラム343に従い、X軸の移動量指令、H軸の回転量指令、Z軸の移動量指令、C軸の回転量指令を生成して駆動部90へ供給する。駆動部90は、X軸サーボ制御部91、H軸サーボ制御部92、Z軸サーボ制御部93、C軸サーボ制御部94を有し、制御演算部30から入力されたX軸の移動量指令、H軸の回転量指令、Z軸の移動量指令、C軸の回転量指令に従い、X軸サーボモータ901、H軸サーボモータ902、Z軸サーボモータ903、C軸サーボモータ904を駆動する。また、制御演算部30は、X軸位置センサ95、H軸位置センサ96、Z軸位置センサ97、C軸位置センサ98から、駆動部90経由でフィードバック位置データ(FB位置データ:位置センサのデータから構築される機械座標系におけるX軸、H軸、Z軸、C軸の座標位置)を受ける。
制御演算部30は、PLC36、機械制御信号処理部35、記憶部34、解析処理部37、補間処理部38、仮想Y軸制御切換処理部39、スイッチ44、加減速処理部43、仮想Y軸制御部41、軸データ入出力部42、入力制御部32、画面処理部31、及びデータ設定部33を有する。
加工プログラム343の自動起動の信号は、PLC36経由で機械制御信号処理部35に入力される。機械制御信号処理部35は、記憶部34経由で解析処理部37に指示して加工プログラム343を起動させる。
記憶部34は、記憶部34a〜34cを有する。記憶部34a、記憶部34b、記憶部34cは、それぞれ、非常停止時プログラム座標メモ346、H軸・C軸単独指令メモ348、加工プログラム343を記憶する。なお、非常停止時プログラム座標メモ346及びH軸・C軸単独指令メモ348のそれぞれ詳細は後述する。また、記憶部34は、工具補正データ342、加工プログラム343、画面表示データ344を記憶するとともに、ワークスペースとしての共有エリア345を有している。
解析処理部37は、加工プログラム343の起動指示に応じて、記憶部34から加工プログラム343を読み出し、加工プログラム343の各ブロック(各行)について解析処理を行う。解析処理部37は、解析したブロック(行)にMコード(例えば、図12に示すMコード「M111」)が含まれていれば、その解析結果を記憶部34、機械制御信号処理部35経由でPLC36へ渡す。解析処理部37は、解析した行にMコード以外のコード(例えば、図12に示すGコード「G01」)が含まれていれば、その解析結果に記憶部34の工具補正データ342から読み出された工具補正量(Tx、Ty)を加味して補間処理部38へ渡す。
PLC36は、解析結果(例えば、図12に示すMコード「M111」)を受けた場合、仮想Y軸制御モードONのMコードの通知を受けて仮想Y軸制御モード信号をONする。機械制御信号処理部35内の仮想Y軸制御モード信号処理部351は、仮想Y軸制御モード信号をチェックして記憶部34の共有エリア345に一時記憶させる。これにより、数値制御装置1では、仮想Y軸制御モードが開始され、各部が共有エリア345の仮想Y軸制御モード信号(ON状態)を参照することにより仮想Y軸制御モード中であることを認識する。PLC36が仮想Y軸制御モードOFFのMコード解析結果(例えば、図12に示すMコード「M101」)を受けた場合、機械制御信号処理部35内の仮想Y軸制御モード信号処理部351は、仮想Y軸制御モード信号をOFF状態にして共有エリア345に一時記憶させる。これにより、数値制御装置1では、仮想Y軸制御モードがキャンセルされ、仮想Y軸制御モード以外の通常の制御モードになる。
補間処理部38は、解析処理部37から解析結果(位置指令)を受け取り、解析結果(位置指令)に対する補間処理を行い、補間処理の結果(移動量、回転量)を加減速処理部43へ供給する。
加減速処理部43は、補間処理部38から供給された補間処理の結果に対して加減速処理を行う。加減速処理部43は、X軸、Y軸、C軸、H軸に関する加減速処理結果をスイッチ44に出力し、Z軸に関する加減速処理結果を軸データ入出力部軸データ入出力部42に直接出力する。
スイッチ44は、仮想Y軸制御切換処理部39からの切り替え信号に基づき加減速処理結果を仮想Y軸制御部41、軸データ入出力部42の何れかに出力する。仮想Y軸制御切換処理部39は、共有エリア345の仮想Y軸制御モード信号がONになっている仮想Y軸制御モードにおいて、加減速処理部43と仮想Y軸制御部41とを接続するようにスイッチ44を切り換え、共有エリア345の仮想Y軸制御モード信号がOFFになっている仮想Y軸制御モード以外の制御モードにおいて、加減速処理部43と軸データ入出力部42とを接続するようにスイッチ44を切り換える。
仮想Y軸制御部41は、仮想Y軸制御モードでの制御処理を実行する。具体的には、加減速処理されたX軸、Y軸、C軸、H軸指令をX軸、C軸、H軸指令に変換し、変換したX軸、C軸、H軸指令を軸データ入出力部42に入力する。仮想Y軸制御モードにおいては、通常は、X軸、H軸、C軸が連動して動作する。
仮想Y軸制御部41は、仮想Y軸制御指令軸判定部414、仮想Y軸制御処理部411、仮想Y軸制御指令合成部412、非常停止時座標値記憶制御部415、H軸・C軸単独指令記憶制御部416、プログラム座標復元部417、及び仮想Y軸制御復帰移動部418を有する。
仮想Y軸制御指令軸判定部414は、仮想Y軸制御モード下においては、記憶部34cに記憶された加工プログラムを1ブロック(1行)毎に参照し、各ブロック(各行)の指令がX−Y軸の移動量指令であるのか、それともH軸又はC軸の単独回転量指令であるのかを判定する。仮想Y軸制御指令軸判定部414は、加工プログラム343による指令がX−Y軸の移動量指令(例えば、図12に示す「G00 X20 Y50」による移動量指令)である場合、加減速処理部43から入力されたX−Y軸の移動量指令を仮想Y軸制御処理部411へ供給し、H軸又はC軸の単独回転量指令(例えば、図12に示す「T1111」や「C180」による単独回転量指令)である場合、加減速処理部43から入力されたH軸又はC軸の単独回転量指令を仮想Y軸制御指令合成部412へ供給する。別言すれば、仮想Y軸制御指令軸判定部414は、プログラム座標系で作成された加工プログラムの指令を、1ブロック毎に、X−Y軸の移動量指令を含む第1移動量指令と、H軸単独移動量指令及び/又はC軸単独移動量指令を含む第2移動量指令とに分離し、第1移動量指令は仮想Y軸制御処理部411へ供給し、第2移動量指令は仮想Y軸制御指令合成部412へ供給する。
仮想Y軸制御処理部411は、仮想Y軸制御モードにおいて、加減速処理部43から入力されたX−Y軸の移動量指令を移動位置指令(X1,Y1)に変換し、変換した移動位置指令を、実座標系としての機械座標系の移動位置指令であるX軸の移動位置指令とH軸の回転位置指令とC軸の回転位置指令とに座標変換し、X軸、H軸、C軸の各移動目標位置(Xr1,Hr1,Cr1)を求める。
具体的には、仮想Y軸制御処理部411は、前回計算したX−Y移動位置と、加減速処理部43から入力されたX−Y軸の移動量指令とを用いて今回のX−Y移動位置を計算する。そして、仮想Y軸制御処理部411は、計算した今回のX−Y移動位置(X1,Y1)を下記の数式1〜3にしたがって座標変換して、機械座標系における移動位置(Xr1,Hr1,Cr1)を求める。
Xr1=f(X1)+f(Y1)・・・数式1
Hr1=f11(X1)+f12(Y1)・・・数式2
Cr1=f21(X1)+f22(Y1)・・・数式3
さらに、仮想Y軸制御処理部411は、機械座標系における前回移動位置(Xr0,Hr0,Cr0)と、今回の移動位置(Xr1,Hr1,Cr1)との差分をとることにより、機械座標系におけるX軸移動量(ΔXr1=Xr1−Xr0)とH軸回転量(ΔHr1=Hr1−Hr0)とC軸回転量(ΔCr1=Cr1−Cr0)とを計算する。
仮想Y軸制御処理部411は、このような処理を補間点毎に繰り返す。仮想Y軸制御処理部411は、X軸の移動量指令(ΔXr1)を軸データ入出力部42へ供給するとともに、H軸の回転量指令(ΔHr1)とC軸の回転量指令(ΔCr1)とを仮想Y軸制御指令合成部412へ供給する。
なお、仮想Y軸制御処理部411は、X−Y軸の移動量指令を受けていない場合、回転量零の回転量指令、すなわちΔHr1=0とΔCr1=0とを仮想Y軸制御指令合成部412へ供給し、ΔXr1=0を軸データ入出力部42へ供給する。
仮想Y軸制御指令合成部412は、加減速処理部43から入力されたH軸及び/又はC軸の単独回転量指令(ΔH2及び/又はΔC2)と、仮想Y軸制御処理部411から入力される座標変換後のH軸の回転量指令(ΔHr1)とC軸の回転量指令(ΔCr1)とをそれぞれ合成する。
仮想Y軸制御指令合成部412は、下記の数式4に示すように、H軸の単独回転量指令ΔHr2(=ΔH2)を、仮想Y軸制御処理部411により生成されたH軸の回転量指令ΔHr1と合成し、H軸の回転量指令ΔHrを生成する。
ΔHr=ΔHr1+ΔHr2・・・数式4
同様に、仮想Y軸制御指令合成部412は、下記の数式5に示すように、C軸の単独回転量指令ΔCr2(=ΔC2)を、仮想Y軸制御処理部411により生成されたC軸の回転量指令ΔCr1と合成し、C軸の回転量指令ΔCrを生成する。
ΔCr=ΔCr1+ΔCr2・・・数式5
仮想Y軸制御指令合成部412は、合成したH軸の回転量指令ΔHr及びC軸の回転量指令ΔCrを軸データ入出力部42へ供給する。
非常停止時座標値記憶制御部415は、記憶部34aへの非常停止時プログラム座標メモ346の記憶を制御する。例えば、非常停止時座標値記憶制御部415は、定期的に、仮想Y軸制御処理部411から、プログラム座標系におけるX軸、Y軸の座標(X2,Y2)を取得し、取得したX軸、Y軸の座標(X2,Y2)を非常停止時プログラム座標メモ346として記憶部34aに定期的に例えば上書き記憶する。
H軸・C軸単独指令記憶制御部416は、記憶部34bへのH軸・C軸単独指令メモ348の記憶を制御する。例えば、H軸・C軸単独指令記憶制御部416は、H軸又はC軸の単独回転量指令が入るたびに、仮想Y軸制御指令合成部412からH軸又はC軸の単独回転量指令による回転量を取得し、取得したH軸又はC軸の単独回転量指令による回転量を積算し、積算結果としてのH軸又はC軸の単独回転量指令による現在のH軸回転位置およびC軸回転位置(ΔH3,ΔC3)をH軸・C軸単独指令メモ348として記憶部34bに例えば上書き記憶する。別言すれば、H軸・C軸単独指令記憶制御部416は、非常停止される以前における上記の第2移動量指令による移動量の積算値を、現在のH軸回転位置およびC軸回転位置を示す値として記憶部34bに記憶する。
プログラム座標復元部417は、非常停止が解除された際に、プログラム座標系におけるX軸及びY軸の座標を復元する。具体的には、プログラム座標復元部417は、非常停止解除の指令を受けた場合に、軸データ入出力部42経由でサーボモータ901、902、904の位置センサ95、96、98から、機械座標系における現在のX軸、H軸、及びC軸の座標(Xr0,Hr0,Cr0)を取得する。プログラム座標復元部417は、下記の数式6及び7により、機械座標系における現在のX軸、H軸、及びC軸の座標(Xr0,Hr0,Cr0)からプログラム座標系における現在のX軸及びY軸の座標(X0、Y0)を復元する。
X0=f’11(Xr0)+f’12(Hr0)+f’13(Cr0)・・・数式6
Y0=f’21(Xr0)+f’22(Hr0)+f’23(Cr0)・・・数式7
すなわち、プログラム座標復元部417は、仮想Y軸制御処理部411により行なわれる変換(プログラム座標から機械座標への変換)と逆方向の変換を行う。
仮想Y軸制御復帰移動部418は、非常停止が解除された際に、非常停止される直前の位置へワークW及びタレット905を復帰移動させる。具体的には、仮想Y軸制御復帰移動部418は、非常停止解除の指令を受けた場合に、記憶部34aから非常停止時プログラム座標メモ346を読み出して、プログラム座標系における非常停止される直前のX軸、Y軸の座標(X4,Y4)を取得する。仮想Y軸制御復帰移動部418は、プログラム座標系における復元された現在の座標(X0,Y0)から非常停止される直前のX軸、Y軸の座標(X4,Y4)へ移動させるための移動量指令に対して、補間処理、加減速処理を行う。
具体的には、仮想Y軸制御復帰移動部418は、補間処理、加減速処理の結果としてのX−Y軸の移動量指令と、復元された現在の座標(X0,Y0)とを用いて今回のX−Y移動位置を計算する。そして、仮想Y軸制御復帰移動部418は、プログラム座標系における計算した今回のX−Y移動位置(X4,Y4)を上記の数式1〜3にしたがって座標変換して、機械座標系における移動位置(Xr4,Hr4,Cr4)を求める。
さらに、仮想Y軸制御復帰移動部418は、機械座標系における位置センサ95、96、98から取得された現在の位置(Xr0,Hr0,Cr0)と、今回の移動位置(Xr4,Hr4,Cr4)との差分をとることにより、機械座標系におけるX軸移動量(ΔXr4=Xr4−Xr0)とH軸回転量(ΔHr4=Hr4−Hr0)とC軸回転量(ΔCr4=Cr4−Cr0)とを計算する。
仮想Y軸制御復帰移動部418は、このような処理を補間点毎に繰り返す。仮想Y軸制御復帰移動部418は、X軸の移動量指令(ΔXr4)、H軸の回転量指令(ΔHr4)、及びC軸の回転量指令(ΔCr4)を軸データ入出力部42へ供給する。
軸データ入出力部42は、X軸の移動量指令ΔXr1、ΔXr4を駆動部90へ供給し、H軸の回転量指令ΔHr、ΔHr4及びC軸の回転量指令ΔCr、ΔCr4を駆動部90へ供給する。
ハンドル50は、ユーザによる手動操作によって例えばX軸の移動量指令を発生させる。ハンドル50は、工具がワークWに挿入された状態で非常停止が発生した場合に、非常停止解除後、ワークWから工具を引き抜く際などに使用される。ハンドル50は、ハンドルモードの際に使用可能となる。
次に、実施の形態1にかかる数値制御装置1の通常時の動作について図3を用いて説明する。図3は、実施の形態1にかかる数値制御装置の動作を示すフローチャートである。
ステップS1では、解析処理部37が、工具補正量(Tx、Ty)を記憶部34から読み出して、加工プログラム343の解析結果に工具補正量(Tx、Ty)を加味して補間処理部38へ渡す。
ステップS2では、補間処理部38が、解析処理部37から解析結果(位置指令)を受け取り、解析結果(位置指令)に対する補間処理を行い、補間処理の結果を加減速処理部43へ供給する。
ステップS3では、加減速処理部43が、供給された補間処理の結果に対して加減速処理を行い、加減処理結果をスイッチ44に供給する。
ステップS4では、仮想Y軸制御切換処理部39が、共有エリア345の仮想Y軸制御モード信号に基づき仮想Y軸制御判定処理を行うべきか否かを判断する。すなわち、仮想Y軸制御切換処理部39は、仮想Y軸制御モードである場合(ステップS4で「Yes」)、処理をステップS10へ進める。仮想Y軸制御切換処理部39は、仮想Y軸制御モード以外の制御モードである場合(ステップS4で「No」)、処理をステップS17へ進める。
ステップS10では、仮想Y軸制御部41が、仮想Y軸制御モードの処理を行う。具体的には、以下のステップS11〜S16の処理を行う。
ステップS11では、仮想Y軸制御指令軸判定部414は、記憶部34に記憶された加工プログラム343を1ブロック毎に参照し、各ブロックの指令がX−Y軸の移動量指令であるのか、それともH軸及び/又はC軸の単独回転量指令であるのかを判定する。仮想Y軸制御指令軸判定部414は、加工プログラム343による指令がX−Y軸の移動量指令(例えば、図12に示す「X20 Y50」への移動量指令)である場合、そのX−Y軸の移動量指令を仮想Y軸制御処理部411へ供給し、処理をステップS12へ進める。仮想Y軸制御指令軸判定部414は、加工プログラム343による指令がH軸及び/又はC軸の単独回転量指令(例えば、図12に示す「T1111」や「C180」による単独回転量指令)である場合、そのH軸及び/又はC軸の単独回転量指令を仮想Y軸制御指令合成部412へ供給し、処理をステップS16へ進める。
ステップS12では、仮想Y軸制御処理部411が、プログラム座標位置計算処理を行う。すなわち、仮想Y軸制御処理部411は、加減速処理部43から入力されたX−Y軸の移動量指令と、前回のX−Y移動位置とを用いて今回の移動位置(X軸座標「X1」、Y軸座標「Y1」)を計算する。
ステップS13では、仮想Y軸制御処理部411が、座標変換処理(仮想Y軸制御のプログラム座標→機械座標の変換処理)を行う。すなわち、仮想Y軸制御処理部411は、プログラム座標系における今回の移動位置(X1,Y1)を上記の数式1〜3により座標変換して、機械座標系における移動位置(Xr1,Hr1,Cr1)を求める。
ステップS15では、仮想Y軸制御処理部411が、機械座標系における前回位置(Xr0,Hr0,Cr0)と今回の移動位置(Xr1,Hr1,Cr1)との差分をとることにより、機械座標系におけるX軸移動量(ΔXr1=Xr1−Xr0)とH軸回転量(ΔHr1=Hr1−Hr0)とC軸回転量(ΔCr1=Cr1−Cr0)とを計算する。仮想Y軸制御処理部411は、X軸の移動量指令(ΔXr1)を軸データ入出力部42へ供給して処理をステップS17へ進めるとともに、H軸の回転量指令(ΔHr1)とC軸の回転量指令(ΔCr1)とを仮想Y軸制御指令合成部412へ供給して処理をステップS16へ進める。
ステップS16では、仮想Y軸制御指令合成部412が、上記の数式4に示すように、H軸の単独回転量指令ΔHr2を、仮想Y軸制御処理部411により生成されたH軸の回転量指令ΔHr1と合成し、H軸の回転量指令ΔHrを生成する。同様に、仮想Y軸制御指令合成部412は、上記の数式5に示すように、C軸の単独回転量指令ΔCr2を、仮想Y軸制御処理部411により生成されたC軸の回転量指令ΔCr1と合成し、C軸の回転量指令ΔCrを生成する。仮想Y軸制御指令合成部412は、合成したH軸の回転量指令ΔHr及びC軸の回転量指令ΔCrを軸データ入出力部42へ供給する。
ステップS17では、軸データ入出力部42が、軸データ出力処理を行う。すなわち、軸データ入出力部42は、仮想Y軸制御処理部411から供給されたX軸の移動量指令ΔXr1を駆動部90へ供給するとともに、仮想Y軸制御指令合成部412から供給されたH軸の回転量指令ΔHr及びC軸の回転量指令ΔCrを駆動部90へ供給する。
次に、実施の形態1にかかる数値制御装置1を用いた工作機械900の非常停止時の動作について、図4〜図8を用いて説明する。図4は、数値制御装置1を用いた工作機械900の非常停止時の動作を示すフローチャートである。図5、6、8は、工作機械900の非常停止時の動作を示す図である。図7は、運転モード信号のデータ構造を示す図である。
図4に示すステップS21では、入力操作部20内の非常停止ボタンがユーザにより押されると、非常停止の指令が各部に入力される。
駆動部90は、非常停止の指令を受けた場合に、軸データ入出力部42からの駆動制御データを受け付けないサーボオフ状態になる。これにより、例えば、タレット905やワーク支持部906(ワークW)が自重により動いてしまう(図5(a)、(b)、図6(a)、(b)参照)。あるいは、例えば、穴あけ加工用の工具9052がワークW内に入り込んだままの状態になる(図8(a)参照)。
ステップS22では、運転モードをメモリ運転モードからハンドルモードへ切り替えるための操作がユーザにより行われると、PLC36は、機械制御信号処理部35に対して運転モード信号をメモリ運転モードONの状態(図7(a)に示すビットMMが「1」の状態)からハンドル運転モードONの状態(図7(b)に示すビットHMが「1」の状態)へ切り替えて共有エリア345に一時記憶させる。これにより、数値制御装置1では、各部が共有エリア345の運転モード信号(ハンドル運転モードONの状態)を参照することによりハンドル運転モードであることを認識する。なお、共有エリア345の仮想Y軸制御モード信号は、非常停止された後もON状態になっている。
ステップS23では、入力操作部20内の非常停止ボタンがユーザにより解除されると、非常停止解除の指令が各部に入力される。このとき、駆動部90は、サーボオン状態になる。
ステップS24では、プログラム座標復元部417は、軸データ入出力部42経由でサーボモータ901、902、904の位置センサ95、96、98から、非常停止が解除された際の機械座標系におけるX軸、H軸、及びC軸の現在の座標位置(Xr0,Hr0,Cr0)を取得する。
ステップS25では、非常停止される以前にH軸又はC軸の単独回転量指令があった場合、プログラム座標復元部417が、記憶部34bからH軸・C軸単独指令メモ348を読み出して、H軸又はC軸の単独回転量指令による現在のH軸回転位置およびC軸回転位置(ΔH3,ΔC3)を取得する。
ステップS26では、プログラム座標復元部417が、プログラム座標系における現在のX軸及びY軸の座標を復元する。
すなわち、非常停止される以前にH軸又はC軸の単独回転量指令がなかった場合、プログラム座標復元部417は、上記の数式6及び7により、機械座標系における現在のX軸、H軸、及びC軸の座標(Xr0,Hr0,Cr0)からプログラム座標系における現在のX軸及びY軸の座標(X0,Y0)を復元する。
あるいは、非常停止される以前にH軸又はC軸の単独回転量指令があった場合、プログラム座標復元部417は、機械座標系における現在のX軸、H軸、及びC軸の座標(Xr0,Hr0,Cr0)から現在のH軸回転位置およびC軸回転位置(ΔH3,ΔC3)を差し引いた座標(Xr0、Hr0−ΔH3、Cr0−ΔC3)を求め、その座標(Xr0、Hr0−ΔH3、Cr0−ΔC3)から上記の数式6及び7によりプログラム座標系における現在のX軸及びY軸の座標(X0’,Y0’)を復元する。言い換えれば、プログラム座標復元部417は、プログラム座標系における復元されたX軸及びY軸の座標(X0,Y0)に対して、H軸又はC軸の単独回転量指令による現在のH軸回転位置およびC軸回転位置(ΔH3,ΔC3)をさらに反映させた座標(X0’,Y0’,ΔH3,ΔC3)を求め、その求めた座標を、プログラム座標系における復元された現在の座標(X0’,Y0’,ΔH3,ΔC3)とする。さらに別言すれば、プログラム座標復元部417は、取得したX軸、C軸およびH軸の現在の位置から記憶部34bに記憶された移動量分の位置を分離し、この分離結果を用いて仮想Y軸制御処理部411による座標変換と逆方向の変換を行ってプログラム座標系での現在のX軸座標位置およびY軸座標位置(X0’,Y0’)を復元する。
ステップS27では、ユーザが、復帰移動すべきか否かを判断する。復帰移動する動作がユーザにより選択され、ユーザからスイッチ(図示せず)を介して復帰移動信号が数値制御装置1に入力された場合、PLC36は、復帰移動信号を検知する。PLC36は、復帰移動信号を検知した場合(S27で「Yes」)、処理をステップS28へ進め、復帰移動信号を検知しなかった場合(S27で「No」)、処理をステップS32へ進める。
ステップS28では、仮想Y軸制御復帰移動部418が、記憶部34aから非常停止時プログラム座標メモ346を読み出して、プログラム座標系における非常停止される直前のX軸、Y軸の座標(X4,Y4)を取得する。
ステップS29では、仮想Y軸制御復帰移動部418が、X−Y目標位置(X4,Y4)を上記の数式1〜3にしたがって座標変換して、機械座標系における移動位置(Xr4,Hr4,Cr4)を求める。さらに、仮想Y軸制御復帰移動部418は、(X0,Y0)から同様に座標変換された現在の位置(Xr0,Hr0,Cr0)と、今回の移動位置(Xr4,Hr4,Cr4)との差分をとることにより、機械座標系におけるX軸移動量(ΔXr4=Xr4−Xr0)とH軸回転量(ΔHr4=Hr4−Hr0)とC軸回転量(ΔCr4=Cr4−Cr0)とを計算する。仮想Y軸制御復帰移動部418は、X軸の移動量指令(ΔXr4)、H軸の回転量指令(ΔHr4)、及びC軸の回転量指令(ΔCr4)を軸データ入出力部42へ供給する。
これにより、仮想Y軸制御復帰移動部418は、プログラム座標系における復元された現在のX軸及びY軸の座標(X0,Y0)から記憶部34aに記憶されたX軸及びY軸の座標(X4,Y4)へ移動するように、機械座標系におけるX軸の移動とH軸の回転とC軸の回転とを同期させて行い、非常停止される直前の位置へタレット905及びワークWを復帰移動させる(図5(c)、図6(c)参照)。
ステップS32では、仮想Y軸制御部41が、ユーザによるハンドル50の操作が行われたか否かを判断する。ユーザは、ワークWに入り込んだ工具をプログラム座標上におけるX軸方向へ動かしてワークWから引き抜くために、ハンドル50を回転操作する。このとき、ハンドル50は、手動送り指令(X軸の移動量指令)を発生させて補間処理部38、加減速処理部43経由で仮想Y軸制御部41へ供給する。仮想Y軸制御部41の仮想Y軸制御処理部411は、ハンドルモード中に手動送り指令を受けた場合に、ユーザによるハンドル50の操作が行われたと判断して、処理をステップS30へ進め、ハンドルモードに移行後手動送り指令を所定時間内に受けなかった場合に、ユーザによるハンドル50の操作が行われなかったと判断して、処理を終了する。
ステップS30では、仮想Y軸制御処理部411が、手動送り指令に基づいてプログラム座標系における手動送り量(X軸の移動量指令)を計算する。すなわち、仮想Y軸制御処理部411は、プログラム座標系において、プログラム座標復元部417により復元された位置から、手動送り量(X軸の移動量指令)に従って移動させる今回の移動位置(X5)を計算する。そして、仮想Y軸制御処理部411は、プログラム座標系における今回の移動位置(X5)を上記の数式1〜3により座標変換して、機械座標系における移動位置(Xr5,Hr5,Cr5)を求める。また、手動送り量がY軸であっても、同様に座標変換して求めることができる。
ステップS31では、仮想Y軸制御処理部411が、機械座標系における現在の位置(Xr0,Hr0,Cr0)と移動位置(Xr5,Hr5,Cr5)との差分をとることにより、機械座標系におけるX軸移動量(ΔXr5=Xr5−Xr0)とH軸回転量(ΔHr5=Hr5−Hr0)とC軸回転量(ΔCr5=Cr5−Cr0)とを計算する。すなわち、仮想Y軸制御処理部411は、ハンドル50により発生された手動送り指令をプログラム座標系におけるX軸の移動量指令とし、プログラム座標系におけるX軸の移動量指令から、機械座標系におけるX軸の移動量指令(X軸移動量ΔXr5)とH軸の回転量指令(H軸回転量ΔHr5)とC軸の回転量指令(C軸回転量ΔCr5)とを生成する。仮想Y軸制御処理部411は、X軸の移動量指令(ΔXr5)を軸データ入出力部42へ供給するとともに、H軸の回転量指令(ΔHr5)とC軸の回転量指令(ΔCr5)とを仮想Y軸制御指令合成部412経由で軸データ入出力部42へ供給する。
これにより、仮想Y軸制御処理部411は、プログラム座標復元部417によって復元されたプログラム座標系での現在のX軸座標位置およびY軸座標位置と、ハンドル50から発生されるX軸の移動指令とに基づき、現在のX軸座標位置およびY軸座標位置からワークWに干渉せずに工具が引き抜かれるようX軸、H軸およびC軸を連動駆動する。すなわち、仮想Y軸制御処理部411は、機械座標系におけるX軸の移動とH軸の回転とC軸の回転とを同期させて行い、工具をワークWから引き抜く(図8(b)参照)。
なお、上記では、仮想Y軸制御復帰移動部418が復帰移動処理(ステップS28、S29)をハンドルモードで行う例について説明したが、仮想Y軸制御復帰移動部418は、メモリ運転モードで復帰移動処理(ステップS28、S29)を行ってもよい。その場合、例えば、ステップS28において運転モードをハンドルモードからメモリ運転モードへ切り替えるための操作がユーザにより行われてもよい。
ここで、仮に、図13に示すように、数値制御装置800の制御演算部830において、仮想Y軸制御部841がプログラム座標復元部417(図2参照)を有しない場合について考える。この場合、工作機械900が工具9052でワークWを加工している途中に、工作機械900が非常停止された場合、仮想Y軸制御がキャンセルされる。その後、工作機械900の非常停止が解除されたとしても、図15(a)に示すように、工具9052がワークW内に入り込んだ状態になっている場合、仮想Y軸制御がキャンセルされているため、X軸方向に工具9052を動かしながらそれに連動させてタレット905及びワークWを回転させることが困難である。すなわち、工作機械900を非常停止前の状態に戻すために、工具9052をワークWから引き抜くことが困難であり、無理やり工具9052をワークWから引き抜こうとすると、図15(b)に示すように、工具9052を破損させる可能性がある。
それに対して、実施の形態1では、プログラム座標復元部417が、非常停止が解除された際に、機械座標系におけるX軸、H軸、及びC軸の座標からプログラム座標系におけるX軸及びY軸の座標(X0,Y0)を復元する。そして、仮想Y軸制御処理部411は、プログラム座標系におけるプログラム座標復元部417により復元されたX軸及びY軸の座標(X0,Y0)からハンドル50により受け付けられた手動送り指令(X軸の移動量指令)に従って移動するように、機械座標系におけるX軸の移動とH軸の回転とC軸の回転とを同期させて行う。これにより、仮想Y軸制御処理部411は、工具をワークWから引き抜く。すなわち、工具9052をワークWから引き抜くことが容易であり、工具9052を破損させにくい。したがって、仮想Y軸制御中に工具9052がワークW内に入り込んだ状態で工作機械900が非常停止された場合でも、工具9052をワークWから引き抜いて、工作機械900を非常停止前の状態に戻すことができる。
また、図13に示すように、仮想Y軸制御部841がプログラム座標復元部417を有しない場合、図14(a)に示すように、工具9051がワークW内に入り込んだ状態になっていない場合でも、工作機械900が非常停止されると、仮想Y軸制御がキャンセルされるとともに、タレット905及びワークWの駆動がサーボオフ状態になるため、図14(b)に示すように、タレット905やワークWが自重で動いてしまう。これにより、プログラム座標系における工作機械900の現在のX軸、Y軸の座標位置を把握することが困難になるとともに、工作機械900の非常停止直前の座標位置を把握することも困難になるので、プログラム座標系上で工作機械900を非常停止前の状態に戻すように指令することができない。そこで、図14(c)に示すように、運転モードをハンドルモードにして、タレット905やワークWを(非常停止前とは異なる)機械座標系の基準位置へ戻し、図14(d)に示すように、運転モードをメモリ運転モードに戻すことになる。すなわち、工作機械900を非常停止前の状態に戻すために、工作機械900におけるタレット905やワークWを非常停止直前の位置に復帰させることが困難である。
それに対して、実施の形態1では、仮想Y軸制御部41がプログラム座標復元部417を有している。プログラム座標復元部417が、非常停止が解除された際に、機械座標系における現在のX軸、H軸、C軸の座標からプログラム座標系における現在のX軸及びY軸の座標(X0,Y0)を復元する。これにより、プログラム座標系における現在のX軸、Y軸の座標位置を把握することができるので、プログラム座標系上で工作機械900を非常停止前の状態に戻すように指令することができる。したがって、仮想Y軸制御中に工具9051がワークW内に入り込んでいない状態で工作機械900が非常停止された場合でも、工作機械900を非常停止前の状態に戻すことが可能となる。
特に、仮想Y軸制御復帰移動部418は、非常停止解除の指令を受けた際に、記憶部34aから非常停止時プログラム座標メモ346を読み出して、プログラム座標系における非常停止される直前のX軸、Y軸の座標(X4,Y4)を取得する。仮想Y軸制御復帰移動部418は、プログラム座標系における復元された現在のX軸及びY軸の座標(X0、Y0)から記憶部34aに記憶されたX軸及びY軸の座標(X4,Y4)へ移動するように、機械座標系におけるX軸の移動とH軸の回転とC軸の回転とを同期させて行い、非常停止される直前の位置へタレット905及びワークWを復帰移動させる。したがって、工作機械900を非常停止前の状態に戻すことができる。
また、実施の形態1では、非常停止される前にH軸又はC軸の単独回転量指令があった場合、プログラム座標復元部417は、記憶部34bからH軸・C軸単独指令メモ348を読み出して、H軸又はC軸の単独回転量指令による現在のH軸回転位置およびC軸回転位置(ΔH3,ΔC3)を取得する。プログラム座標復元部417は、プログラム座標系における復元されたX軸及びY軸の座標(X0,Y0)に対して、H軸又はC軸の単独回転量指令による現在のH軸回転位置およびC軸回転位置(ΔH3,ΔC3)を反映させた座標(X0’,Y0’,ΔH3,ΔC3)を求め、その求めた座標を、プログラム座標系における復元された現在の座標(X0’,Y0’,ΔH3,ΔC3)とする。したがって、工作機械900が非常停止される以前に仮想Y軸制御中にH軸・C軸の単独回転量指令が行われた場合でも、プログラム座標系における現在の座標を復元することができるので、工作機械900を非常停止前の状態に戻すようにプログラム座標系上で指令することができる。
実施の形態2.
次に、実施の形態2にかかる数値制御装置1iについて説明する。以下では、実施の形態1と異なる部分を中心に説明する。
実施の形態2にかかる数値制御装置1iは、復帰移動処理により復帰移動する先が、加工プログラムに含まれるX−Y軸移動指令であって、非常停止される時点から最短時点で実行済みのX−Y軸移動指令で記述された座標位置である点で実施の形態1と異なる。非常停止される時点から最短時点で実行済みのX−Y軸移動指令で記述された座標位置は、例えば、加工プログラム上の前ブロックの記述にX−Y軸移動指令が含まれている場合、非常停止時の実行ブロックの前ブロックの終了位置であり、例えば、加工プログラム上の前ブロックにはなく2つ前のブロックの記述にX−Y軸移動指令が含まれている場合、非常停止時の実行ブロックの2つ前のブロックの終了位置である。以下では、復帰移動処理により復帰移動する先が非常停止時の実行ブロックの前ブロックの終了位置である場合について例示的に説明する。
具体的には、数値制御装置1iは、図9に示すように、制御演算部30iを備える点で実施の形態1と異なる。図9は、実施の形態2にかかる数値制御装置1iの構成を示すブロック図である。制御演算部30iは、記憶部34i及び仮想Y軸制御部41iを有する。
記憶部34iは、記憶部34a(図2参照)に代えて記憶部34diを有する。記憶部34diは、前ブロックプログラム座標メモ347iを記憶する。
仮想Y軸制御部41iは、非常停止時座標値記憶制御部415i及び仮想Y軸制御復帰移動部418iを有する。
非常停止時座標値記憶制御部415iは、記憶部34diへの前ブロックプログラム座標メモ347iの記憶を制御する。
例えば、非常停止時座標値記憶制御部415iは、定期的に、仮想Y軸制御処理部411から、プログラム座標系におけるブロックの終了位置のX軸及びY軸の座標(X6,Y6)を取得する。非常停止時座標値記憶制御部415iは、取得した座標(X6,Y6)を前ブロックプログラム座標メモ347iとして記憶部34diに定期的に例えば上書き記憶する。
仮想Y軸制御復帰移動部418iは、非常停止解除の指令を受けた場合に、記憶部34diから前ブロックプログラム座標メモ347iを読み出して、プログラム座標系における、非常停止される際に実行されていたブロックの前ブロックの終了位置のX軸及びY軸の座標(X6,Y6)を取得する。仮想Y軸制御復帰移動部418iは、プログラム座標復元部417により復元されたX軸及びY軸の座標(X0,Y0)から、記憶部34diに記憶されたX軸及びY軸の座標(X6,Y6)へ移動するように、機械座標系におけるX軸の移動とH軸の回転とC軸の回転とを同期させて行う。これにより、仮想Y軸制御復帰移動部418iは、プログラム座標系における非常停止される際に実行されていたブロックの前ブロックの終了位置へワークW及びタレット905を復帰移動させる。
また、数値制御装置1iを用いた工作機械900の非常停止時の動作は、図10〜図12に示すように、次の点で実施の形態1と異なる。図10は、実施の形態2にかかる数値制御装置1iを用いた工作機械900の非常停止時の動作を示すフローチャートである。図11は、工作機械900の非常停止時の動作を示す図である。図12は、実施の形態2にかかる数値制御装置1iの記憶部34iに記憶された加工プログラム343における記述内容を示す図である。
ステップS21では、駆動部90が、非常停止の指令を受けた場合に、軸データ入出力部42からの駆動制御データを受け付けないサーボオフ状態になる。これにより、例えば、タレット905やワーク支持部906(ワークW)が自重により動いてしまう(図11(b)、(c)参照)。
ステップS28iでは、仮想Y軸制御復帰移動部418iが、記憶部34diから前ブロックプログラム座標メモ347iを読み出して、プログラム座標系における、非常停止される直前に実行されていたブロックの前ブロックの終了位置のX軸及びY軸の座標(X6,Y6)を取得する。
例えば、ステップS21で非常停止される際に実行されていたブロックが、図12に示す加工プログラム343における「N107 G01 X20 Y−50 F1000」に対応したもの(「フライス加工」)であるとする(図11(b)参照)。この場合、非常停止される際に実行されていたブロックの前ブロックは、加工プログラム343における「N106 G00 X20 Y50」に対応したもの(「加工開始位置に移動」)になる。このとき、実行されていたブロックの前ブロックの終了位置は、プログラム座標系における「X20 Y50」になる(図11(a)参照)。すなわち、前ブロックプログラム座標メモ347iは、プログラム座標系における「X20 Y50」を終了位置として含んでいる。
そして、仮想Y軸制御復帰移動部418iは、プログラム座標系における復元された現在の座標(X0,Y0)から非常停止時の実行ブロックの前ブロックの終了位置のX軸、Y軸の座標(X6,Y6)へ移動させるための移動量指令に対して、補間処理、加減速処理を行う。
ステップS29iでは、仮想Y軸制御復帰移動部418iが、補間処理、加減速処理の結果としてのX−Y軸の移動量指令と、復元された現在の座標(X0,Y0)とを用いて今回のX−Y移動位置を計算する。そして、仮想Y軸制御復帰移動部418iが、X−Y座標位置(X6,Y6)を上記の数式1〜3にしたがって座標変換して、機械座標系における移動位置(Xr6,Hr6,Cr6)を求める。さらに、仮想Y軸制御復帰移動部418iは、(X0,Y0)から座標変換された現在の位置(Xr0,Hr0,Cr0)と、今回の移動位置(Xr6,Hr6,Cr6)との差分をとることにより、機械座標系におけるX軸移動量(ΔXr6=Xr6−Xr0)とH軸回転量(ΔHr6=Hr6−Hr0)とC軸回転量(ΔCr6=Cr6−Cr0)とを計算する。仮想Y軸制御復帰移動部418iは、X軸の移動量指令(ΔXr6)、H軸の回転量指令(ΔHr6)、及びC軸の回転量指令(ΔCr6)を軸データ入出力部42へ供給する。
これにより、仮想Y軸制御復帰移動部418iが、プログラム座標系におけるプログラム座標復元部417により復元されたX軸及びY軸の座標(X0,Y0)から記憶部34diに記憶されたX軸及びY軸の座標(X6,Y6)へ移動するように、機械座標系におけるX軸の移動とH軸の回転とC軸の回転とを同期させて行い、非常停止される直前に実行されていたブロックの前ブロックの終了位置へタレット905及びワークWを復帰移動させる(図11(c)、(d)参照)。
その後、数値制御装置1iは、入力操作部20を介したユーザからの指示により、プログラム再開サーチ機能を使って、非常停止時に実行されていたブロックをサーチし、起動(サイクルスタート)することによって加工を再開(続行)させることができる。
以上のように、実施の形態2では、仮想Y軸制御復帰移動部418iが、非常停止解除の指令を受けた際に、記憶部34diから前ブロックプログラム座標メモ347iを読み出して、プログラム座標系における、非常停止される際に実行されていたブロックの前ブロックの終了位置のX軸及びY軸の座標(X6,Y6)を取得する。仮想Y軸制御復帰移動部418iは、プログラム座標系におけるプログラム座標復元部417により復元されたX軸及びY軸の座標(X0,Y0)から記憶部34diに記憶されたX軸及びY軸の座標(X6,Y6)へ移動するように、機械座標系におけるX軸の移動とH軸の回転とC軸の回転とを同期させて行う。これにより、非常停止される際に実行されていたブロックの前ブロックの終了位置へタレット905及びワークWを復帰移動させる。したがって、仮想Y軸制御中に工作機械900が非常停止された場合でも、工作機械900の非常停止時に実行していた加工を工作機械900の非常停止が解除された後に再開させることができる。
以上のように、本発明にかかる数値制御装置は、仮想Y軸制御によるワークの加工に適している。
1、1i 数値制御装置
10 表示部
20 入力操作部
30、30i 制御演算部
31 画面処理部
32 入力制御部
33 データ設定部
34、34i 記憶部
34a 記憶部
34b 記憶部
34c 記憶部
34di 記憶部
35 機械制御信号処理部
36 PLC
37 解析処理部
38 補間処理部
39 仮想Y軸制御切換処理部
41、41i 仮想Y軸制御部
42 軸データ入出力部
43 加減速処理部
44 スイッチ
50 ハンドル
90 駆動部
91 X軸サーボ制御部
92 H軸サーボ制御部
93 Z軸サーボ制御部
94 C軸サーボ制御部
95 位置センサ
96 位置センサ
97 位置センサ
98 位置センサ
342 工具補正データ
343 加工プログラム
344 画面表示データ
345 共有エリア
351 仮想Y軸制御モード信号処理部
411 仮想Y軸制御処理部
412 仮想Y軸制御指令合成部
414 仮想Y軸制御指令軸判定部
415、415i 非常停止時座標値記憶制御部
416 H軸・C軸単独指令記憶制御部
417 プログラム座標復元部
418、418i 仮想Y軸制御復帰移動部
800 数値制御装置
830 制御演算部
841 仮想Y軸制御部
900 工作機械
901 サーボモータ
902 サーボモータ
903 サーボモータ
904 サーボモータ
905 タレット
906 ワーク支持部
9051 工具
9052 工具
W ワーク

Claims (4)

  1. 複数の工具が取り付けられるタレットを移動させるX軸と、前記タレットを回転させるH軸と、ワークを回転させるC軸とを有し、前記X軸に直交するY軸を有さない工作機械を制御する数値制御装置であって、
    プログラム座標系で記述された加工プログラム中のX−Y軸移動指令をX−H−C軸からなる機械座標系での指令に変換し、変換した指令に従ってX軸、H軸およびC軸を連動駆動する仮想Y軸制御モードを実行する仮想Y軸制御部と、
    前記仮想Y軸制御モード中に非常停止が発生した場合、非常停止が解除されたときの前記X軸、C軸およびH軸の現在の位置を取得する取得部と、
    前記取得したX軸、C軸およびH軸の現在の位置から前記プログラム座標系での現在のX軸座標位置およびY軸座標位置を復元する復元部と、
    手動操作によるX軸の移動指令を発生させて前記タレットを移動させることにより工具をワークから引き抜くためのハンドルと、
    え、
    前記仮想Y軸制御部は、前記復元部によって復元されたプログラム座標系での現在のX軸座標位置またはY軸座標位置と、前記ハンドルから発生されるX軸の移動指令とに基づき、前記現在のX軸座標位置またはY軸座標位置からワークに干渉せずに工具が引き抜かれるようX軸、H軸およびC軸を連動駆動する
    ことを特徴とする値制御装置。
  2. 複数の工具が取り付けられるタレットを移動させるX軸と、前記タレットを回転させるH軸と、ワークを回転させるC軸とを有し、前記X軸に直交するY軸を有さない工作機械を制御する数値制御装置であって、
    プログラム座標系で記述された加工プログラム中のX−Y軸移動指令をX−H−C軸からなる機械座標系での指令に変換し、変換した指令に従ってX軸、H軸およびC軸を連動駆動する仮想Y軸制御モードを実行する仮想Y軸制御部と、
    前記仮想Y軸制御モード中に非常停止が発生した場合、非常停止が解除されたときの前記X軸、C軸およびH軸の現在の位置を取得する取得部と、
    前記取得したX軸、C軸およびH軸の現在の位置から前記プログラム座標系での現在のX軸座標位置およびY軸座標位置を復元する復元部と、
    を備え、
    前記仮想Y軸制御部は、
    プログラム座標系で作成された加工プログラムの指令を、1ブロック毎に、X軸移動指令及びY軸移動指令の少なくとも一方を含む第1移動指令と、H軸単独移動指令及びC軸移動指令の少なくとも一方を含む第2移動指令とに分離する分離部と、
    前記第1移動指令をX−H−C軸から成る機械座標系の指令に変換する座標変換部と、
    前記変換されたH軸移動指令と前記分離されたH軸単独移動指令とを合成し、前記変換されたC軸移動指令と前記分離されたC軸単独移動指令とを合成する合成部と、
    前記変換されたX軸移動指令、前記合成されたH軸移動指令およびC軸移動指令に従って前記X軸、H軸、C軸を駆動制御する駆動部と、
    を備え、
    非常停止される以前の前記第2移動指令による移動量を記憶する第1の記憶部をさらに備え、
    前記復元部は、取得したX軸、C軸およびH軸の現在の位置から前記第1の記憶部に記憶された移動量分の位置を分離し、この分離結果を用いて前記座標変換部による座標変換と逆方向の変換を行って前記プログラム座標系での現在のX軸座標位置およびY軸座標位置を復元する
    ことを特徴とする値制御装置。
  3. 非常停止される直前のプログラム座標系におけるX軸及びY軸の座標位置を記憶する第2の記憶部と、
    前記復元部によって復元されたプログラム座標系での現在のX軸座標位置およびY軸座標位置から前記第2の記憶部の記憶された座標位置へ前記タレット及び前記ワークを復帰移動させるようにX軸、H軸およびC軸を連動駆動する復帰移動部と、
    をさらに備えた
    ことを特徴とする請求項1又は2に記載の数値制御装置。
  4. 加工プログラムに含まれるX−Y軸移動指令であって、前記非常停止される時点から最短時点で実行済みのX−Y軸移動指令で記述された座標位置を記憶する第3の記憶部と、
    前記復元部によって復元されたプログラム座標系での現在のX軸座標位置およびY軸座標位置から前記第3の記憶部の記憶された座標位置へ前記タレット及び前記ワークを復帰移動させるようにX軸、H軸およびC軸を連動駆動する復帰移動部と、
    をさらに備えた
    ことを特徴とする請求項1又は2に記載の数値制御装置。
JP2011525344A 2011-01-26 2011-01-26 数値制御装置 Active JP4902816B1 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2011/051522 WO2012101790A1 (ja) 2011-01-26 2011-01-26 数値制御装置

Publications (2)

Publication Number Publication Date
JP4902816B1 true JP4902816B1 (ja) 2012-03-21
JPWO2012101790A1 JPWO2012101790A1 (ja) 2014-06-30

Family

ID=46060722

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011525344A Active JP4902816B1 (ja) 2011-01-26 2011-01-26 数値制御装置

Country Status (6)

Country Link
US (1) US9395719B2 (ja)
JP (1) JP4902816B1 (ja)
CN (1) CN103329056B (ja)
DE (1) DE112011104779B4 (ja)
TW (1) TWI448850B (ja)
WO (1) WO2012101790A1 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5159997B1 (ja) * 2012-05-28 2013-03-13 三菱電機株式会社 数値制御装置
JP5669993B1 (ja) * 2014-01-10 2015-02-18 三菱電機株式会社 数値制御装置

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5014515B1 (ja) * 2011-02-03 2012-08-29 三菱電機株式会社 数値制御装置
WO2014038002A1 (ja) * 2012-09-04 2014-03-13 三菱電機株式会社 数値制御装置
ES2634340T3 (es) * 2013-02-12 2017-09-27 Mitsubishi Electric Corporation Dispositivo de control numérico
CN105229543B (zh) * 2013-05-14 2017-03-29 三菱电机株式会社 数控装置
JP6121972B2 (ja) * 2014-10-22 2017-04-26 ファナック株式会社 モータ停止距離を短縮する数値制御装置
JP6407947B2 (ja) 2016-12-16 2018-10-17 ファナック株式会社 数値制御装置
DE112017008204T5 (de) * 2017-12-18 2020-08-06 Mitsubishi Electric Corporation Numerisches Steuergerät
TWI656942B (zh) * 2018-01-12 2019-04-21 財團法人工業技術研究院 工具機防碰撞方法及工具機防碰撞系統
JP6914452B1 (ja) * 2019-09-13 2021-08-04 三菱電機株式会社 数値制御装置、および機械学習装置
CN113985811B (zh) * 2021-11-01 2024-03-22 珠海格力电器股份有限公司 一种数控机床防碰撞控制方法及数控机床
TWI792783B (zh) * 2021-12-20 2023-02-11 上銀科技股份有限公司 機電系統的教導設備

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS61214947A (ja) * 1985-03-19 1986-09-24 Hitachi Seiki Co Ltd 自動復帰機能を有するnc制御装置
JPH01109052A (ja) * 1987-10-21 1989-04-26 Toyoda Mach Works Ltd 数値制御装置
JPH02151909A (ja) * 1988-12-05 1990-06-11 Mitsubishi Electric Corp 産業用機械の制御装置
JPH03254380A (ja) * 1990-02-28 1991-11-13 Matsushita Electric Ind Co Ltd レーザ加工機用数値制御装置
JP3033441B2 (ja) * 1994-07-07 2000-04-17 ダイキン工業株式会社 熱交換器の製造方法及び熱交換器
JP2004306073A (ja) * 2003-04-04 2004-11-04 Fanuc Ltd レーザ加工装置、及びレーザ加工方法
JP2007185748A (ja) * 2006-01-13 2007-07-26 Nakamura Tome Precision Ind Co Ltd 工作機械の再起動方法

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
NO115175B (ja) 1966-11-29 1968-08-19 Kongsberg Vapenfab As
JPS5933507A (ja) 1982-08-18 1984-02-23 Mitsubishi Electric Corp 複刃物台付加工機械の数値制御加工方式
US4513380A (en) * 1982-09-07 1985-04-23 General Electric Company Method of tool recovery in threadcutting apparatus
JPS5968003A (ja) * 1982-10-13 1984-04-17 Toyoda Mach Works Ltd 数値制御工作機械の非常機械原点復帰装置
DE3328327C2 (de) * 1983-08-05 1985-10-10 Index-Werke Kg Hahn & Tessky, 7300 Esslingen Vorrichtung zum spanabhebenden Bearbeiten eines Werkstücks sowie NC-gesteuerte Drehmaschine zur Druchführung eines solchen Verfahrens
US4992712A (en) 1988-09-07 1991-02-12 Mitsubishi Denki Kabushiki Kaisha Control device for industrial machine
KR910009240B1 (ko) * 1988-09-16 1991-11-07 미쯔비시덴끼 가부시끼가이샤 수치제어장치
JPH0333441A (ja) 1989-06-29 1991-02-13 Mazda Motor Corp 車両のスリップ制御装置
US5117097A (en) * 1990-02-27 1992-05-26 Kabushiki Kaisha Tokai Rika Denki Seisakusho Key system for a vehicle
JP3035364B2 (ja) 1991-02-06 2000-04-24 株式会社豊田自動織機製作所 スクロール形状加工装置
JPH06332524A (ja) 1993-05-20 1994-12-02 Fanuc Ltd 数値制御装置における速度制御方法
DE19904253A1 (de) 1999-02-03 2000-08-10 Index Werke Kg Hahn & Tessky Werkzeugmaschine
US6859680B2 (en) * 2002-03-01 2005-02-22 Toshiba Kikai Kabushiki Kaisha Numerical controlling unit having tool-breakage detecting function

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS61214947A (ja) * 1985-03-19 1986-09-24 Hitachi Seiki Co Ltd 自動復帰機能を有するnc制御装置
JPH01109052A (ja) * 1987-10-21 1989-04-26 Toyoda Mach Works Ltd 数値制御装置
JPH02151909A (ja) * 1988-12-05 1990-06-11 Mitsubishi Electric Corp 産業用機械の制御装置
JPH03254380A (ja) * 1990-02-28 1991-11-13 Matsushita Electric Ind Co Ltd レーザ加工機用数値制御装置
JP3033441B2 (ja) * 1994-07-07 2000-04-17 ダイキン工業株式会社 熱交換器の製造方法及び熱交換器
JP2004306073A (ja) * 2003-04-04 2004-11-04 Fanuc Ltd レーザ加工装置、及びレーザ加工方法
JP2007185748A (ja) * 2006-01-13 2007-07-26 Nakamura Tome Precision Ind Co Ltd 工作機械の再起動方法

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5159997B1 (ja) * 2012-05-28 2013-03-13 三菱電機株式会社 数値制御装置
WO2013179366A1 (ja) * 2012-05-28 2013-12-05 三菱電機株式会社 数値制御装置
CN103562808A (zh) * 2012-05-28 2014-02-05 三菱电机株式会社 数控装置
CN103562808B (zh) * 2012-05-28 2015-06-03 三菱电机株式会社 数控装置
US9304503B2 (en) 2012-05-28 2016-04-05 Mitsubishi Electric Corporation Numerical control device configured to reduce a machining cycle time of a machine tool that does not move along Y-axis
JP5669993B1 (ja) * 2014-01-10 2015-02-18 三菱電機株式会社 数値制御装置

Also Published As

Publication number Publication date
CN103329056A (zh) 2013-09-25
JPWO2012101790A1 (ja) 2014-06-30
TW201232209A (en) 2012-08-01
DE112011104779T5 (de) 2013-10-31
WO2012101790A1 (ja) 2012-08-02
US20130257340A1 (en) 2013-10-03
CN103329056B (zh) 2016-04-20
DE112011104779B4 (de) 2017-09-21
US9395719B2 (en) 2016-07-19
TWI448850B (zh) 2014-08-11

Similar Documents

Publication Publication Date Title
JP4902816B1 (ja) 数値制御装置
JP5014515B1 (ja) 数値制御装置
WO2014038002A1 (ja) 数値制御装置
US9063533B2 (en) Multi-spindle translation control for multiple coordinate systems
US8380340B2 (en) Numerical control apparatus with manual shift operation functionality
JP2016521214A (ja) 動力工具
JP4044105B2 (ja) 系統毎に運転手段を切り替える機能を有する数値制御装置
JPWO2013118169A1 (ja) 数値制御装置
JP5669993B1 (ja) 数値制御装置
EP1403747A2 (en) Numerical controller
JP5717926B2 (ja) 数値制御装置
JP5049566B2 (ja) 工作機械
JPH07185901A (ja) 重畳加工制御方法及びその数値制御装置
JPH0250702A (ja) 多軸旋盤の数値制御方法
JP2005267268A (ja) モーション制御装置およびその指令方法
JP2005301886A (ja) 数値制御システムおよび数値制御方法
JPH06182647A (ja) 精密工作機械

Legal Events

Date Code Title Description
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: 20111206

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20111228

R150 Certificate of patent or registration of utility model

Ref document number: 4902816

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20150113

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