JP2016051249A - 数値制御装置と制御方法 - Google Patents

数値制御装置と制御方法 Download PDF

Info

Publication number
JP2016051249A
JP2016051249A JP2014174944A JP2014174944A JP2016051249A JP 2016051249 A JP2016051249 A JP 2016051249A JP 2014174944 A JP2014174944 A JP 2014174944A JP 2014174944 A JP2014174944 A JP 2014174944A JP 2016051249 A JP2016051249 A JP 2016051249A
Authority
JP
Japan
Prior art keywords
command
axis
cpu
positioning
interpretation information
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
JP2014174944A
Other languages
English (en)
Other versions
JP6299527B2 (ja
Inventor
大樹 原田
Daiki Harada
大樹 原田
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.)
Brother Industries Ltd
Original Assignee
Brother Industries Ltd
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 Brother Industries Ltd filed Critical Brother Industries Ltd
Priority to JP2014174944A priority Critical patent/JP6299527B2/ja
Priority to CN201510500719.6A priority patent/CN105388852B/zh
Publication of JP2016051249A publication Critical patent/JP2016051249A/ja
Application granted granted Critical
Publication of JP6299527B2 publication Critical patent/JP6299527B2/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/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
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B23MACHINE TOOLS; METAL-WORKING NOT OTHERWISE PROVIDED FOR
    • B23QDETAILS, COMPONENTS, OR ACCESSORIES FOR MACHINE TOOLS, e.g. ARRANGEMENTS FOR COPYING OR CONTROLLING; MACHINE TOOLS IN GENERAL CHARACTERISED BY THE CONSTRUCTION OF PARTICULAR DETAILS OR COMPONENTS; COMBINATIONS OR ASSOCIATIONS OF METAL-WORKING MACHINES, NOT DIRECTED TO A PARTICULAR RESULT
    • B23Q15/00Automatic control or regulation of feed movement, cutting velocity or position of tool or work
    • B23Q15/20Automatic control or regulation of feed movement, cutting velocity or position of tool or work before or after the tool acts upon the workpiece
    • B23Q15/22Control or regulation of position of tool or workpiece
    • B23Q15/26Control or regulation of position of tool or workpiece of angular position
    • 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/414Structure of the control system, e.g. common controller or multiprocessor systems, interface to servo, programmable interface controller

Abstract

【課題】回転軸の回転を停止した後の最初の位置決め指令がインクレメンタル指令であった時に、機械の動作を停止できる数値制御装置と制御方法を提供する。【解決手段】数値制御装置のCPUは先読み処理と実行処理でNCプログラムを先読みしながら実行する。先読み処理でCPUはNCプログラムを1ブロック毎解釈し、解釈情報を先読みバッファに記憶する。C軸である回転テーブルを停止した後の最初のC軸位置決め指令がインクレメンタル指令の時、CPUは回転テーブル停止後の位置が分からないので、停止指令を先読みバッファに記憶する。実行処理でCPUは先読みバッファから読み出した解釈情報にアラーム指令が有る時(S23:YES)、NCプログラムは間違いであるので、CPUは工作機械の運転を停止する(S25)。故に数値制御装置は工作機械が作業者の意図と異なる動作を行うことを防止できる。【選択図】図7

Description

本発明は、工作機械の動作を制御する数値制御装置と制御方法に関する。
数値制御装置は、NCプログラムを先読みして解釈した結果をバッファに記憶し、該バッファに記憶した解釈結果に基づき工作機械の動作を制御する。NCプログラムの途中で工作機械のサーボモータについて速度制御から位置制御に切り替わる時がある。数値制御装置は、速度制御から位置制御に切り替わる最初の位置決め指令を先読みする時、サーボモータの現在位置が分からないので、サーボモータを位置決めできない。故に数値制御装置は先読みを一旦停止し、連続回転するサーボモータの停止位置を確定後、確定した停止位置を基準としてサーボモータを位置決めしてから先読みを再開する必要があった。
特許文献1が開示する数値制御装置は、先読み処理にて、速度制御から位置制御に切り替わる際にサーボモータを停止した後の最初の位置決め指令を先読みする時、該位置決め指令が指示する移動量を、予め設定した基準位置からの移動量で仮決めしバッファに記憶する。次いで実行処理にて、仮決めした移動量をバッファから読み出し、該移動量から現在のサーボモータの位置を差し引いた差分を演算する。数値制御装置は演算した差分に基づきサーボモータの位置決めを行う。
特開2014−48761号公報
特許文献1に記載の方法は、回転軸を停止した後の最初の位置決め指令がアブソリュート指令であることを前提とする。アブソリュート指令は、移動座標系を絶対座標とする指令である。最初の位置決め指令がインクレメンタル指令の時、移動座標系を相対座標とするので、数値制御装置は上記方法で同様に処理すると、工作機械が使用者の意図と異なる動きをする可能性があった。
本発明の目的は、回転軸の回転を停止した後の最初の位置決め指令がインクレメンタル指令であった時に、機械の動作を停止できる数値制御装置と制御方法を提供することである。
本発明の請求項1に係る数値制御装置は、機械の回転軸の速度制御と位置制御をNCプログラムに従って制御する数値制御装置において、前記NCプログラムのブロック毎に指定された制御指令を順次先読みして解釈する先読み手段と、前記先読み手段で先読みして解釈した解釈情報を記憶装置に記憶する記憶手段と、前記記憶装置から前記解釈情報を読み出して実行する実行手段とを備え、前記先読み手段は、前記回転軸の回転を停止した後の前記回転軸の最初の位置決め指令が、移動座標系を絶対座標とするアブソリュート指令か、移動座標系を相対座標とするインクレメンタル指令かを判断する第一判断手段と、前記第一判断手段が前記位置決め指令は前記アブソリュート指令と判断した場合、前記位置決め指令に基づいて前記回転軸の移動量を指示する指令移動量を、予め設定した前記回転軸の基準位置からの移動量で仮決めする仮決め手段と、前記第一判断手段が前記位置決め指令は前記インクレメンタル指令と判断した場合、前記機械の運転を停止する停止指令を前記解釈情報として前記記憶装置に記憶する停止指令記憶手段とを備え、前記実行手段は、前記記憶装置から読み出した前記解釈情報に基づき、前記仮決め手段が仮決めした前記指令移動量から、前記回転軸の位置を検出する位置検出手段が検出した現在の前記回転軸の位置を差し引いた第一差分を演算する第一演算手段と、前記第一演算手段が演算した前記第一差分に基づき、前記回転軸の位置決めを行う第一位置決め実行手段と、前記記憶装置から読み出した前記解釈情報の中に前記停止指令が有る場合、前記機械を停止する停止手段とを備えたことを特徴とする。回転軸の回転を停止した後の最初の回転軸への位置決め指令がインクレメンタル指令である場合、回転軸の停止する位置は分からない。NCプログラム中に不確定な指令がある可能性が高い。上記の場合、数値制御装置は機械の運転を停止するので、機械が作業者の意図しない動作を行うことを防止できる。また、作業者はNCプログラム中に不確定な指令があることに気付くことができる。
請求項2に係る発明の数値制御装置は、請求項1に記載の発明の構成に加え、前記先読み手段は、前記第一判断手段が前記位置決め指令は前記インクレメンタル指令と判断した場合、該位置決め指令は、現在位置から中間位置への移動の無い特定レファレンス点復帰指令であるか否か判断する第二判断手段とを備え、前記仮決め手段は、前記第二判断手段が前記位置決め指令は前記特定レファレンス点復帰指令と判断した場合、前記指令移動量を、前記基準位置から前記特定レファレンス点復帰指令が指示するレファレンス点までの移動量として仮決めすることを特徴とする。数値制御装置は、回転軸の回転を停止した後の最初の回転軸への位置決め指令がインクレメンタル指令であっても、特定レファレンス点復帰指令の場合は機械の運転を停止しない。故に数値制御装置は機械の動作を継続でき、且つNCプログラムの制限を少なくできる。
請求項3に係る発明の数値制御装置は、請求項2に記載の発明の構成に加え、前記先読み手段は、前記特定レファレンス点復帰指令を先読みして解釈する場合、前記現在位置から前記中間位置までの移動量を0°とする第一動作指令、前記現在位置からの移動量が0°である前記中間位置から前記レファレンス点までの移動量を、前記仮決め手段が仮決めする前記指令移動量とする第二動作指令として解釈し、前記実行手段は、前記第一動作指令に基づき、前記現在位置から移動しない第一動作実行手段と、前記第一動作実行手段が前記第一動作を実行した後で、前記第二動作に基づき、前記指令移動量から、前記位置検出手段が検出した現在の前記回転軸の位置を差し引いた第二差分を演算する第二演算手段と、前記第二演算手段が演算した前記第二差分に基づき、前記回転軸の位置決めを行う第二動作実行手段とを備えたことを特徴とする。数値制御装置は、レファレンス点復帰指令を第一動作と第二動作の二つの動作と解釈し、第一動作で回転軸を現在位置のまま移動せず、第二動作で移動する。故に数値制御装置はNCプログラム実行中、特定レファレンス点復帰指令が対象とする回転軸とは異なる他軸について、レファレンス点復帰指令のような位置決め指令が有る場合、他軸と回転軸の動作の整合性を取ることができる。
請求項4に係る発明の数値制御装置は、請求項1から3の何れか一つに記載の発明の構成に加え、前記回転軸はワークを保持し且つ連続回転可能な軸であることを特徴とする。故に数値制御装置は、ワークを保持し且つ連続回転可能な回転軸について、請求項1から3の何れか一つに記載の効果を得ることができる。
請求項5に係る発明の制御方法は、機械の回転軸の速度制御と位置制御をNCプログラムに従って制御する数値制御装置の制御方法において、前記NCプログラムのブロック毎に指定された制御指令を順次先読みして解釈する先読み工程と、前記先読み工程で先読みして解釈した解釈情報を記憶装置に記憶する記憶工程と、前記記憶装置から前記解釈情報を読み出して実行する実行工程とを備え、前記先読み工程は、前記回転軸の回転を停止した後の前記回転軸の最初の位置決め指令が、移動座標系を絶対座標とするアブソリュート指令か、移動座標系を相対座標とするインクレメンタル指令かを判断する第一判断工程と、前記第一判断工程で前記位置決め指令は前記アブソリュート指令と判断した場合、前記位置決め指令に基づいて前記回転軸の移動量を指示する指令移動量を、予め設定した前記回転軸の基準位置からの移動量で仮決めする仮決め工程と、前記第一判断工程で前記位置決め指令は前記インクレメンタル指令と判断した場合、前記機械の運転を停止する停止指令を前記解釈情報として前記記憶装置に記憶する停止指令記憶工程とを備え、前記実行工程は、前記記憶装置から読み出した前記解釈情報に基づき、前記仮決め工程で仮決めした前記指令移動量から、前記回転軸の位置を検出する位置検出手段が検出した現在の前記回転軸の位置を差し引いた第一差分を演算する第一演算工程と、前記第一演算工程で演算した前記第一差分に基づき、前記回転軸の位置決めを行う第一位置決め実行工程と、前記記憶装置から読み出した前記解釈情報の中に前記停止指令が有る場合、前記機械を停止する停止工程とを備えたことを特徴とする。故に数値制御装置は上記制御方法を実行することで、請求項1に記載の効果を得ることができる。
尚、数値制御装置は、請求項1の停止手段の代わりに、前記第一判断手段が前記位置決め指令は前記インクレメンタル指令と判断した場合、アラームを出力する出力手段を備えてもよい。
工作機械1の斜視図。 工作機械1の正面図。 工作機械1の右側面図。 工作機械1と数値制御装置20の電気的構成を示すブロック図。 先読み処理の流れ図。 図5の続きの流れ図。 実行処理の流れ図。 図7の続きの流れ図。 NCプログラムP1の図。 NCプログラムP2の図。 NCプログラムP3の図。 NCプログラムP4の図。
以下、本発明の実施形態を図面を参照して説明する。以下説明は図中に矢印で示す上下、左右、前後を使用する。図1に示す工作機械1の左右、前後、上下は、夫々X軸方向、Y軸方向、Z軸方向である。工作機械1は複合加工機である。図4に示す数値制御装置20は、工作機械1の動作を制御することで、ワークに回転加工又は施削加工を選択的に施すことができる。
図1〜図3を参照し、工作機械1の構造を説明する。工作機械1は、基台2、Y軸移動機構、運搬体12、X軸移動機構、コラム5、Z軸移動機構、主軸ヘッド7、主軸8、操作盤10(図4参照)、数値制御装置20(図4参照)、ワーク保持装置80、自動工具交換装置(以下「ATC」と呼ぶ)30等を備える。
基台2はY軸方向に長い矩形箱状の鉄製部材であり、下部四隅に高さ調節可能な脚3を夫々備える。基台2は上面に台座部4、右側支持部18、左側支持部19を備える。台座部4は基台2上面後部側に設ける。右側支持部18は基台2上面右前側、左側支持部19は基台2上面左前側に配置する。右側支持部18と左側支持部19はワーク保持装置80を下方から支持する。
Y軸移動機構は台座部4上面に設け、運搬体12をY軸方向に移動する。Y軸移動機構は一対のY軸レール61,62、Y軸ボールネジ63(図2参照)、Y軸モータ52(図4参照)等を備える。Y軸レール61,62は台座部4上面の左右方向両端部に沿って設ける。Y軸ボールネジ63はY軸レール61,62の間に設ける。運搬体12はY軸レール61,62に沿って移動可能である。運搬体12は例えば所定厚を有する金属製板部材であり、下面にナット(図示略)を備える。ナットはY軸ボールネジ63に螺合する。Y軸モータ52がY軸ボールネジ63を回転すると、運搬体12はナットと共にY軸方向に移動する。
X軸移動機構は運搬体12上面に設け、コラム5をX軸方向に移動する。X軸移動機構は一対のX軸レール71,72、X軸ボールネジ73、X軸モータ51等を備える。X軸レール71,72、X軸ボールネジ73はX軸方向に延設する。X軸レール71は運搬体12上面後側、X軸レール72は運搬体12上面前側に配置する。X軸ボールネジ73はX軸レール71,72の間に配置する。コラム5はX軸レール71,72に沿って移動可能である。コラム5は下面にナット(図示略)を備える。ナットはX軸ボールネジ73に螺合する。X軸モータ51がX軸ボールネジ73を回転すると、コラム5はナットと共にX軸方向に移動する。コラム5は運搬体12を介してY軸方向に移動する。即ちコラム5はY軸移動機構、X軸移動機構、運搬体12により、X軸方向とY軸方向に移動可能である。
コラム5は右側面下部に保護カバー16、左側面下部に保護カバー17、背面下部にカバー13を備える。保護カバー16はコラム5右側面から右側において露出するX軸移動機構を覆う。保護カバー17はコラム5左側面から左側において露出するX軸移動機構を覆う。保護カバー16,17はコラム5のX軸方向への移動に追従して移動する。カバー13はコラム5の背面後方において露出するY軸移動機構を覆う。カバー13はコラム5のY軸方向への移動に追従して伸縮する。保護カバー16,17、カバー13はX軸移動機構及びY軸移動機構内に切粉と切削液が侵入するのを防止する。
Z軸移動機構はコラム5前面に設け、主軸ヘッド7をZ軸方向に移動する。Z軸移動機構は一対のZ軸レール(図示略)、Z軸ボールネジ(図示略)、Z軸モータ53(図4参照)等を備える。Z軸レールとZ軸ボールネジはZ軸方向に延設する。Z軸ボールネジは一対のZ軸レールの間に配置する。主軸ヘッド7はZ軸レールに沿って移動可能である。主軸ヘッド7は背面にナット(図示略)を備える。ナットはZ軸ボールネジに螺合する。Z軸モータ53がZ軸ボールネジを回転すると、主軸ヘッド7はZ軸方向に移動する。保護カバー28は主軸ヘッド7上部後側に固定する。保護カバー28は主軸ヘッド7と共に上下動することでコラム5前面を覆う。コラム5は前面にZ軸シャッター27を備える。Z軸シャッター27は主軸ヘッド7の上下動に従い伸縮することで、Z軸移動機構内に切粉と切削液が侵入するのを防止する。
主軸8は主軸ヘッド7内に設ける。主軸8の工具装着部(図示略)は主軸ヘッド7下部に設ける。工具装着部はテーパ状の孔部である。工具装着部は工具Tを装着する。工具Tは少なくとも工具TA(図示略)、工具TB(図示略)の二種類である。工具TAは回転加工用の工具、工具TBは旋削加工用の工具である。以下、工具TA,TBを総称する時は工具Tと称する。主軸モータ54は主軸ヘッド7上面前側に設ける。主軸モータ54は主軸8を回転する。
操作盤10は工作機械1を覆うカバーの外壁に設け、入力部11と表示部14を備える。入力部11は各種入力、指示、設定等を行う為の機器である。表示部14は各種表示画面、設定画面、警告画面等を表示する機器である。数値制御装置20は工作機械1が有する制御箱(図示略)内に格納し、工作機械1の動作を制御する。数値制御装置20の電気的構成、動作等は後述する。
図1〜図3を参照し、ワーク保持装置80の構造を説明する。ワーク保持装置80は、右側固定部88、左側固定部89、治具固定テーブル81、C軸モータ56、回転テーブル82、チルトモータ57等を備える。右側固定部88は右側支持部18上面に固定する。左側固定部89は左側支持部19上面に固定する。治具固定テーブル81は、テーブル部81A、右連結部81B、左連結部81Cを備える。C軸モータ56は治具固定テーブル81の下面側に設ける。回転テーブル82は治具固定テーブル81の略中央に設ける。回転テーブル82はC軸モータ56の回転軸に連結する。治具(図示略)は回転テーブル82の上面に固定する。治具はワークを保持する。回転テーブル82の軸線方向はテーブル部81A表面に対して直交する。故に治具は回転テーブル82と共に回転可能である。
右連結部81Bはテーブル部81Aから右上方向に延出し且つ右側固定部88にX軸回りに回転可能に連結する。左連結部81Cはテーブル部81Aから左上方向に延出し且つ左側固定部89にX軸回りに回転可能に連結する。チルトモータ57は右側固定部88に固定してある。チルトモータ57は治具固定テーブル81をX軸回りに回転する。チルトモータ57の回転軸は右連結部81Bと連結する。治具に固定したワークは、C軸モータ56の駆動により回転テーブル82の軸回りで回転する。治具に固定したワークは、チルトモータ57による治具固定テーブル81の回転に関わらず、C軸モータ56の駆動によりテーブル部81Aに対して直角な軸回りで回転する。
図1〜図3を参照し、ATC30の構造を説明する。ATC30は、工具マガジン31、マガジン支持部材32、マガジンモータ55、駆動ギヤ35等を備える。マガジン支持部材32は楕円状の金属製板部材である。マガジン支持部材32は、主軸ヘッド7とコラム5を内側に挿入した状態で、コラム5に取り付ける。工具マガジン31は前方から後方に向かうに従って斜め上方に傾斜する。工具マガジン31はマガジン支持部材32の外周に沿って取り付ける。工具マガジン31はチェーン34、複数のポット37を備える。チェーン34はマガジン支持部材32の外周に沿って移動可能に取り付ける。複数のポット37はチェーン34に夫々取り付ける。ポット37は工具Tを保持可能である。ポット37は例えばアーム状に形成し且つ揺動可能に取り付ける。
マガジンモータ55はマガジン支持部材32の上部に取り付ける。マガジンモータ55の駆動軸はマガジン支持部材32の上面に直交する。マガジンモータ55の駆動軸は正逆何れの方向にも回転可能である。駆動ギヤ35はマガジンモータ55の駆動軸に取り付ける。駆動ギヤ35はマガジンモータ55の駆動軸と共に回転する。駆動ギヤ35は工具マガジン31のチェーン34に噛合する。チェーン34は駆動ギヤ35の駆動によりマガジン支持部材32の外周に沿って正逆何れかの方向に移動する。故にポット37はチェーン34と共にマガジン支持部材32の外周に沿って移動する。工具マガジン31の最下部に位置するポット37の位置は工具交換位置である。工具交換位置は主軸8に最も近接する位置である。ATC30は工具交換位置にあるポット37が保持する次工具を主軸8に装着する現工具と交換する。
工作機械1による加工方法を説明する。工作機械1は回転加工と旋削加工が可能である。回転加工は固定したワークに回転する工具TAを当てて移動する加工方法であり、例えばドリル、タップ等の孔空け加工の際に用いる。工具TAは主軸8に装着した状態で回転可能である。旋削加工は回転するワークに工具TBを当てて移動する加工方法であり、例えばフェイシング加工等に用いる。工具TBは主軸8に装着した状態では回転不能となる。また、工作機械1はチルトモータ57によりワーク姿勢をX軸回りに調整できるので、ワークの所望の部位を加工できる。尚、工作機械1は主軸モータ54とC軸モータ56を同時に回転してワークを加工することもできる。
図4を参照し、数値制御装置20と工作機械1の電気的構成を説明する。数値制御装置20はCPU21、ROM22、RAM23、不揮発性メモリ24、I/O基板26等を備える。CPU21は工作機械1の動作を制御する。ROM22は後述する各種プログラムを記憶する。RAM23は各種処理実行中に発生する各種データ、後述する各種フラグ等の各種情報を記憶し、且つ先読みバッファ23Aを備える。先読みバッファ23Aは後述する先読み処理(図5,図6参照)で発生するNCプログラムの解釈情報を記憶する。不揮発性メモリ24はNCプログラム等を記憶する。NCプログラムは複数のブロックで構成し、各ブロックは各種NCコマンドを含む。NCコマンドは制御指令である。I/O基板26は工作機械1と各種信号の入出力を行う回路基板である。
工作機械1は駆動回路41〜49を更に備える。駆動回路41〜49は夫々数値制御装置20のI/O基板26に接続する。駆動回路41はCPU21の指令信号に従いX軸モータ51に駆動電流(パルス)を出力する。エンコーダ91はX軸モータ51とI/O基板26に接続する。エンコーダ91はX軸モータ51の位置情報(モータの絶対位置情報)を検出し該検出信号をI/O基板26に入力する。駆動回路42はCPU21の指令信号に従いY軸モータ52に駆動電流を出力する。エンコーダ92はY軸モータ52とI/O基板26に接続する。エンコーダ92はY軸モータ52の位置情報を検出し該検出信号をI/O基板26に入力する。
駆動回路43はCPU21の指令信号に従いZ軸モータ53に駆動電流を出力する。エンコーダ93はZ軸モータ53とI/O基板26に接続する。エンコーダ93はZ軸モータ53の位置情報を検出し該検出信号をI/O基板26に入力する。駆動回路44はCPU21の指令信号に従い主軸モータ54に駆動電流を出力する。エンコーダ94は主軸モータ54とI/O基板26に接続する。エンコーダ94は主軸モータ54の位置情報を検出し該検出信号をI/O基板26に入力する。駆動回路45はCPU21の指令信号に従いマガジンモータ55に駆動電流を出力する。エンコーダ95はマガジンモータ55とI/O基板26に接続する。エンコーダ95はマガジンモータ55の位置情報を検出し該検出信号をI/O基板26に入力する。
駆動回路46はCPU21の指令信号に従いC軸モータ56に駆動電流を出力する。エンコーダ96はC軸モータ56とI/O基板26に接続する。エンコーダ96はC軸モータ56の位置情報を検出し該検出信号をI/O基板26に入力する。駆動回路47はCPU21の指令信号に従いチルトモータ57に駆動電流を出力する。エンコーダ97はチルトモータ57とI/O基板26に接続する。エンコーダ97はチルトモータ57の位置情報を検出し該検出信号をI/O基板26に入力する。駆動回路48はCPU21の指令信号に従いクランプ装置58に駆動電流を出力する。駆動回路49はCPU21の指令信号に従い表示部14に駆動電流を出力する。入力部11はI/O基板26に接続する。
X軸モータ51、Y軸モータ52、Z軸モータ53、主軸モータ54、マガジンモータ55は何れもサーボモータである。エンコーダ91〜97は一般的なアブソリュートエンコーダであり、回転位置の絶対位置を検出して出力する位置センサである。駆動回路41〜47はエンコーダ91〜97からフィードバック信号を受け、位置と速度のフィードバック制御を行う。駆動回路41〜49は例えばFPGA回路でもよい。
図5〜図11を参照し、CPU21が実行する制御処理を説明する。制御処理はNCプログラムを1ブロック毎に解釈し、該解釈結果に基づき工作機械1の各モータ51〜57等の駆動制御を行う。制御処理は先読み処理と実行処理で構成する。CPU21は先読み処理と実行処理を非同期で夫々実行する。本実施形態は四つのNCプログラムP1〜P3を夫々実行する時を例に説明する。
−第一実施例−
第一実施例は、図9のNCプログラムP1を先読みして実行する時を想定する。NCプログラムP1は、速度制御から位置制御に切り替える為の回転テーブル82停止後の最初の回転テーブル82の位置決め指令が、アブソリュート指令である場合の一例である。N1ブロックはM03S5000である。M03は回転テーブル82を回転するC軸回転指令、S5000は5000rpmで回転する速度指令である。N2ブロックはM05である。M05は回転テーブル82を停止するC軸停止指令である。N3ブロックはG90G00C100である。G90は移動座標系を絶対座標とするアブソリュート指令、G00は位置決め指令、C100は回転テーブル82の目標位置を100°にする指令である。M30はプログラム終了指令である。
図5,図6を参照し、先読み処理を説明する。CPU21は作業者が操作盤10の入力部11にてNCプログラムP1を選択し実行を入力した時、ROM22に記憶する先読みプログラムを読み出して本処理を実行する。
図5に示す如く、先ずCPU21は先読みバッファ23A(図4参照)に空き領域が有るか否か判断する(S1)。先読みバッファ23Aに空き領域が無い時(S1:NO)、先読みバッファ23Aに解釈情報を記憶できないので、CPU21はS1に戻って待機する。先読みバッファ23Aに空き領域が有る時(S1:YES)、CPU21はNCプログラムP1を不揮発性メモリ24から読み出し、1ブロック解釈する(S2)。CPU21は解釈したブロックの制御指令がM30か否か判断する(S3)。
N1ブロックはM30ではないので(S3:NO)、CPU21は解釈したブロックの制御指令が回転テーブル82の回転軸であるC軸以外の軸への指令か否か判断する(S4)。N1ブロックの制御指令はC軸の指令であるので(S4:NO)、CPU21は制御指令がC軸回転指令か否か判断する(S9)。制御指令はC軸回転指令であるので(S9:YES)、CPU21は回転テーブル82が回転状態であることを、第一状態フラグでRAM23に記憶する(S10)。第一状態フラグは、回転テーブル82が回転状態である時は0、回転テーブル82の位置を確定できない不定状態である時は1、回転テーブル82の位置を確定できる確定状態である時は2となる。尚、第一状態フラグの数値はこれに限定されない。回転テーブル82は回転状態であるので、CPU21は第一状態フラグとして0をRAM23に記憶する(S10)。
次いで、CPU21は速度演算処理を実行する(S5)。速度演算処理は、例えば回転制御又は位置制御が複数のブロックで連続するような時、該複数のブロックを通じて最適な回転動作を実行する為に、加速度、速度、終了速度等について、ブロック毎に演算し直す処理である。速度演算処理は例えば、第一処理、第二処理、第三処理を有する。第一処理は、先読みした複数のブロックの各終了点における終了速度を、所定条件に基づいて演算する。第二処理は、各ブロックの終了速度が加速度条件を満足するように演算し直す。第三処理は、指定した加速度、速度、終了速度の条件を満足する補間演算を行う。
CPU21は1ブロック内の全軸の指令について移動軸の種別判断が完了したか否か判断する(S6)。1ブロック内に未完了の軸指令が有る時(S6:NO)、CPU21はS4に戻って未完了の軸指令について、移動軸の種別判断を行う。全軸の指令について判断が完了した時(S6:YES)、CPU21は演算が完了したか否か判断する(S7)。回転テーブル82が回転状態である時、回転制御が次ブロック以降連続する可能性がある。故に再計算の必要があることから演算は完了していないので(S7:NO)、CPU21はS2に戻り次ブロックを解釈する。例えば解釈した次ブロックもC軸回転指令の時(S9:YES)、第一状態フラグは0のままで(S10)、CPU21は既に先読みしたブロックと合わせて速度演算処理を再度実行する(S5)。
NCプログラムP1のN2ブロックの制御指令はC軸回転指令ではないので(S9:NO)、図6に示す如く、CPU21は制御指令がC軸停止指令で且つ第一状態フラグは0か否か判断する(S12)。N2ブロックはC軸停止指令で且つ第一状態フラグは0であるので(S12:YES)、CPU21は第一状態フラグを1に更新し(S13)、回転テーブル82は不定状態であることを記憶する。図5に戻り、CPU21は速度演算処理を実行する(S5)。N2ブロック内の全軸の指令の種別判断が完了したので(S6:YES)、CPU21は演算が完了したか否か判断する(S7)。回転テーブル82は回転状態から停止するので、演算は完了する(S7:YES)。故にCPU21は解釈したブロックの解釈情報を先読みバッファ29に記憶する(S8)。CPU21はS1に戻り、先読みバッファ23Aに空き領域があれば(S1:YES)、次ブロックを解釈する(S2)。
N3ブロックの制御指令は回転テーブル82を100°の位置に位置決めするC軸位置決め指令であるので(S4:NO、S9:NO、図6のS12:NO)、図6に示す如く、CPU21は制御指令がC軸位置決め指令で且つ第一状態フラグは1か否か判断する(S14)。N3ブロックはC軸位置決め指令で且つ第一状態フラグは1であるので(S14:YES)、CPU21は回転テーブル82の位置を特定できない。そこで、CPU21はC軸位置決め指令がアブソリュート指令か否か判断する(S15)。N3ブロックのG90はアブソリュート指令であるので(S15:YES)、CPU21はC軸基準点から目的位置迄の移動量で回転テーブル82の指令移動量を仮決めする(S16)。C軸基準点は予め設定し、本実施形態のC軸基準点は0°である。目的位置は100°である。故にCPU21は回転テーブル82の指令移動量を、C軸基準点である0°から100°を差し引いた100°に仮決めする。C軸基準点は0°以外の値でもよい。CPU21は第一状態フラグを2に更新し(S17)、回転テーブル82の位置が確定状態であることを記憶する。故にCPU21は回転テーブル82の位置を特定できなくても、NCプログラムP1の先読みを停止することなく解釈を継続できる。
図5に戻り、CPU21は速度演算処理を行う(S5)。N3ブロック内の全軸の指令の種別判断が完了したので(S6:YES)、CPU21は演算が完了したか否か判断する(S7)。先読みしたブロックと合わせて演算が完了した時(S7:YES)、CPU21は解釈情報を先読みバッファ29に記憶する(S8)。N3ブロックの解釈情報は、C軸基準点からの移動量で仮決めした指令移動量(100°)を含む。CPU21はS1に戻り、先読みバッファ23Aに空き領域があれば(S1:YES)、次ブロックを解釈する(S2)。
尚、解釈したブロックの制御指令が、例えば、X軸、Y軸、Z軸等のC軸以外の他軸への指令である時(S4:YES)、CPU21は速度演算処理を実行し(S5)、演算が完了した時(S7:YES)、解釈情報を先読みバッファ23Aに記憶する(S8)。CPU21は解釈したブロックがM30の時(S3:YES)、先読み処理を終了する。
図7,図8を参照し、実行処理を実行する。CPU21は先読み処理の実行を開始した時、ROM22に記憶する実行プログラムを読み出し、先読み処理とは非同期で本処理を実行する。
図7に示す如く、先ずCPU21は先読みバッファ29に解釈情報が有るか否か判断する(S21)。先読みバッファ29に解釈情報がない時(S21:NO)、CPU21はS21に戻って待機する。先読みバッファ29に解釈情報が有る時(S21:YES)、CPU21は解釈情報を先読みバッファ29から取得する(S22)。CPU21は解釈情報が後述するアラーム指令か否か判断する(S23)。アラーム指令は、表示部14にアラームを出力し且つ工作機械1の運転停止を指示する指令である。解釈情報がアラーム指令では無い時(S23:NO)、CPU21は解釈情報がM30か否か判断する(S26)。解釈情報がM30でない時(S26:NO)、CPU21は解釈情報がC軸以外の軸への指令か否か判断する(S27)。
N1ブロックの解釈情報はC軸の指令であるので(S27:NO)、CPU21は解釈情報がC軸回転指令か否か判断する(S31)。N1ブロックはC軸回転指令であるので(S31:YES)、CPU21は回転テーブル82が回転状態であることを、第二状態フラグでRAM23に記憶する(S32)。第二状態フラグは、第一状態フラグと同様に、回転テーブル82が回転状態である時は0、回転テーブル82の位置を確定できない不定状態である時は1、回転テーブル82の位置を確定できる確定状態である時は2となる。尚、第二状態フラグの数値はこれに限定されない。回転テーブル82は回転状態であるので、CPU21は第二状態フラグとして0をRAM23に記憶する(S32)。
次いで、CPU21は解釈情報に基づき、指令軸の駆動回路に実行要求を行う(S28)。N1ブロックの解釈情報は回転テーブル82を5000rpmで回転する速度指令である。CPU21は駆動回路46(図4参照)に制御信号を出力する。駆動回路46は制御信号に基づきC軸モータ56に駆動電流を出力する。故にC軸モータ56は5000rpmで回転する。
CPU21は1ブロック内の全軸の解釈情報について、駆動回路への実行要求が完了したか否か判断する(S29)。実行要求未完了の解釈情報が有る時(S29:NO)、CPU21はS27に戻って未完了の解釈情報について実行要求を行う。全軸の解釈情報について実行要求が完了した時(S29:YES)、CPU21は実行要求した動作が完了したか否か判断する(S30)。動作が完了する迄(S30:NO)、CPU21はS30に戻って待機する。動作が完了した時(S30:YES)、CPU21はS21に戻り、先読みバッファ23Aに解釈情報があれば(S21:YES)、引き続き上記処理を繰り返す。
次いで、CPU21は先読みバッファ23AからN2ブロックの解釈情報を取得する(S22)。N2ブロックの解釈情報はC軸停止指令であるので(S23:NO、S26:NO、S27:NO、S31:NO)、図8に示す如く、CPU21は解釈情報がC軸停止指令で且つ第二状態フラグは0か否か判断する(S33)。N2ブロックはC軸停止指令で且つ第二状態フラグは0であるので(S33:YES)、CPU21は第二状態フラグを1に更新し(S34)、回転テーブル82は不定状態であることを記憶する。図7に戻り、CPU21は解釈情報に基づき、指令軸の駆動回路に実行要求を行う(S28)。N2ブロックの解釈情報は回転テーブル82の回転を停止するC軸停止指令であるので、CPU21は駆動回路46(図4参照)に制御信号を出力する。故にC軸モータ56は回転を停止する。
N2ブロック内の全軸の解釈情報について実行要求が完了し(S29:YES)、更に実行要求した動作が完了した時(S30:YES)、CPU21はS21に戻り、先読みバッファ23Aに解釈情報があれば(S21:YES)、引き続き上記処理を繰り返す。
次いで、CPU21は先読みバッファ23AからN3ブロックの解釈情報を取得する(S22)。N3ブロックの解釈情報は回転テーブル82を100°の位置に位置決めするC軸位置決め指令であるので(S23:NO、S26:NO、S27:NO、S31:NO、図8のS33:NO)、CPU21は解釈情報がC軸位置決め指令で且つ第二状態フラグは1か否か判断する(S35)。N3ブロックの解釈情報はC軸位置決め指令で且つ第二状態フラグは1であるので(S35:YES)、CPU21は回転テーブル82の位置を特定できない。そこで、CPU21は、C軸位置決め指令がインクレメンタル指令で且つ特定レファレンス点復帰指令か否か判断する(S36)。特定レファレンス点復帰指令については後述する。N3ブロックのC軸位置決め指令はG91でアブソリュート指令であるので(S36:NO)、CPU21は、回転テーブル82の現在位置をエンコーダ96(図4参照)からのフィードバック信号で検出する(S39)。CPU21は、先読み処理で仮決めした回転テーブル82の指令移動量(100°)から、検出した回転テーブル82の現在位置を差し引くことにより、C軸移動量を演算する(S40)。
回転テーブル82の現在位置が20°であった時、CPU21は100°から20°を差し引いた80°(本発明の第一差分に相当)をC軸移動量として演算する。演算したC軸移動量はRAM23に記憶する。更にCPU21は近回り判別処理を実行する(S41)。近回り判別処理は、現在位置である20°から目的位置である100°までの回転テーブル82の移動量が小さい方の回転方向(正転か反転の何れか)を判別する処理である。判別結果である回転方向はRAM23に記憶する。CPU21は第二状態フラグを2に更新し(S42)、回転テーブル82の位置が確定状態であることを記憶する。
図7に戻り、CPU21は解釈情報に基づき、指令軸の駆動回路に実行要求を行う(S28)。N3ブロックの解釈情報はC軸位置決め指令であるので、CPU21はRAM23に記憶するC軸移動量(80°)と回転方向に従い、駆動回路46に制御信号を出力する。C軸モータ56は駆動し、回転テーブル82は現在位置(20°)から近回り処理で判別した回転方向に80°回転し、100°の位置で位置決めする。故にCPU21は回転テーブル82を少ない移動量で目的位置に速やかに移動できる。
N3ブロック内の全軸の解釈情報について実行要求が完了し(S29:YES)、実行要求した動作が全て完了した時(S30:YES)、CPU21はS21に戻り、先読みバッファ23Aに解釈情報があれば(S21:YES)、引き続き上記処理を繰り返す。尚、先読みバッファ23Aから取得した解釈情報が、X軸、Y軸、Z軸等のC軸以外の他軸への指令である時(S27:YES)、該当する軸の駆動回路に実行要求を行う(S28)。解釈情報がM30であった時(S26:YES)、CPU21は実行処理を終了する。
−第二実施例−
第二実施例は、図10のNCプログラムP2を先読みして実行する時を想定する。NCプログラムP2は、回転テーブル82を速度制御から位置制御に切り替える為の回転テーブル82停止後の最初の回転テーブル82の位置決め指令がインクレメンタル指令である場合の一例である。NCプログラムP1(図9参照)とP2の違いは、N3ブロックの位置決め指令が、NCプログラムP1ではG90(アブソリュート指令)、NCプログラムP2ではG91(インクレメンタル指令)である点である。
NCプログラムP2は、N2ブロックで回転テーブル82を停止し、N3ブロックで該停止位置より+100°回転することを期待する。しかしN2ブロックで回転テーブル82の停止位置は不確定である。不確定な停止位置から+100°回転するという指令は間違いである。本実施形態は、先読み処理と実行処理において、回転テーブル82停止後の最初の回転テーブル82の位置決め指令がインクレメンタル指令だった時はアラームを表示部14に出力し、工作機械1の運転を停止するように制御する。それ故、作業者はNCプログラムP2が間違ったプログラミングであることに気付くことができる。
図5,図6を参照し、先読み処理を説明する。第一実施例で説明した先読み処理と同じ処理については説明を省略又は簡略化して説明する。図5に示す如く、先ず先読みバッファ29(図4参照)に空き領域が有る時(S1:YES)、CPU21はNCプログラムP2を不揮発性メモリ24から読み出し、1ブロック解釈する(S2)。N1ブロックとN2ブロックは第一実施例と同じであるので説明を省略する。N2ブロックの解釈終了後、第一状態フラグは1である(図6のS13)。
CPU21はN3ブロックを解釈する(S2)。N3ブロックの制御指令は回転テーブル82を100°の位置に位置決めするC軸位置決め指令であるので(S3:NO、S4:NO、S9:NO、図6のS12:NO)、CPU21は制御指令がC軸位置決め指令で第一状態フラグは1か否か判断する(S14)。N3ブロックの制御指令はC軸位置決め指令で且つ第一状態フラグは1であるので(S14:YES)、CPU21は回転テーブル82の位置を特定できない。故にCPU21はC軸位置決め指令がアブソリュート指令か否か判断する(S15)。
ここで、N3ブロックのG91はインクレメンタル指令であるので(S15:NO)、CPU21はC軸位置決め指令が後述する特定レファレンス点復帰指令か否か判断する(S18)。特定レファレンス点復帰指令はG28で指定するが、N3ブロックはG00で指定しているので(S18:NO)、C軸位置決め指令は通常のインクレメンタル指令である。即ち、回転テーブル82停止後の最初の回転テーブル82の位置決め指令がインクレメンタル指令であるので、上記の通り、NCプログラムP2は間違ってプログラミングされた可能性が高い。間違いのあるNCプログラムP2をCPU21が実行した時、工作機械1は作業者の意図と異なる動きをする可能性が高い。故にCPU21は、作業者にNCプログラムP2の異常を報知する為に、アラーム指令をN3ブロックの解釈情報として、先読みバッファ23Aに記憶し(S19)、先読み処理を終了する。
図7を参照し、実行処理を説明する。先ず、先読みバッファ29に解釈情報が有る時(S21:YES)、CPU21は解釈情報を先読みバッファ29から取得する(S22)。N1、N2ブロックの解釈情報は、第一実施例と同じである。それ故、CPU21は、N1ブロックの解釈情報に従い回転テーブル82を5000rpmで回転し、N2ブロックの解釈情報に従い回転テーブル82を停止する。
CPU21はN3ブロックの解釈情報を先読みバッファ23Aから取得し(S22)、アラーム指令か否か判断する(S23)。N3ブロックの解釈情報はアラーム指令であるので(S23:YES)、CPU21はアラームを表示部14に出力し(S24)、更に工作機械1の運転を停止する(S25)。故に作業者はNCプログラムP2が間違ってプログラミングされていることに気付くことができる。また、工作機械1は運転を停止するので、作業者の意図と異なった動きをすることを防止できる。CPU21は実行処理を終了する。
−第三実施例−
第三実施例は、図11のNCプログラムP3を先読みして実行する時を想定する。NCプログラムP3は、回転テーブル82を速度制御から位置制御に切り替える為の回転テーブル82停止後の最初の回転テーブル82の位置決め指令が、中間点への移動の無いレファレンス点復帰指令である場合の一例である。
レファレンス点復帰指令を説明する。レファレンス点復帰指令とは、指令した座標点(中間点)への移動後、予め登録したレファレンス点への移動を行うという二動作からなる位置決め指令であり、本実施形態ではG28で指定する。レファレンス点復帰動作は、第一動作と第二動作で構成する。第一動作は現在位置から中間点への移動、第二動作は中間点からレファレンス点迄の移動である。例えばアブソリュートモードでG28X10.と指令した時、X軸は10.に早送りで移動した後(第一動作)、レファレンス点に早送りで移動する(第二動作)。インクレメンタルモードでG28Y20.と指令した時、Y軸は現在位置から20.に早送りで移動した後(第一動作)、レファレンス点に早送りで移動する(第二動作)。レファレンス点復帰指令は、Z軸、C軸等にも同様に使用できる。
ここで、レファレンス点復帰指令をインクレメンタルモードで0.を指令した時、現在位置は中間点となり、現在位置から一動作でレファレンス点への移動を行うという意味になる。本実施形態は、中間点に0.を指令するレファレンス点復帰指令を、特定レファレンス点復帰指令と呼ぶ。インクレメンタルモードの特定レファレンス点復帰指令は、例えば部材同士の干渉防止の為の退避動作、NCプログラム先頭での初期化処理としても使用できる。特定レファレンス点復帰指令は、X軸、Y軸、Z軸の他、C軸にも同様に使用できる。
図11に示す如く、NCプログラムP3では、N1ブロックはM141である。M141は回転テーブル82の速度制御から位置制御への切換え指令で、且つ回転テーブル82の回転を停止する停止指令である。N2ブロックはG91G28C0.であるので、インクレメンタルモードでの回転テーブル82の特定レファレンス点復帰指令である。尚、第三実施例は回転テーブル82のレファレンス点を100°に設定した時を想定する。
回転テーブル82停止後の最初のC軸位置決め指令がインクレメンタル指令である時、第二実施例では、CPU21はアラームを出力し、工作機械1の運転を停止する。そこで、制御指令がインクレメンタル指令で且つ特定レファレンス点復帰指令である時、上記の退避動作、又はNCプログラム先頭での初期化処理等を可能とする為に、CPU21は先読み処理と実行処理において、アラームを出力せずに運転を継続するように制御する。
図5,図6を参照し、先読み処理を説明する。第一実施例で説明した先読み処理と同じ処理については説明を省略又は簡略化して説明する。図5に示す如く、先読みバッファ23Aに空き領域が有る時(S1:YES)、CPU21はNCプログラムP3を不揮発性メモリ24から読み出し、1ブロック解釈する(S2)。N1ブロックのM141は回転テーブル82の速度制御から位置制御への切換え指令で且つC軸停止指令であるので(S3:NO、S4:NO、S9:NO)、図6に示す如く、CPU21は制御指令がC軸停止指令で且つ第一状態フラグは0か否か判断する(S12)。N1ブロックはC軸停止指令であり、第一状態フラグは0であるので(S12:YES)、CPU21は第一状態フラグを1に更新し(S13)、回転テーブル82は不定状態であることを記憶する。
図5に戻り、CPU21は速度演算処理を実行する(S5)。N2ブロック内の全軸指令の判断が完了し(S6:YES)、回転テーブル82の停止で演算は完了したので(S7:YES)、CPU21は解釈したブロックの解釈情報を先読みバッファ23Aに記憶する(S8)。CPU21はS1に戻り、先読みバッファ23Aに空き領域があれば(S1:YES)、次ブロックを解釈する(S2)。
次いで、N2ブロックの制御指令は、回転テーブル82の特定レファレンス点復帰指令であるので(S3:NO、S4:NO、S9:NO、図6のS12:NO)、CPU21は制御指令がC軸位置決め指令で且つ第一状態フラグは1か否か判断する(S14)。特定レファレンス点復帰指令は位置決め指令で且つ第一状態フラグは1であるので(S14:YES)、CPU21は回転テーブル82の特定レファレンス点復帰指令はアブソリュート指令か否か判断する(S15)。N2ブロックのG91はインクレメンタル指令であるので(S15:NO)、CPU21は制御指令が特定レファレンス点復帰指令か否か判断する(S18)。
ここで、レファレンス点復帰指令が特定レファレンス点復帰指令でない時(S18:NO)、インクレメンタルモードであるので、CPU21は回転テーブル82の停止位置が特定できず、中間点を算出できない。それ故、NCプログラムは間違ってプログラミングされている可能性が高いので、CPU21はアラーム指令をブロックの解釈情報として先読みバッファ23Aに記憶し(S19)、先読み処理を終了する。
これに対し、NCプログラムP3のN2ブロックは、インクレメンタルモードでの特定レファレンス点復帰指令であるので(S18:YES)、CPU21は、レファレンス点復帰指令の第一動作指令の指令移動量として、C軸基準点から目的位置迄の移動量を0°に仮決めし、第二動作指令の指令移動量として、0°からレファレンス点(100°)までの移動量で仮決めする(S16)。CPU21は第一状態フラグを2に更新し(S17)、回転テーブル82の位置が確定状態であることを記憶する。
図5に戻り、CPU21は速度演算処理を行う(S5)。N2ブロック内の全軸の指令の種別判断が完了し(S6:YES)、先読みしたブロックと合わせて演算を完了した時(S7:YES)、CPU21は解釈情報を先読みバッファ29に記憶する(S8)。N2ブロックの解釈情報は、レファレンス点復帰指令の第一動作指令の指令移動量(0°)と第二動作指令の指令移動量(100°)を含む。CPU21はS1に戻り、先読みバッファ23Aに空き領域があれば(S1:YES)、次ブロックを解釈する(S2)。CPU21は解釈したブロックがM30の時(S3:YES)、先読み処理を終了する。
図7,図8を参照し、実行処理を説明する。図7に示す如く、先ず先読みバッファ29に解釈情報が有る時(S21:YES)、CPU21は解釈情報を先読みバッファ29から取得する(S22)。N1ブロックの解釈情報は、回転テーブル82の速度制御から位置制御への切替え指令で且つC軸停止指令であるので(S23:NO、S26:NO、S27:NO、S31:NO)、図8に示す如く、CPU21は解釈情報がC軸停止指令で且つ第二状態フラグは0か否か判断する(S33)。N1ブロックはC軸停止指令であり、第二状態フラグは0であるので(S33:YES)、CPU21は第二状態フラグを1に更新し(S34)、回転テーブル82は不定状態であることを記憶する。
図7に戻り、CPU21は解釈情報に基づき、指令軸の駆動回路に実行要求を行う(S28)。N1ブロックの解釈情報は、速度制御から位置制御への切換え指令で、且つ回転テーブル82の回転を停止するC軸停止指令であるので、CPU21は駆動回路46(図4参照)に制御信号を出力する。故にC軸モータ56は回転を停止し、速度制御から位置制御に切り替わる。N1ブロック内の全軸の解釈情報について実行要求が完了し(S29:YES)、実行要求した動作が完了した時(S30:YES)、CPU21はS21に戻り、先読みバッファ23Aに解釈情報があれば(S21:YES)、引き続き上記処理を繰り返す。
次いで、CPU21は先読みバッファ23AからN2ブロックの解釈情報を取得する(S22)。N2ブロックの解釈情報は、回転テーブル82の特定レファレンス点復帰指令であるので(S23:NO、S26:NO、S27:NO、S31:NO、図8のS33:NO)、CPU21は解釈情報がC軸位置決め指令で且つ第二状態フラグは1か否か判断する(S35)。特定レファレンス点復帰指令はC軸位置決め指令で且つ第二状態フラグは1であるので(S35:YES)、CPU21は制御指令がインクレメンタル指令で且つ特定レファレンス点復帰指令か否か判断する(S36)。N2ブロックは特定レファレンス点復帰指令で、G91はインクレメンタル指令であるので(S36:YES)、CPU21はRAM23に記憶する再計算フラグをONし(S37)、第二状態フラグを2に更新する(S38)。
図7に戻り、CPU21は解釈情報に基づき、回転テーブル82の駆動回路46に実行要求を行う(S28)。N2ブロックの解釈情報は、回転テーブル82の特定レファレンス点復帰指令の第一動作指令の指令移動量(0°)と第二動作指令の指令移動量(100°)を含む。CPU21は最初に第一動作指令について実行要求を行う。第一動作指令の回転テーブル82の指令移動量は0°であるので、C軸モータ56は移動しない。
ここで、N2ブロックの解釈情報には、第二動作指令の回転テーブル82の指令移動量が有るので(S29:NO)、第二動作指令を実行する為に、CPU21はS27に戻る。第二動作指令も回転テーブルの位置決め指令であるので(S27:NO、S31:NO、図8のS33:NO)、図8に示す如く、CPU21は解釈情報がC軸位置決め指令で且つ第二状態フラグは1か否か判断する(S35)。第二動作指令はC軸位置決め指令であるが、第二状態フラグは2であるので(S35:NO)、CPU21は、再計算フラグがONで且つ第二状態フラグは2か否か判断する(S43)。再計算フラグはONで且つ第二状態フラグは2であるので(S43:YES)、CPU21は再計算フラグをOFFし(S44)、第二動作指令の回転テーブル82の移動量を演算する為に、回転テーブル82の現在位置をエンコーダ96からのフィードバック信号で検出する(S45)。
次いで、CPU21は、回転テーブル82の第二動作指令の指令移動量から、回転テーブル82の現在位置を差し引くことでC軸移動量を演算する(S46)。回転テーブル82の現在位置が30°であった時、CPU21は第二動作指令の指令移動量である100°から30°を差し引いた70°(本発明の第二差分に相当)をC軸移動量として演算し、RAM23に記憶する。更にCPU21は近回り判別処理を実行する(S47)。
図7に戻り、CPU21は解釈情報に基づき、指令軸の駆動回路に実行要求を行う(S28)。第一動作指令の実行要求は完了しているので、CPU21は第二動作指令について実行要求を行う。第二動作指令の回転テーブル82の指令移動量は70°であるので、CPU21は駆動回路46に制御信号を出力する。C軸モータ56は駆動し、回転テーブル82は現在位置(30°)から近回り処理で判別した回転方向に70°回転し、100°の位置で位置決めする。故にCPU21は、回転テーブル82を速度制御から位置制御に切り替える為の回転テーブル82停止後の最初の回転テーブル82の位置決め指令がインクレメンタル指令であっても、特定レファレンス点復帰指令である時は、アラームを出力することなく、回転テーブル82をレファレンス点に少ない移動量で速やかに移動できる。
N2ブロック内の全軸の解釈情報について実行要求が完了し(S29:YES)、更に実行要求した動作が全て完了した時(S30:YES)、CPU21はS21に戻り、先読みバッファ23Aに解釈情報があれば(S21:YES)、引き続き上記処理を繰り返す。尚、先読みバッファ23Aから取得した解釈情報が、M30、位置決め指令、回転指令、停止指令、アラーム指令以外の指令(例えば、補間指令、工具長補正指令、工具径補正指令、ドリルサイクル指令等)の時(S43:NO)、CPU21は図7のS28に処理を進め、駆動回路に実行要求を行う。解釈情報がM30であった時(S26:YES)、CPU21は実行処理を終了する。
次に、回転テーブル82の特定レファレンス点復帰指令を二段階の動作に分けて制御する理由を説明する。第三実施例では、制御指令がインクレメンタルモードで回転テーブル82の特定レファレンス復帰指令の場合、現在位置から一動作でレファレンス点に移動する動作であっても、CPU21は、現在位置からレファレンス点までの移動を第一動作と第二動作に分け、夫々の回転テーブル82の指令移動量を演算して回転テーブル82を二段階で移動する制御を行う。理由は以下の通りである。NCプログラムP3では、N3ブロックは回転テーブル82単独の特定レファレンス点復帰指令であるが、他の軸(X軸、Y軸、Z軸)も同時にG28で指令することがある。レファレンス点復帰指令を解釈した場合、CPU21は二つの内部指令を生成するので、他の軸の動作と互いに整合性を取る必要がある。それ故、本実施形態は、回転テーブル82の特定レファレンス復帰指令であっても、第一動作を移動のない指令(0°)として扱い、第二動作を現在位置からレファレンス点迄の移動指令として扱う。よって、G28で同時指令した軸は、互いに干渉せず、夫々のレファレンス点に同時に到達できる。
次に、レファレンス点復帰指令を、アブソリュートモードとインクレメンタルモードで指令した時の動作の違いを説明する。レファレンス点復帰指令は、インクレメンタル指令の他に、アブソリュート指令で指定する時もある。例えば、G28X−10.C0.のレファレンス点復帰指令を例に説明する。X軸のレファレンス点を−200.000、回転テーブル82のレファレンス点を90.000に予め設定したと仮定する。X軸の現在位置は−50.000、回転テーブル82の現在位置は180.000と仮定する。NCプログラムは該条件でG28X−10.C0.を指令すると、CPU21は内部的に以下のような二つの指令を生成する。尚、CPU21は、各モータの駆動回路に対して常に現在位置からのインクレメンタル量で指令する。
−アブソリュート指令の場合−
・第一動作指令:G91G0X40.C−180.
・第二動作指令:G91G0X−190.C90.
各動作の終了時座標は以下の通りである。
・第一動作終了後の終了時座標:X軸:−10.000、C軸:0.000
・第二動作終了後の終了時座標:X軸:−200.000、C軸:90.000
−インクレメンタル指令の場合−
・第一動作指令:G91G0X−10.C0.
・第二動作指令:G91G0X−140.C−90.
各動作の終了時座標は以下の通りである。
・第一動作終了後の終了時座標:X軸:−60.000、C軸:180.000
・第二動作終了後の終了時座標:X軸:−200.000、C軸:90.000
上記の如く、同一のレファレンス点復帰指令であっても、アブソリュート指令とインクレメンタル指令とでは、第二動作終了時の移動軸の座標位置は同じであるが、第一動作終了時の移動軸の座標位置(中間点)は互いに異なる。
そして、回転テーブル82の他に、他の軸もインクレメンタルモードでG28を同時指令した時、回転テーブル82については特定レファレンス点復帰指令であっても、上記の如く、他の軸は設定された中間点に夫々移動する。それ故、回転テーブル82のみ最初の一回の動作でレファレンス点に到達してしまうと、他の軸の動作と整合性が取れず、干渉する可能性がある。そこで、上記の通り、本実施形態は、特定レファレンス復帰指令であっても、第一動作を移動のない指令(0°)として扱い、第二動作を現在位置からレファレンス点迄の移動指令として扱うことにより、G28で同時指令した移動軸は、夫々のレファレンス点に互いに同時に到達できる。
以上説明にて、工作機械1は本発明の機械に相当し、回転テーブル82は本発明の回転軸に相当し、図5,6の先読み処理を実行するCPU21は本発明の先読み手段に相当し、先読みバッファ23Aは本発明の記憶装置に相当し、S8の処理を実行するCPU21は本発明の記憶手段に相当し、図7,図8の処理を実行するCPU21は本発明の実行手段に相当し、S15の処理を実行するCPU21は本発明の第一判断手段に相当し、S16の処理を実行するCPU21は本発明の仮決め手段に相当し、S19の処理を実行するCPU21は本発明の停止指令記憶手段に相当し、エンコーダ96は本発明の位置検出手段に相当し、S40の処理を実行するCPU21は本発明の第一演算手段に相当し、S28の処理を実行するCPU21は本発明の第一位置決め実行手段に相当し、S23:YES、S25の処理を実行するCPU21は本発明の停止手段に相当し、S18の処理を実行するCPU21は本発明の第二判断手段に相当し、S36:YES、S28の処理を実行するCPU21は本発明の第一動作実行手段に相当し、S45、S46の処理を実行するCPU21は本発明の第二演算手段に相当し、S28の処理を実行するCPU21は本発明の第二動作実行手段に相当する。
以上説明の如く、本実施形態の数値制御装置20は工作機械1の運転を制御する。数値制御装置20のCPU21は先読み処理と実行処理でNCプログラムを先読みしながら実行する。先読み処理では、CPU21はNCプログラムを1ブロック毎解釈し、解釈情報を先読みバッファ23Aに記憶する。実行処理では、CPU21は先読みバッファ23Aに記憶する解釈情報に基づき動作を実行する。更に先読み処理では、CPU21は回転テーブル82の回転を停止した後の最初の回転テーブル82の位置決め指令がアブソリュート指令かインクレメンタル指令か判断する。位置決め指令がアブソリュート指令の時、CPU21は位置決め指令に基づいて回転テーブル82の指令移動量を、予め設定したC軸基準位置からの移動量で仮決めする。位置決め指令がインクレメンタル指令の時、CPU21は工作機械1の運転を停止する停止指令を解釈情報として先読みバッファ23Aに記憶する。
更に実行処理では、回転テーブル82停止後に最初の位置決め指令をアブソリュート指令で実行する時、CPU21は先読みバッファ23Aから読み出した解釈情報に基づき、仮決めした回転テーブル82の指令移動量から、エンコーダ96が検出した現在の回転テーブル82の位置を差し引いた差分を演算する。CPU21は演算した差分を回転テーブル82の移動量として、回転テーブル82の位置決めを行う。先読みバッファ23Aから読み出した解釈情報にアラーム指令が有る時、NCプログラムは間違ってプログラミングされている可能性があるので、CPU21は工作機械1の運転を停止する。それ故、数値制御装置20は、工作機械1が作業者の意図と異なる動作を行うことを防止できる。また作業者はNCプログラムが間違ってプログラミングされていることに気付くことができる。
本実施形態のCPU21は更に、先読み処理において、回転テーブル82停止後の最初の位置決め指令がインクレメンタル指令の時、該位置決め指令は特定レファレンス点復帰指令であるか否か判断する。インクレメンタル指令で特定レファレンス点復帰指令の時、CPU21は回転テーブル82の指令移動量を、C軸基準位置からレファレンス点までの移動量として仮決めする。それ故、数値制御装置20は、回転テーブル82の回転を停止した後の最初の回転軸への位置決め指令がインクレメンタル指令であっても、特定レファレンス点復帰指令の時は工作機械1の運転を停止しない。故に数値制御装置20は工作機械1の動作を継続でき、且つNCプログラムの制限を少なくできる。
本実施形態のCPU21は更に、先読み処理において、特定レファレンス点復帰指令を先読みして解釈する時、第一動作指令と第二動作指令に分けて解釈する。第一動作指令は現在位置から中間位置までの移動量を0°とする指令である。第二動作指令は現在位置からの移動量が0°である中間位置からレファレンス点までの移動量を指令移動量とする指令である。更に実行処理において、CPU21は第一動作指令に基づき、現在位置から移動しない。第一動作を実行した後で、CPU21は第二動作に基づき、指令移動量から、現在の回転テーブル82の位置を差し引いた差分を演算する。CPU21は演算した差分を回転テーブル82の移動量として、回転テーブル82の位置決めを行う。故に数値制御装置20はNCプログラム実行中、特定レファレンス点復帰指令が対象とする回転テーブル82のC軸とは異なる他軸について、レファレンス点復帰指令のような位置決め指令が有る時、他軸と回転テーブル82の動作の整合性を取ることができる。
本実施形態では更に、ワークを保持し且つ連続回転可能な軸である回転テーブル82について、上記制御を行う。故に数値制御装置20は速度制御から位置制御に切り替え可能な回転軸について、上記効果を得ることができる。
尚、本発明は上記実施形態に限らず種々の変更が可能である。上記実施形態は、複合加工機である工作機械1について説明したが、例えば旋盤のような回転軸を1つ備える機械であってもよい。また、連続回転可能な付加軸を備える工作機械であってもよい。
上記実施形態は、回転テーブル82を本発明の回転軸として説明したが、速度制御から位置制御に切り替え可能な回転軸であれば他の移動軸、又は付加軸であってもよい。
上記実施形態は、先読み処理で解釈した解釈情報をRAM23の先読みバッファ23Aに記憶するが、その他の記憶装置に記憶してもよく、専用の記憶装置を設けてもよい。
上記実施形態は、回転テーブル82のインクレメンタル指令での特定レファレンス点復帰指令について、第三実施例でNCプログラムP3を用いて説明したが、特定レファレンス点復帰指令は、例えば図12のNCプログラムP4のような使い方ができる。NCプログラムP4では、N1ブロックはG40G49M141である。G40は工具径補正キャンセル、G49は工具長補正キャンセル、M141は回転テーブル82の速度制御から位置制御への切替え指令(停止指令)である。N2ブロックはG91G28Z0.である。G91はインクレメンタル指令、G28Z0.はZ軸現在位置からレファレンス点への移動を指示する特定レファレンス点復帰指令である。N3ブロックはG28X0.Y0.C0.である。これはX,Y,C軸について現在位置からレファレンス点の移動を指示する特定レファレンス点復帰指令である。このようなNCプログラムP4では、プログラム先頭に各軸の特定レファレンス点復帰指令を入れることで、初期化処理として機能することができる。
1 工作機械
20 数値制御装置
21 CPU
23 RAM
23A 先読みバッファ
82 回転テーブル
96 エンコーダ

Claims (5)

  1. 機械の回転軸の速度制御と位置制御をNCプログラムに従って制御する数値制御装置において、
    前記NCプログラムのブロック毎に指定された制御指令を順次先読みして解釈する先読み手段と、
    前記先読み手段で先読みして解釈した解釈情報を記憶装置に記憶する記憶手段と、
    前記記憶装置から前記解釈情報を読み出して実行する実行手段と
    を備え、
    前記先読み手段は、
    前記回転軸の回転を停止した後の前記回転軸の最初の位置決め指令が、移動座標系を絶対座標とするアブソリュート指令か、移動座標系を相対座標とするインクレメンタル指令かを判断する第一判断手段と、
    前記第一判断手段が前記位置決め指令は前記アブソリュート指令と判断した場合、前記位置決め指令に基づいて前記回転軸の移動量を指示する指令移動量を、予め設定した前記回転軸の基準位置からの移動量で仮決めする仮決め手段と、
    前記第一判断手段が前記位置決め指令は前記インクレメンタル指令と判断した場合、前記機械の運転を停止する停止指令を前記解釈情報として前記記憶装置に記憶する停止指令記憶手段と
    を備え、
    前記実行手段は、
    前記記憶装置から読み出した前記解釈情報に基づき、前記仮決め手段が仮決めした前記指令移動量から、前記回転軸の位置を検出する位置検出手段が検出した現在の前記回転軸の位置を差し引いた第一差分を演算する第一演算手段と、
    前記第一演算手段が演算した前記第一差分に基づき、前記回転軸の位置決めを行う第一位置決め実行手段と、
    前記記憶装置から読み出した前記解釈情報の中に前記停止指令が有る場合、前記機械を停止する停止手段と
    を備えた
    ことを特徴とする数値制御装置。
  2. 請求項1に記載の数値制御装置において、
    前記先読み手段は、
    前記第一判断手段が前記位置決め指令は前記インクレメンタル指令と判断した場合、該位置決め指令は、現在位置から中間位置への移動の無い特定レファレンス点復帰指令であるか否か判断する第二判断手段と
    を備え、
    前記仮決め手段は、
    前記第二判断手段が前記位置決め指令は前記特定レファレンス点復帰指令と判断した場合、前記指令移動量を、前記基準位置から前記特定レファレンス点復帰指令が指示するレファレンス点までの移動量として仮決めする
    ことを特徴とする数値制御装置。
  3. 請求項2に記載の数値制御装置において、
    前記先読み手段は、
    前記特定レファレンス点復帰指令を先読みして解釈する場合、
    前記現在位置から前記中間位置までの移動量を0°とする第一動作指令、
    前記現在位置からの移動量が0°である前記中間位置から前記レファレンス点までの移動量を、前記仮決め手段が仮決めする前記指令移動量とする第二動作指令として解釈し、
    前記実行手段は、
    前記第一動作指令に基づき、前記現在位置から移動しない第一動作実行手段と、
    前記第一動作実行手段が前記第一動作を実行した後で、前記第二動作に基づき、前記指令移動量から、前記位置検出手段が検出した現在の前記回転軸の位置を差し引いた第二差分を演算する第二演算手段と、
    前記第二演算手段が演算した前記第二差分に基づき、前記回転軸の位置決めを行う第二動作実行手段と
    を備えた
    ことを特徴とする数値制御装置。
  4. 請求項1から3の何れか一つに記載の数値制御装置において、
    前記回転軸はワークを保持し且つ連続回転可能な軸である
    ことを特徴とする数値制御装置。
  5. 機械の回転軸の速度制御と位置制御をNCプログラムに従って制御する数値制御装置の制御方法において、
    前記NCプログラムのブロック毎に指定された制御指令を順次先読みして解釈する先読み工程と、
    前記先読み工程で先読みして解釈した解釈情報を記憶装置に記憶する記憶工程と、
    前記記憶装置から前記解釈情報を読み出して実行する実行工程と
    を備え、
    前記先読み工程は、
    前記回転軸の回転を停止した後の前記回転軸の最初の位置決め指令が、移動座標系を絶対座標とするアブソリュート指令か、移動座標系を相対座標とするインクレメンタル指令かを判断する第一判断工程と、
    前記第一判断工程で前記位置決め指令は前記アブソリュート指令と判断した場合、前記位置決め指令に基づいて前記回転軸の移動量を指示する指令移動量を、予め設定した前記回転軸の基準位置からの移動量で仮決めする仮決め工程と、
    前記第一判断工程で前記位置決め指令は前記インクレメンタル指令と判断した場合、前記機械の運転を停止する停止指令を前記解釈情報として前記記憶装置に記憶する停止指令記憶工程と
    を備え、
    前記実行工程は、
    前記記憶装置から読み出した前記解釈情報に基づき、前記仮決め工程で仮決めした前記指令移動量から、前記回転軸の位置を検出する位置検出手段が検出した現在の前記回転軸の位置を差し引いた第一差分を演算する第一演算工程と、
    前記第一演算工程で演算した前記第一差分に基づき、前記回転軸の位置決めを行う第一位置決め実行工程と、
    前記記憶装置から読み出した前記解釈情報の中に前記停止指令が有る場合、前記機械を停止する停止工程と
    を備えた
    ことを特徴とする制御方法。
JP2014174944A 2014-08-29 2014-08-29 数値制御装置と制御方法 Active JP6299527B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2014174944A JP6299527B2 (ja) 2014-08-29 2014-08-29 数値制御装置と制御方法
CN201510500719.6A CN105388852B (zh) 2014-08-29 2015-08-14 数控装置、机床和控制方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014174944A JP6299527B2 (ja) 2014-08-29 2014-08-29 数値制御装置と制御方法

Publications (2)

Publication Number Publication Date
JP2016051249A true JP2016051249A (ja) 2016-04-11
JP6299527B2 JP6299527B2 (ja) 2018-03-28

Family

ID=55421232

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014174944A Active JP6299527B2 (ja) 2014-08-29 2014-08-29 数値制御装置と制御方法

Country Status (2)

Country Link
JP (1) JP6299527B2 (ja)
CN (1) CN105388852B (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106227151A (zh) * 2016-07-14 2016-12-14 广东工业大学 应用于数控机床的数据处理方法、装置和数控机床
JP2017204188A (ja) * 2016-05-12 2017-11-16 ファナック株式会社 条件指定による加工プログラム先読み開始機能を備えた数値制御装置
CN107885161A (zh) * 2016-09-29 2018-04-06 兄弟工业株式会社 数值控制装置和控制方法
CN108227628A (zh) * 2016-12-21 2018-06-29 德马吉森精机株式会社 加工程序解析装置、加工程序解析程序和加工程序解析方法

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109643091B (zh) * 2016-08-24 2020-07-14 三菱电机株式会社 可编程逻辑控制器
DE102017127098B8 (de) * 2016-11-24 2023-05-04 Fanuc Corporation Gerät und Verfahren zum Annehmen eines Anormalitätsauftretens für Teleskopabdeckung
CN106647619B (zh) * 2016-11-28 2020-07-07 金舜 伺服驱动器主轴位置的快速设定方法
JP6881362B2 (ja) * 2018-03-16 2021-06-02 ブラザー工業株式会社 数値制御装置
JP6838031B2 (ja) * 2018-10-31 2021-03-03 ファナック株式会社 数値制御システム
JP6838030B2 (ja) * 2018-10-31 2021-03-03 ファナック株式会社 数値制御装置
JP6885914B2 (ja) * 2018-10-31 2021-06-16 ファナック株式会社 数値制御装置

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01312605A (ja) * 1988-06-13 1989-12-18 Sodick Co Ltd 放電加工機
JPH05127726A (ja) * 1991-10-30 1993-05-25 Murata Mach Ltd Nc加工機の座標指定方法
JPH0991016A (ja) * 1995-09-22 1997-04-04 Fanuc Ltd 数値制御装置
JP2007172325A (ja) * 2005-12-22 2007-07-05 Toshiba Mach Co Ltd 自由曲線加工法および数値制御装置
JP2009146157A (ja) * 2007-12-13 2009-07-02 Fanuc Ltd 制御モード切り換え機能を有する数値制御装置
JP2014048761A (ja) * 2012-08-30 2014-03-17 Brother Ind Ltd 数値制御装置

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4769583A (en) * 1987-05-01 1988-09-06 General Motors Corporation Motion control system with minimum time path generation
CN102029446B (zh) * 2009-09-29 2013-02-27 兄弟工业株式会社 数控装置
JP5556656B2 (ja) * 2010-12-28 2014-07-23 ブラザー工業株式会社 数値制御工作機械、制御プログラム及び記憶媒体
JP2012206227A (ja) * 2011-03-30 2012-10-25 Brother Industries Ltd 工作機械
JP5942741B2 (ja) * 2012-09-26 2016-06-29 ブラザー工業株式会社 数値制御装置と回転テーブル位置調整方法
JP5979037B2 (ja) * 2013-02-27 2016-08-24 ブラザー工業株式会社 回転テーブル装置と工作機械

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01312605A (ja) * 1988-06-13 1989-12-18 Sodick Co Ltd 放電加工機
JPH05127726A (ja) * 1991-10-30 1993-05-25 Murata Mach Ltd Nc加工機の座標指定方法
JPH0991016A (ja) * 1995-09-22 1997-04-04 Fanuc Ltd 数値制御装置
JP2007172325A (ja) * 2005-12-22 2007-07-05 Toshiba Mach Co Ltd 自由曲線加工法および数値制御装置
JP2009146157A (ja) * 2007-12-13 2009-07-02 Fanuc Ltd 制御モード切り換え機能を有する数値制御装置
JP2014048761A (ja) * 2012-08-30 2014-03-17 Brother Ind Ltd 数値制御装置

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017204188A (ja) * 2016-05-12 2017-11-16 ファナック株式会社 条件指定による加工プログラム先読み開始機能を備えた数値制御装置
US10338570B2 (en) 2016-05-12 2019-07-02 Fanuc Corporation Numerical controller
CN106227151A (zh) * 2016-07-14 2016-12-14 广东工业大学 应用于数控机床的数据处理方法、装置和数控机床
CN107885161A (zh) * 2016-09-29 2018-04-06 兄弟工业株式会社 数值控制装置和控制方法
CN107885161B (zh) * 2016-09-29 2020-04-03 兄弟工业株式会社 数值控制装置和控制方法
CN108227628A (zh) * 2016-12-21 2018-06-29 德马吉森精机株式会社 加工程序解析装置、加工程序解析程序和加工程序解析方法
CN108227628B (zh) * 2016-12-21 2022-08-02 德马吉森精机株式会社 加工程序解析装置、计算机可读取的记录介质和加工程序解析方法

Also Published As

Publication number Publication date
CN105388852B (zh) 2018-06-19
JP6299527B2 (ja) 2018-03-28
CN105388852A (zh) 2016-03-09

Similar Documents

Publication Publication Date Title
JP6299527B2 (ja) 数値制御装置と制御方法
JP5958188B2 (ja) 数値制御装置
EP2915626B1 (en) Processing program generation method and device
JP2006227886A (ja) サーボ制御装置及びサーボ系の調整方法
WO2012057231A1 (ja) 送り軸反転時の補正方法
JP2010092405A (ja) 数値制御工作機械
JP2006075916A (ja) 工作機械の保護カバー開閉装置
JP6801552B2 (ja) 工作機械及び制御方法
JP2016085650A (ja) 数値制御装置と制御方法
JP5136853B2 (ja) 数値制御式工作機械及び数値制御式工作機械の制御プログラム
JP6665645B2 (ja) 数値制御装置と制御方法
JP7035875B2 (ja) 数値制御装置、数値制御方法、及び数値制御プログラム
JP2013071203A (ja) 数値制御装置及び制御方法
JP4867876B2 (ja) 数値制御装置、数値制御プログラム及び数値制御プログラムを記憶した記憶媒体
JP2009181405A (ja) 数値制御装置及び数値制御装置用移動量補正制御プログラム
JP6028573B2 (ja) 制御システム、工作機械、サーボモータ制御装置及び位置情報送受信方法
JP2013193184A (ja) 工作機械
JP2012011492A (ja) 工具配置算出装置、工具配置算出プログラムおよび記憶媒体
JP5861522B2 (ja) 工作機械
JP2009110223A (ja) 数値制御装置、数値制御プログラム及び数値制御プログラムを記憶した記憶媒体
JP2011255463A (ja) 回転軸を備えたワイヤカット放電加工機の数値制御装置
JP6879256B2 (ja) 工作機械、制御方法及びコンピュータプログラム
JP2010017800A (ja) バリ取り方法及びバリ取り装置
JP2008234278A (ja) 数値制御装置、制御プログラム、制御プログラム記録媒体及び工作機械
JP5998575B2 (ja) 工作機械及び工作方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20170316

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

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20180130

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20180212

R150 Certificate of patent or registration of utility model

Ref document number: 6299527

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150