JP2018142194A - 数値制御装置および工作機械システム - Google Patents

数値制御装置および工作機械システム Download PDF

Info

Publication number
JP2018142194A
JP2018142194A JP2017036405A JP2017036405A JP2018142194A JP 2018142194 A JP2018142194 A JP 2018142194A JP 2017036405 A JP2017036405 A JP 2017036405A JP 2017036405 A JP2017036405 A JP 2017036405A JP 2018142194 A JP2018142194 A JP 2018142194A
Authority
JP
Japan
Prior art keywords
unit
command
block information
program
analysis result
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
JP2017036405A
Other languages
English (en)
Other versions
JP6453923B2 (ja
Inventor
武徳 小野
Takenori Ono
武徳 小野
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fanuc Corp
Original Assignee
Fanuc Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fanuc Corp filed Critical Fanuc Corp
Priority to JP2017036405A priority Critical patent/JP6453923B2/ja
Priority to US15/880,895 priority patent/US10671053B2/en
Priority to DE102018201758.1A priority patent/DE102018201758A1/de
Priority to CN201810162130.3A priority patent/CN108508849B/zh
Publication of JP2018142194A publication Critical patent/JP2018142194A/ja
Application granted granted Critical
Publication of JP6453923B2 publication Critical patent/JP6453923B2/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/418Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM]
    • G05B19/41865Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM] characterised by job scheduling, process planning, material flow
    • 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
    • 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
    • G05B19/4142Structure of the control system, e.g. common controller or multiprocessor systems, interface to servo, programmable interface controller characterised by the use of a microprocessor
    • 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/418Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM]
    • G05B19/41865Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM] characterised by job scheduling, process planning, material flow
    • G05B19/4187Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM] characterised by job scheduling, process planning, material flow by tool management
    • 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/32Operator till task planning
    • G05B2219/32257Tool replacement minimization
    • 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/34Director, elements to supervisory
    • G05B2219/34013Servocontroller
    • 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/34Director, elements to supervisory
    • G05B2219/34418Scheduler for sequential control, task planning, control sequence
    • 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/36Nc in input of data, input key till input tape
    • G05B2219/36364Tool change time as function of tool switch time, to replace tool with another
    • 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/36Nc in input of data, input key till input tape
    • G05B2219/36507Select program or execute command, control instructions as function of axis position
    • 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)
  • Manufacturing & Machinery (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • General Engineering & Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Human Computer Interaction (AREA)
  • Computer Hardware Design (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Numerical Control (AREA)
  • Automatic Tool Replacement In Machine Tools (AREA)

Abstract

【課題】既存のプログラムを変更せずに工具交換時のサイクルタイムの短縮を図ることが可能な数値制御装置を提供する。【解決手段】プログラムをブロックごとに解析するブロック情報チェック部を備えた数値制御装置であって、そのブロック情報チェック部は、プログラムの解析結果中で見いだした工具交換指令に関し、前記工具交換指令の前に1個または2個以上の送り軸の位置決め指令があると判断した場合、その工具交換指令中の回転工具軸オリエンテーション動作を、前記1個または2個以上の送り軸の位置決め指令ブロックのいずれかの送り軸の位置決め指令の実行の際に実行するように、プログラムの解析結果を変更する。【選択図】図1

Description

本発明は、マシニングセンタなどの工作機械の制御を行う制御装置に関する。特に、工作機械の動作を記述するプログラムに基づき工作機械の制御を行う数値制御装置に関する。また、数値制御装置を含む工作機械システムに関する。
従来より、マシニングセンタなどで使用される回転工具の工具交換は、一般的に以下のように実行されている。
まず、図10には、従来の工具交換を行う加工プログラムの指令例が示されている。この図に示すように、工具を交換する場合は、まず回転工具軸の回転停止指令(M05)が実行される。その指令の後、工具交換位置への位置決めを含む送り軸の位置決め指令(G00)を実行してから、工具交換指令(M06)が実行される。また、この工具交換指令(M06)の中では、回転工具を交換可能な位置へ回転工具軸を回転させる回転工具軸の位置決め動作(回転工具軸オリエンテーション)と、工具交換動作と、が実行される。
このため、工具交換指令が実行開始後に、回転工具軸オリエンテーションが実行され、その後、工具交換動作が開始される。
<用語>
なお、マシニングセンタでは、回転工具軸のことを一般には主軸という。しかし、旋盤加工機では、一般的に主軸とは、加工対象であるワークを回転させる軸を指す。そこで、本文では、回転対象を明確にするために、主軸という用語ではなく、「回転工具軸」と記述する。また、この「回転工具軸」とは、複合旋盤加工機などの複合加工機における、回転工具軸を含む。また、以降の説明では、「回転工具軸の回転停止」は、単に「回転工具軸停止」と記述する。
図11には、主軸がワークを回転させる軸であり、主軸とは別に回転工具軸を備えているような複合旋盤における加工の様子を表す概念図の一例が示されている。この図に示すように、複合旋盤の一例においては、例えば、ワーク2は主軸4によって回転されて旋削加工用工具6がワーク2を加工し、回転工具軸12に取り付けられた回転工具8がワーク2を加工していくような加工処理が行われる。
<回転工具軸オリエンテーションについて>
回転工具の工具保持具と、回転工具軸との関係が図12Aから図12Dに示されている。図12Aには、回転工具の保持具(ツーリング10)の説明図が示されており、図12Bには、回転工具軸12の説明図が示されている。なお、ツーリング10をその軸と平行な方向Aから見た図が図12Cに示されている。また、回転工具軸12をその軸と平行な方向Bから見た図が図12Dに示されている。
回転工具は、回転工具を保持するツーリング(工具保持具)10のテーパ部10a(図12A参照)を、回転工具軸12のテーパ部12a(図12B参照)に挿入し嵌合させ、回転工具軸12のキー12b(図12D参照)とツーリングのキー溝10b(図12C)とを噛合わせて、回転工具軸12に取り付けられている。このように、回転工具軸12のキー12bと、ツーリング10のキー溝10bとが噛み合うことによって、回転工具軸12の回転にともない、回転工具を回転させることができる。
回転工具の工具交換時には、回転工具軸12に上記のようにして取り付けられている回転工具をグリップにより取り外し、次の工具に付け替える動作が実行される。工具交換時のグリップ14の様子が図13に示されている。この図に示すように、グリップ14にもキー14aが設けられ、工具交換時には、当該キー14aと、ツーリング10のキー溝10bとが合うように配置する必要がある。また、工具交換時には、回転工具軸のキー12bとツーリングのキー溝10bとも合うように設定される。
回転工具軸停止時には、基本的にキー12bの位置がどこで停止するか不明である。したがって、工具交換をしようとする場合は、キー12b(キー溝10b)の位置が、グリップ14に対して必ず特定の位置になるように回転工具軸12の位置決めを行う必要がある。この回転工具軸12の特定の位置への位置決め動作のことを回転工具軸オリエンテーションと言う。
図14A、14B、14Cには、工具の交換を行う場合の従来の一般的なプログラム指令の例が示されている。図14A、14B、14C中において、プログラム中の各指令の意味は下記の通りである。
M05 :回転工具軸停止指令
G00Zzz :工具交換位置への位置決めを含む送り軸の位置決め指令
(Z:送り軸名称、zz:位置または移動量指令)
M06Txx :工具交換指令
(Txx:交換を行う工具の指令、xx:工具番号)
図14Aの例では、回転工具軸停止指令(M05)が実行された後、送り軸の位置決め(工具交換位置への位置決めを含む)を行い(G00Zzz)、工具交換指令(M06Txx)が実行される。この例においては、工具交換指令(M06Txx)の実行時には、回転工具軸オリエンテーションと、工具交換動作と、が実行される。
図14Aで示されている例の各指令の実行のタイミングが図15A、図15Bに示されている。図15Aは、図14Aのプログラム例の各指令の意味を示す概念図である。図15Bは、横軸が時間のタイムチャートである。まず、回転工具軸停止指令(M05)が時刻t1まで実行される。時刻t1から、次に送り軸の位置決め指令(G00Zzz)が実行され、時刻t2まで続く。時刻t2からは、工具交換指令(M06Txx)が開始される。この工具交換指令(M06Txx)は、図15Bに示すように、まず、回転工事具軸オリエンテーション動作が実行され、引き続き、時刻t3から工具交換動作が実行される。
図14Bの例では、送り軸の位置決め(工具交換位置への位置決めを含む)(G00Zzz)を行い、工具交換指令(M06Txx)を実行される。この例においては、工具交換指令(M06Txx)の実行時には、回転工具軸停止と、回転工具軸オリエンテーションと、工具交換動作と、が実行される。
図14Bで示されている例の各指令の実行のタイミングが図16A及び図16Bに示されている。図16Aは、図14Bのプログラム例の各指令の意味を示す概念図である。図16Bは、横軸が時間のタイムチャートである。まず、送り軸の位置決め指令(G00Zzz)が時刻t4まで実行される。次に、時刻t4から、工具交換指令(M06Txx)が実行される。図16Bに示すように、工具交換指令(M06Txx)は、まず、時刻t4から、回転工具軸停止動作が実行され、引き続き、時刻t5からオリエンテーション、引き続き、時刻t6から工具交換動作が実行される。
図14Cの例では、送り軸の位置決め(工具交換位置への位置決めを含む)(G00Zzz)と回転工具軸停止指令(M05)が実行され、工具交換指令を(M06Txx)が実行される。この例においては、工具交換指令(M06Txx)の実行時には、回転工具軸オリエンテーションと、工具交換動作と、が実行される。
図14Cで示されている例の各指令の実行のタイミングが図17A及び図17Bに示されている。図17Aは、図14Cのプログラム例の各指令の意味を示す概念図である。図17Bは、横軸が時間のタイムチャートである。まず、時刻t7において、送り軸の位置決め指令(G00Zzz)と、回転工具軸停止指令(M05)が開始される。回転工具軸停止指令の方が、送り軸の位置決め動作より早めに終了するが、送り軸の位置決め動作は、回転工具軸停止指令終了後も続行刻t8まで処理が続く。時刻t8から、工具交換指令(M06Txx)が実行される。図17Bに示すように、工具交換指令(M06Txx)は、まず、回転工具軸オリエンテーション動作が実行され、引き続き、時刻t9から工具交換動作が実行される。
また、下記特許文献1においては、主軸が「所定位置に到達したのち、オリエンテーションが完了したかを判断」し、オリエンテーションが完了していない場合に、回転工具軸停止とオリエンテーションを行うNC工作機械が開示されている。
特開2004−1229号公報
このように、従来の工作機械においては、プログラムに含まれる指令を指令どおりに順次実行していくので、サイクルタイムが伸びてしまうという課題がある。
また、図14B(図16A)のプログラムの場合は、工具交換指令開始時に実行される回転工具軸オリエンテーション動作実行前に、回転工具軸停止を行うため、必ずその回転停止実行時間が必要となってしまう。
また、図14A(図15A)や図14B(図16A)に示したプログラム例を、図14C(図17A)のプログラムのように、送り軸の位置決め指令時に、M05(回転工具軸停止指令)を同時に指令するようにプログラムを変更すれば、回転工具軸の停止に要する時間分だけ、工具交換にかかるサイクルタイム短縮は可能ではある。
しかし、既存のプログラムについては、このようなプログラムの変更を個別に行う必要があり、煩雑な作業が必要となる。また、プログラムの変更時の変更ミスの恐れもある。さらに、ユーザのプログラム使用状況によっては、プログラムの変更自体が認められない場合もある。
回転工具軸停止だけなく、回転工具軸オリエンテーションも、切削終了後であって工具交換前であればいつ実行しても問題はない。したがって、本願発明者は、これらの処理のタイミングを調整すれば、よりサイクルタイムの短縮化が図れるのではないかと考えた。
その一方、図14C(図17A)のプログラムのように、プログラム自体を修正することは、上述したように既存のプログラムに対する修正処理が煩雑となり、かつ、修正によって予期せぬ誤りが発生してしまう恐れもある。そこで、上述した図14A(図15A)や図14B(図16A)に示すプログラムを、図14C(図17A)に示すプログラムのように修正することなく、上述したように、処理のタイミングを工夫して、工具交換における回転工具軸停止と回転工具軸オリエンテーションにかかるサイクルタイムの短縮を行う仕組みが望まれている。また、図14C(図17A)に示すプログラムについても、よりサイクルタイムの短縮を実現できることが望ましい。
なお、上記特許文献1に開示の技術では、所定位置への移動指令前に、回転工具軸停止指令があった場合には回転工具軸停止と位置決め動作を同時に行うことができない。
本発明は、このような課題に鑑みなされたものであり、工具交換時のサイクルタイムを短縮化することができる数値制御装置を提供することを目的とする。
このように、本願発明者は、工具交換時の各処理の実行タイミングを調整すればサイクルタイムの短縮化が図れる可能性を見出し、具体的な手法を確立することによって本発明を完成するに至った。本発明の解決原理は以下の通りである。
<解決原理1>
上記課題を解決する解決原理1は、プログラムを変更することなく、回転工具軸オリエンテーション動作の時間を削減するものである。
具体的には、プログラム指令を先読みし、送り軸の位置決め指令ブロックを実行中に、回転工具軸オリエンテーション動作を開始するように構成する。このような処理によって、プログラム指令を変更することなく、回転工具軸オリエンテーション動作を工具交換指令の実行より前に実行できるので、サイクルタイムの短縮が図れる。この解決原理1は、上述した図14A、図14B、図14Cの全ての場合において適用可能なものである。
なお、本文では、プログラムを構成する各指令に基づく動作群をブロックと呼ぶ。例えば、位置決め指令ブロックを実行とは、位置決め指令で表される動作群(ブロック)を実行することを言う。
解決原理1の動作を示すタイムチャートが図1に示されている。図1は横軸が時間を表すタイムチャートであり、各処理が実行される時間関係がしめされている。この図に示すように、回転工具軸停止指令が実行され、時刻t10においてこの回転工具軸停止指令が終了すると、同時刻t10から、送り軸の位置決め指令が実行開始される。
そして、従来の技術と同様に、時刻t11において工具交換指令が実行されるが、本解決原理1では、その工具交換指令に含まれている回転工具軸オリエンテーション動作を時刻t10、すなわち送り軸の位置決め指令が実行開始されるタイミングと同時に実行開始される。
このような処理によって、従来は工具交換指令の中で実行され、その工具交換指令の実行開始時点であるt11において実行開始されていた回転軸オリエンテーション動作を早く実行することができる。その結果、時刻t11から開始される工具交換指令の実行時間を短縮することができ、以て、サイクルタイムの短縮化を図ることができる。
図1に示すように、従来は工具交換指令がt11から開始され、時刻t13まで係っていた実行時間が、回転工具軸オリエンテーション動作の分短くすることができ、時刻t12で完了させることが可能となる。
<解決原理2>
上記課題を解決する解決原理2は、プログラムを変更することなく、回転工具軸停止指令の実行時間を削減するものである。
具体的には、プログラム指令を先読みし、工具交換指令を実行する前の(工具交換位置への)位置決め指令を実行する時に、回転工具軸停止指令を同時実行する。これによって、既存のプログラム指令を変更することなく、回転工具軸停止指令ブロックの実行時間または回転工具軸の停止時間を削減し、工具交換の際のサイクルタイム短縮を図ることができる。
解決原理2の動作を示すタイムチャートの例が図2A、図2B、図3A、図3Bに示されている。
<解決原理2の例1>
図2A、図2Bは、解決原理2を図14Aのプログラム指令に適用した場合の動作を示しており、図2Aには図14Aのプログラム指令が示され、図2Bには、図14Aのプログラム指令に解決原理2を適用した場合の各指令の実行の時間関係を表すタイムチャートが示されている。
図2Aに示されているプログラム指令では、回転工具軸停止指令(M05)、送り軸の位置決め指令(G00Zzz)、工具交換指令(M06Txx)、が従来の技術では、例えば連続して実行される。
これに対して、解決原理2によれば、図2Bに示すように、回転工具軸停止指令ブロックの実行を、それに引き続く送り軸の位置決め指令と同時に、時刻t14において実行開始している。この結果、実質的に回転工具軸停止指令の実行時間を削減することができ、サイクルタイムの短縮化を図ることができる。送り軸の位置決め指令は時刻t15において実行完了し、同時刻t15から工具交換指令の実行が開始される。
<解決原理2の例2>
図3A、図3Bは、解決原理2を図14Bのプログラム指令に適用した場合の動作を示しており、図3Aには図14Bのプログラム指令が示され、図3Bには、図14Bのプログラム指令に解決原理2を適用した場合の各指令の実行の時間関係を表すタイムチャートが示されている。
図3Aに示されているプログラム指令では、送り軸の位置決め指令(G00Zzz)、工具交換指令(M06Txx)、が従来の技術では、例えば連続して実行され、工具交換指令は、回転工具軸停止が含まれており、同時に実行される。
これに対して、解決原理2によれば、図3Bに示すように、工具交換指令中の回転工具軸停止動作を、それに先行する送り軸の位置決め指令と同時に、時刻t16において実行開始している。この結果、実質的に回転工具軸停止指令の実行時間を削減することができ、サイクルタイムの短縮化を図ることができる。送り軸の位置決め指令は時刻t17において実行完了し、同時刻t17から工具交換指令の実行が開始される。この工具交換指令の動作時間は、回転工具軸停止のための実行時間分短縮することができ、したがって、サイクルタイムの短縮化を図ることができる。
本発明は、このような解決原理1、2に基づく発明であり、具体的には下記のような手段を採用する。
(1)本発明に係る数値制御装置(例えば、後述する数値制御装置100)は、工作機械の動作を記述するプログラムを入力するプログラム入力部(例えば、後述するプログラム入力部102)と、前記入力したプログラムを解析し、解析結果を出力するプログラム解析部(例えば、後述するプログラム解析部104)と、前記プログラム解析部が解析した解析結果に基づき前記工作機械を制御するプログラム実行部(例えば、後述するプログラム実行部114)と、を具備し、前記プログラム解析部は、前記プログラム中の指令のブロックを解析し、前記解析結果をブロック情報保存部に保存するブロック解析部(例えば、後述するブロック解析部106)と、前記解析結果を保存する前記ブロック情報保存部(例えば、後述するブロック情報保存部112)と、前記ブロック解析部の前記解析結果をチェックし、所定の条件が成立した場合は、前記指令のブロックの解析結果の変更を、ブロック情報変更部に指示するブロック情報チェック部(例えば、後述するブロック情報チェック部108)と、前記ブロック情報チェック部の指示に基づき、前記ブロック情報保存部に保存されている前記解析結果を変更するブロック情報変更部(例えば、後述するブロック情報変更部110)と、を備え、前記ブロック情報チェック部は、前記解析結果中で見いだした工具交換指令の前に1個または2個以上の送り軸の位置決め指令があると判断した場合、前記見いだした工具交換指令中の回転工具軸オリエンテーション動作を、前記1個または2個以上の送り軸の位置決め指令ブロックのいずれかの送り軸の位置決め指令の実行の際に実行するように、前記ブロック情報保存部に保存されている前記解析結果を変更するようにブロック情報変更部に指示する。
(2) (1)に記載の数値制御装置において、前記ブロック情報チェック部は、前記解析結果中で見いだした工具交換指令の前に1個または2個以上の送り軸の位置決め指令があると判断した場合、前記見いだした工具交換指令中の回転工具軸オリエンテーション動作を、前記1個または2個以上の送り軸の位置決め指令ブロックの最初の送り軸の位置決め指令の実行の際に実行するように、前記ブロック情報保存部に保存されている前記解析結果を変更するようにブロック情報変更部に指示してよい。
(3) (1)又は(2)に記載の数値制御装置において、前記ブロック情報チェック部は、前記解析結果中で見いだした工具交換指令の前に1個または2個以上の送り軸の位置決め指令があると判断した場合、前記見いだした工具交換指令中の回転工具軸オリエンテーションの動作を、前記工具交換指令中の動作から除去するように、前記ブロック情報変更部に指示してよい。
(4)本発明に係る数値制御装置は、工作機械の動作を記述するプログラムを入力するプログラム入力部と、前記入力したプログラムを解析し、解析結果を出力するプログラム解析部と、前記プログラム解析部が解析した解析結果に基づき前記工作機械を制御するプログラム実行部と、を具備し、前記プログラム解析部は、前記プログラム中の指令のブロックを解析し、前記解析結果をブロック情報保存部に保存するブロック解析部と、前記解析結果を保存する前記ブロック情報保存部と、前記ブロック解析部の前記解析結果をチェックし、所定の条件が成立した場合は、前記指令のブロックの解析結果の変更を、ブロック情報変更部に指示するブロック情報チェック部と、前記ブロック情報チェック部の指示に基づき、前記ブロック情報保存部に保存されている前記解析結果を変更するブロック情報変更部と、を備え、前記ブロック情報チェック部は、前記解析結果中で見出した工具交換指令の前に1個または2個以上の送り軸の位置決め指令があり、前記1個または2個以上の送り軸の位置決め指令の前に、回転工具軸停止指令があると判断した場合、前記回転工具軸停止指令の動作を、前記1個または2個以上の送り軸の位置決め指令ブロックのいずれかの送り軸の位置決め指令の実行の際に実行するように、前記ブロック情報保存部に保存されている前記解析結果を変更するようにブロック情報変更部に指示する。
(5) (4)に記載の数値制御装置において、前記ブロック情報チェック部は、前記解析結果中で見出した工具交換指令の前に1個または2個以上の送り軸の位置決め指令があり、前記1個または2個以上の送り軸の位置決め指令の前に、回転工具軸停止指令があると判断した場合、前記回転工具軸停止指令の動作を、前記1個または2個以上の送り軸の位置決め指令ブロックの最初の送り軸の位置決め指令の実行の際に実行するように、前記ブロック情報保存部に保存されている前記解析結果を変更するようにブロック情報変更部に指示してよい。
(6) (4)又は(5)に記載の数値制御装置において、前記ブロック情報チェック部は、前記解析結果中で見出した工具交換指令の前に1個または2個以上の送り軸の位置決め指令があり、前記1個または2個以上の送り軸の位置決め指令の前に、回転工具軸停止指令があると判断した場合、前記1個または2個以上の送り軸の位置決め指令の前にある前記回転工具軸停止指令の解析結果を、前記ブロック情報保存部から除去するように、前記ブロック情報変更部に指示してよい。
(7)本発明に係る数値制御装置は、工作機械の動作を記述するプログラムを入力するプログラム入力部と、前記入力したプログラムを解析し、解析結果を出力するプログラム解析部と、前記プログラム解析部が解析した解析結果に基づき前記工作機械を制御するプログラム実行部と、を具備し、前記プログラム解析部は、前記プログラム中の指令のブロックを解析し、前記解析結果をブロック情報保存部に保存するブロック解析部と、前記解析結果を保存する前記ブロック情報保存部と、前記ブロック解析部の前記解析結果をチェックし、所定の条件が成立した場合は、前記指令のブロックの解析結果の変更を、ブロック情報変更部に指示するブロック情報チェック部と、前記ブロック情報チェック部の指示に基づき、前記ブロック情報保存部に保存されている前記解析結果を変更するブロック情報変更部と、を備え、前記ブロック情報チェック部は、前記解析結果中で見出した工具交換指令の前に1個または2個以上の送り軸の位置決め指令があり、前記1個または2個以上の送り軸の位置決め指令の前に、回転工具軸停止指令がないと判断した場合、前記工具交換指令中の回転工具軸停止の動作を、前記1個または2個以上の送り軸の位置決め指令ブロックのいずれかの送り軸の位置決め指令の実行の際に実行するように、前記ブロック情報保存部に保存されている前記解析結果を変更するようにブロック情報変更部に指示する。
(8) (7)に記載の数値制御装置において、前記ブロック情報チェック部は、前記解析結果中で見出した工具交換指令の前に1個または2個以上の送り軸の位置決め指令があり、前記1個または2個以上の送り軸の位置決め指令の前に、回転工具軸停止指令がないと判断した場合、前記工具交換指令中の回転工具軸停止の動作を、前記1個または2個以上の送り軸の位置決め指令ブロックの最初の送り軸の位置決め指令の実行の際に実行するように、前記ブロック情報保存部に保存されている前記解析結果を変更するようにブロック情報変更部に指示してよい。
(9) (7)又は(8)に記載の数値制御装置において、前記ブロック情報チェック部は、前記解析結果中で見出した工具交換指令の前に1個または2個以上の送り軸の位置決め指令があり、前記1個または2個以上の送り軸の位置決め指令の前に、回転工具軸停止指令がないと判断した場合、前記工具交換指令中の回転工具軸停止動作を、前記工具交換指令中の動作から除去するように、前記ブロック情報変更部に指示してよい。
(10)本発明に係る数値制御装置は、工作機械の動作を記述するプログラムを入力するプログラム入力部と、前記入力したプログラムを解析し、解析結果を出力するプログラム解析部と、前記プログラム解析部が解析した解析結果に基づき前記工作機械を制御するプログラム実行部と、を具備し、前記プログラム解析部は、前記プログラム中の指令のブロックを解析し、前記解析結果をブロック情報保存部に保存するブロック解析部と、前記解析結果を保存する前記ブロック情報保存部と、前記ブロック解析部の前記解析結果をチェックし、所定の条件が成立した場合は、前記指令のブロックの解析結果の変更を、ブロック情報変更部に指示するブロック情報チェック部と、前記ブロック情報チェック部の指示に基づき、前記ブロック情報保存部に保存されている前記解析結果を変更するブロック情報変更部と、を備え、前記ブロック情報チェック部は、前記解析結果中で見出した工具交換指令の前に2個以上の送り軸の位置決め指令があり、前記2個以上の送り軸の位置決め指令中のいずれかの送り軸の位置決め指令と同じブロック中に回転工具軸停止指令があると判断した場合、前記回転工具軸停止指令の動作を、前記回転工具軸停止指令があるブロックでそのまま実行するために、前記ブロック情報保存部に保存されている前記解析結果を変更する指示を前記ブロック情報変更部に出さない第1の処理と、または、前記回転工具軸停止指令の動作を、前記2個以上の送り軸の位置決め指令ブロックのうちいずれかの別の送り軸の位置決め指令の実行の際に実行するように、前記ブロック情報保存部に保存されている前記解析結果を変更するようにブロック情報変更部に指示する第2の処理と、のいずれかの処理を実行する。
(11) (10)に記載の数値制御装置において、前記ブロック情報チェック部が前記第2の処理を実行する場合、前記ブロック情報チェック部は、前記ブロック情報保存部の前記回転工具軸停止指令があったブロックから、前記回転工具軸停止指令の解析結果を除去するように、前記ブロック情報変更部に指示してよい。
(12) (11)に記載の数値制御装置において、前記ブロック情報チェック部は、前記解析結果中で見出した工具交換指令の前に2個以上の送り軸の位置決め指令があり、前記2個以上の送り軸の位置決め指令中の2番目以降の送り軸の位置決め指令と同じブロック中に回転工具軸停止指令があると判断した場合、前記回転工具軸停止指令の動作を、前記2個以上の送り軸の位置決め指令ブロックのうち最初の送り軸の位置決め指令の実行の際に実行するように、前記ブロック情報保存部に保存されている前記解析結果を変更するようにブロック情報変更部に指示してよい。
(13) (12)に記載の数値制御装置において、前記ブロック情報チェック部は、前記ブロック情報保存部の前記回転工具軸停止指令があった2番目以降のブロックから、前記回転工具軸停止指令の解析結果を除去するように、前記ブロック情報変更部に指示してよい。
(14) (1)に記載の数値制御装置において、前記ブロック情報チェック部は、前記解析結果中で見出した工具交換指令の前に1個または2個以上の送り軸の位置決め指令があり、前記1個または2個以上の送り軸の位置決め指令の前に、回転工具軸停止指令があると判断した場合、前記回転工具軸停止指令の動作を、前記1個または2個以上の送り軸の位置決め指令ブロックのいずれかの送り軸の位置決め指令の実行の際に実行するように、前記ブロック情報保存部に保存されている前記解析結果を変更するようにブロック情報変更部に指示し、且つ、前記回転工具軸停止指令の動作の後に、前記回転工具軸オリエンテーション動作を実行するように、前記ブロック情報保存部に保存されている前記解析結果を変更するようにブロック情報変更部に指示してよい。
(15) (1)に記載の数値制御装置において、前記ブロック情報チェック部は、前記解析結果中で見出した工具交換指令の前に1個または2個以上の送り軸の位置決め指令があり、前記1個または2個以上の送り軸の位置決め指令の前に、回転工具軸停止指令がないと判断した場合、前記工具交換指令中の回転工具軸停止の動作を、前記1個または2個以上の送り軸の位置決め指令ブロックのいずれかの送り軸の位置決め指令の実行の際に実行するように、前記ブロック情報保存部に保存されている前記解析結果を変更するようにブロック情報変更部に指示し、且つ、前記回転工具軸停止の動作の後に、前記回転工具軸オリエンテーション動作を実行するように、前記ブロック情報保存部に保存されている前記解析結果を変更するようにブロック情報変更部に指示してよい。
(16)本発明に係る工作機械システムは、(1)から(15)のいずれか1項に記載の数値制御装置と、前記数値制御装置により制御される前記工作機械と、を具備する。
本発明によれば、既存のプログラムを何ら変更せずに工具交換時のサイクルタイムの短縮を図ることが可能な数値制御装置を提供することができる。
本発明の解決原理1の動作を示すタイムチャートである。 本発明の解決原理2の動作説明に係るプログラムの例である。 本発明の解決原理2の動作を示すタイムチャートである。 本発明の解決原理2の動作説明に係るプログラムの例である。 本発明の解決原理2の動作を示すタイムチャートである。 本発明の実施形態に係る数値制御装置の構成ブロック図である。 本発明の実施形態1において解決原理1を適用した動作を示すフローチャートである。 本発明の実施形態2において解決原理2を適用した動作を示すフローチャートである。 本発明の実施形態3において解決原理1および解決原理2を適用した動作を示すフローチャートである。 本発明の他の実施形態の動作説明に係るプログラムの例である。 本発明の他の実施形態の動作を示すタイムチャートである。 本発明の他の実施形態の動作説明に係るプログラムの例である。 本発明の他の実施形態の動作を示すタイムチャートである。 工具交換を行う加工プログラムの指令例を示す図である。 主軸とは別に回転工具軸を備えているような複合旋盤加工機における加工の様子を表す図である。 回転工具の保持具(ツーリング)の説明図である。 回転工具軸の説明図である。 ツーリングをその軸と平行な方向Aから見た図である。 回転工具軸をその軸と平行な方向Bから見た図である。 工具交換時のグリップの様子が示す図である。 工具の交換を行う場合の一般的なプログラム指令の例を示す図である。 工具の交換を行う場合の一般的なプログラム指令の例を示す図である。 工具の交換を行う場合の一般的なプログラム指令の例を示す図である。 図14Aのプログラム例の各指令の意味を示す概念図である。 図14Aのプログラム例の各指令の実行タイミングを示すタイムチャートである。 図14Bのプログラム例の各指令の意味を示す概念図である。 図14Bのプログラム例の各指令の実行タイミングを示すタイムチャートである。 図14Cのプログラム例の各指令の意味を示す概念図である。 図14Cのプログラム例の各指令の実行タイミングを示すタイムチャートである。
以下、本発明の実施形態について、図面に基づき説明する。
第1.装置構成
本実施形態においては、工作機械の数値制御装置を説明する。この数値制御装置は、工作機械に附属するものであるが、工作機械と同一筐体に収容されていてもよいし、別体で構成されていても良い。この数値制御装置には、これまで説明してきたように、工作機械の動作を記述したプログラムが与えられる。そして、数値制御装置は、与えられたプログラムを読み取り、それに基づき、工作機械を制御する。
図4には、本実施形態に係る数値制御装置の構成ブロック図が示されている。
この図に示すように、数値制御装置100は、プログラム入力部102と、プログラム解析部104と、プログラム実行部114と、から構成される。例えばサーボモータへの指令生成部など、数値制御装置を構成する他の要素は図示しない。数値制御装置100は、好ましくはコンピュータを中心に構成してよく、プログラムや利用者の操作を入力するための所定のインターフェースや、工作機械に指示を出すためのインターフェースを備えることによって構成されることが好適である。
なお、数値制御装置100と、図4に示す工作機械と、から工作機械システムを構成することができる。この工作機械システムは、請求の範囲の工作機械システムの好適な一例に相当する。
プログラム入力部102は、工作機械の動作を記述したプログラムを入力するインターフェースであり、図14A等で説明してきたプログラムを外部から入力できるインターフェースである。例えば、所定のネットワークを介してプログラムを入力する場合は、プログラム入力部102としてネットワークインターフェースが好適であり、外部の記憶装置からプログラムを入力する場合は、ICカードリーダーやUSBインターフェース等でも好適である。その他、プログラムを入力できればどのようなインターフェースでもよい。
プログラム解析部104は、入力したプログラムを解析し、プログラムの内容に合わせて、所定の実行処理をプログラム実行部114に実行させる。プログラム解析部は、その解析の流れを記述したコンピュータソフトウェアと、そのコンピュータソフトウェアを実行するCPU(数値制御装置100を構成するコンピュータのCPU)と、から構成することが好適である。
プログラム実行部114は、プログラム解析部104の解析結果に基づき、工作機械に指示を出す部である。例えば工作機械のサーボモータに対する指示を出す部である。
プログラム解析部104は、図4に示すように、ブロック解析部106と、ブロック情報チェック部108と、ブロック情報変更部110と、ブロック情報保存部112と、から構成される。例えば、これらの機能を記述するコンピュータソフトウェアとそれらを実行するCPUと、からこれらの各部を実現することが好適である。プログラム解析部104の各部の動作は、以下の動作説明において詳述していく。
第2.動作説明
<実施形態1(解決手段1を適用した例)>
回転工具軸オリエンテーションの時間を削減する解決原理1を適用した場合の動作例を説明する。
この実施形態1においては、上述したように、外部から提供されてきたプログラムが、プログラム入力部102において入力され、プログラム解析部104に送られる。
次に、数値制御装置100のプログラム解析部104においては、下記のような流れで、プログラムの解析処理が実行される。また、この流れが図5のフローチャートに示されている。
まず、ステップS5−1において、ブロック解析部106が、解析対象であるプログラムに含まれるブロック情報があるか否かを確認する。ブロック情報がない場合は、解析処理は終了する。解析対象であるブロックがあれば、ステップS5−2に移行する。
ステップS5−2において、ブロック解析部106が、解析対象であるブロック情報を解析し、その解析内容をブロック情報保存部110に記録していく。なおブロック解析部106は、プログラム中の指令のブロックを順次解析していくコンピュータソフトウェアとCPUとで構成されてよい。また、ブロック情報保存部110は、所定の記憶手段から構成されてよい。情報が保存できればどのような手段でもよい。図5のフローチャート中では、ブロック情報保存部112を、便宜上、(A)と略称している。
なお、ブロック解析部106の解析結果は、同時にブロック情報チェック部108に送られる。
ステップS5−3において、ブロック情報チェック部108は、解析したブロックが工具交換指令ブロックであるか否かを判断する。その結果、工具交換指令(ブロック)でなかった場合は、次のブロックの解析を続けるべくステップS5−1に移行する。一方、工具交換指令(ブロック)である場合は、ステップS5−4に移行する。なお、図5のフローチャート中では、工具交換指令を、便宜上、(B)と略称している。
ステップS5−4において、ブロック情報チェック部108が、発見された工具交換指令(ブロック)の前に、送り軸の位置決め指令(ブロック)があるか否かを判断する。この判断を行うために、ブロック情報チェック部108は、前の指令をブロック情報保存部112から取り出して判断を行う。この判断の結果、送り軸の位置決め指令(ブロック)があった場合は、同ステップS5−4の処理を続行し、さらに一つ前に位置決め指令があるか否か判断する。この処理は、さらに一つ前に送り軸の位置決め指令が続いている限り続行される。例えば、後述する図8Bに示すように、複数の送り軸の位置決め指令が存在する場合は、最初の送り軸の位置決め指令までこの処理は続く。なお、図5のフローチャート中では、送り軸の位置決め指令を、便宜上(C)と略称している。一方、ステップS5−4において、送り軸の位置決め指令(C)ではないと判断された場合は、ステップS5−5に移行する。
ステップS5−5において、ブロック情報チェック部108は、その送り軸の位置決め指令(ブロック)の指令の解析内容を、位置決めの動作と共に回転工具受軸オリエンテーションを実行させるような情報に設定する。具体的には、ステップS5−5において、ブロック情報変更部110が、ブロック情報チェック部からの指示を受けて、ブロック情報保存部112内の当該情報を上記内容に書き換える(または書き足す)。
さらに、ステップS5−5において、現在着目しているブロック、すなわち現在の解析対象である工具交換指令のブロックの解析内容を、回転軸オリエンテーション動作を実行しないような内容に設定する。具体的には、ステップS5−5において、ブロック情報変更部110が、ブロック情報チェック部からの指示を受けて、現在着目しているブロックである工具交換指令のブロックの解析情報(ブロック情報保存部112内)から、回転工具軸オリエンテーション動作を除去し、工具交換動作のみを実行させるような内容に書き換える(または回転工具軸オリエンテーション動作の情報を削除する)のである。
以上のような動作によって、提供されたプログラム中の指令の並びに基づき、その指令の解釈された内容を適宜書き換えることができる。そして、書き換えた解釈内容に基づき、プログラム実行部114が、各動作の指令を工作機械に与える。
この結果、提供された既存のプログラム自体は何ら変更せずに、プログラム解析部104が、指令の並びに基づき、解釈を並べ替えたので、解決原理1に基づく動作の変更を行うことが可能である。したがって、既存のプログラムを何ら変更せずに工具交換時のサイクルタイムの短縮を図ることが可能である。
<実施形態2−1(解決手段2を適用した例その1)>
回転工具軸停止の時間を削減する解決原理2を適用した場合の動作例その1を説明する。この動作例は、図2A、図2Bに示すように、送り軸の位置決め指令の前に回転工具軸停止指令がある場合の動作を中心に説明する。
この実施形態2−1においては、上述したように、外部から提供されてきたプログラムが、プログラム入力部102において入力され、プログラム解析部104に送られる。
次に、数値制御装置100のプログラム解析部104においては、下記のような流れで、プログラムの解析処理が実行される。また、この流れが図6のフローチャートに示されている。
まず、ステップS6−1において、ブロック解析部106が、解析対象であるプログラムに含まれるブロック情報があるか否かを確認する。ブロック情報がない場合は、解析処理は終了する。解析対象であるブロックがあれば、ステップS6−2に移行する。
ステップS6−2において、ブロック解析部106が、解析対象であるブロック情報を解析し、その解析内容をブロック情報保存部110に記録していく。なおブロック解析部106は、プログラム中の指令のブロックを順次解析していくコンピュータソフトウェアとCPUとで構成されてよい。また、ブロック情報保存部110は、所定の記憶手段から構成されてよい。情報が保存できればどのような手段でもよい。図6のフローチャート中では、図5と同様に、ブロック情報保存部112を、便宜上、(A)と略称している。
なお、ブロック解析部106の解析結果は、同時にブロック情報チェック部108に送られる。
ステップS6−3において、ブロック情報チェック部108は、解析したブロックが工具交換指令ブロックであるか否かを判断する。その結果、工具交換指令(ブロック)でなかった場合は、次のブロックの解析を続けるべくステップS6−1に移行する。一方、工具交換指令(ブロック)である場合は、ステップS6−4に移行する。
なお、図6のフローチャート中では、図5と同様に、工具交換指令を、便宜上、(B)と略称している。
ステップS6−4において、ブロック情報チェック部108が、発見された工具交換指令(ブロック)の前に、送り軸の位置決め指令(ブロック)があるか否かを判断する。この判断を行うために、ブロック情報チェック部108は、前の指令をブロック情報保存部112から取り出して判断を行う。この判断の結果、送り軸の位置決め指令(ブロック)があった場合は、同ステップS6−4の処理を続行し、さらに一つ前に位置決め指令があるか否か判断する。この処理は、さらに一つ前に送り軸の位置決め指令が続いている限り続行される。例えば、後述する図8Bに示すように、複数の送り軸の位置決め指令が存在する場合は、その先頭である最初の送り軸の位置決め指令までこの処理は続く。なお、図6のフローチャート中では、送り軸の位置決め指令を、便宜上(C)と略称している。一方、ステップS6−4において、送り軸の位置決め指令(C)ではないと判断された場合は、ステップS6−5に移行する。
ステップS6−5において、ブロック情報チェック部108は、さらに、一つ前の指令が、回転工具軸停止指令(ブロック)であるか否かを判断する。この判断も、ブロック情報保存部112の内容を参照することによって行う。この判断の結果、一つ前のブロックが、回転工具軸停止指令(ブロック)があった場合は、ステップS6−7に移行する。
一方、一つ前のブロックに、回転工具軸停止指令(ブロック)がなかった場合は、ステップS6−6に移行する。このステップS6−6に移行する場合は、図3A、図3Bに示すように、(図2A、図2Bと異なり、)送り軸の位置決め指令の前に回転工具軸停止指令(D)がなかった場合である。この場合の動作は、説明の都合上、次の実施形態2−2で説明する。なお、回転工具軸停止指令(ブロック)は、図6のフローチャート中では(D)と略称されている。
なお、一つ前のブロックが回転工具軸停止指令(D)であった場合とは、1個または2個以上の送り軸の位置決め指令の前に、回転工具軸停止指令(D)がある場合であり、この場合、ステップS6−7に移行する。例えば、送り軸の位置決め指令が1個の場合の例が、図2A、図2Bで説明されている。
ステップS6−7において、ブロック情報チェック部108は、その送り軸の位置決め指令(ブロック)の解析内容を、位置決めの動作と共に回転工具軸停止動作を実行させるよう情報に設定する。具体的には、ステップS6−7において、ブロック情報変更部110が、ブロック情報チェック部108からの指示を受けて、ブロック情報保存部112内の当該情報を上記内容に書き換える(または書き足す)。
これによって、図2Bで説明したように、送り軸の位置決め指令の動作中に、同時に回転工具軸停止動作を実行させることが可能である。送り軸の位置決め指令が複数個存在する場合は、その最初の送り軸の位置決め指令の動作中に回転工具軸停止動作を実行させる。
さらに、次のステップS6−8において、ステップS6−5において見出された回転工具軸停止指令(D)を実行しないように設定する。
すなわち、ブロック情報変更部110は、ブロック情報チェック部108からの指示を受けて、元のプログラム指令に含まれていた上記回転工具軸停止指令(D)(ステップS6−5)の解析内容を、ブロック情報保存部112(A)から削除する。
以上のような動作によって、提供されたプログラム中の指令の並びに基づき、適宜その解釈結果を書き換えることができる。そして、書き換えた解釈内容に基づき、プログラム実行部114が、各動作の指令を工作機械に与える。
この結果、提供された既存のプログラム自体は何ら変更せずに、プログラム解析部104が、指令の並びに基づき、解釈を並べ替えたので、解決原理2に基づく動作の変更を行うことが可能である。したがって、既存のプログラムを何ら変更せずに工具交換時のサイクルタイムの短縮を図ることが可能である。
<実施形態2−2(解決手段2を適用した例その2)>
回転工具軸停止の時間を削減する解決原理2を適用した場合の動作例その2を説明する。この動作例は、図3A、図3Bに示すように、送り軸の位置決め指令の前に回転工具軸停止指令が存在せず、工具交換指令中に回転工具軸停止動作が含まれる場合の動作を中心に説明する。
この実施形態2−2においては、上述したように、外部から提供されてきたプログラムが、プログラム入力部102において入力され、プログラム解析部104に送られる。
次に、数値制御装置100のプログラム解析部104においては、上記実施形態2−1において説明したような処理がステップS6−5(図6参照)まで進み、そのステップS6−5において、実施形態2−1とは逆に、一つ前のブロックが回転工具軸停止指令ではないことが判定する。その結果ステップS6−6に移行する。以下、ステップS6−6以降の処理を説明する。
ステップS6−6において、ブロック情報チェック部108は、その送り軸の位置決め指令(ブロック)の解析内容を、位置決めの動作と共に回転工具軸停止動作を実行させるような情報に設定する。具体的には、ステップS6−6において、ブロック情報変更部110が、ブロック情報チェック部108からの指示を受けて、ブロック情報保存部112内の当該情報を上記内容に書き換える(または書き足す)。
これによって、図3Bで説明したように、送り軸の位置決め指令の動作中に、同時に回転工具軸停止動作を実行させることが可能である。送り軸の位置決め指令が1個または2個以上存在する場合は、その最初の送り軸の位置決め指令の動作中に回転工具軸停止動作を実行させる。
さらに、同ステップS6−6において、現在着目しているブロック、すなわち現在の解析対象である工具交換指令のブロックの解析内容を、回転工具軸停止動作を実行しないような内容に設定する。具体的には、ステップS6−7において、ブロック情報変更部110が、ブロック情報チェック部からの指示を受けて、現在着目しているブロックである工具交換指令のブロックの解析情報(ブロック情報保存部112内)から、回転工具軸停止動作を除去し、工具交換動作のみを実行させるような内容に書き換える(または回転工具軸停止動作の情報を削除する)のである。
以上のような動作によって、提供されたプログラム中の指令の並びに基づき、その指令の解釈された実行内容を適宜書き換えることができる。そして、書き換えた解釈内容に基づき、プログラム実行部114が、各動作の指令を工作機械に与える。
この結果、提供された既存のプログラム自体は何ら変更せずに、プログラム解析部104が、指令の並びに基づき、解釈を並べ替えたので、解決原理1に基づく動作の変更を行うことが可能である。したがって、既存のプログラムを何ら変更せずに工具交換時のサイクルタイムの短縮を図ることが可能である。
<途中に回転工具軸停止がある場合>
なお、本実施形態2−2におけるステップS6−4において、連続して存在する1個または2個以上の送り軸の位置決め指令を検出しているが、その中のいずれかの送り軸の位置決め指令と同じブロックにおいて回転工具軸停止指令が存在する場合も考えられる(例えば、後述する図9B)。
その場合は、ステップS6−6において、当該回転工具軸停止指令の動作を、検出した1個または2個以上存在する送り軸の位置決め指令の最初の送り軸の位置決め指令の実行の際に実行させることが好適である(後述する図9B)。
この場合、具体的には、ステップS6−6において、ブロック情報変更部110が、ブロック情報チェック部からの指示を受けて、回転工具軸停止動作を、1個または2個以上の送り軸の位置決め指令のうち、最初の送り軸の位置決め指令の動作とともに実行するように、ブロック情報保存部112内の当該情報を上記内容に書き換える(または書き足す)ことが好適である。
そして、同ステップS6−6において、1個または2個以上の送り軸の位置決め指令中で見出された回転工具軸停止指令を、ブロック情報保存部112内の該当するブロックの解析情報から除外することが好適である。
<実施形態3−1(解決原理1と、解決原理2とを共に適用した例その1)>
回転工具軸停止の時間を削減する解決原理1及び解決原理2を共に適用した場合の動作例その1を説明する。この動作例は、図2A、図2Bに示すように、送り軸の位置決め指令の前に回転工具軸停止指令がある場合の動作を中心に説明する。
この実施形態3−1においては、上述したように、外部から提供されてきたプログラムが、プログラム入力部102において入力され、プログラム解析部104に送られる。
次に、数値制御装置100のプログラム解析部104においては、下記のような流れで、プログラムの解析処理が実行される。また、この流れが図7のフローチャートに示されている。
まず、ステップS7−1において、ブロック解析部106が、解析対象であるプログラムに含まれるブロック情報があるか否かを確認する。ブロック情報がない場合は、解析処理は終了する。解析対象であるブロックがあれば、ステップS7−2に移行する。
ステップS7−2において、ブロック解析部106が、解析対象であるブロック情報を解析し、その解析内容をブロック情報保存部110に記録していく。なおブロック解析部106は、プログラム中の指令のブロックを順次解析していくコンピュータソフトウェアとCPUとで構成されてよい。また、ブロック情報保存部110は、所定の記憶手段から構成されてよい。情報が保存できればどのような手段でもよい。図7のフローチャート中では、図5、図6と同様に、ブロック情報保存部112を、便宜上、(A)と略称している。なお、ブロック解析部106の解析結果は、同時にブロック情報チェック部108に送られる。
ステップS7−3において、ブロック情報チェック部108は、解析したブロックが工具交換指令ブロックであるか否かを判断する。その結果、工具交換指令(ブロック)でなかった場合は、次のブロックの解析を続けるべくステップS7−1に移行する。一方、工具交換指令(ブロック)である場合は、ステップS7−4に移行する。
なお、図7のフローチャート中では、図5、図6と同様に、工具交換指令を、便宜上、(B)と略称している。
ステップS7−4において、ブロック情報チェック部108が、発見された工具交換指令(ブロック)の前に、送り軸の位置決め指令(ブロック)があるか否かを判断する。この判断を行うために、ブロック情報チェック部108は、前の指令をブロック情報保存部112から取り出して判断を行う。この判断の結果、送り軸の位置決め指令(ブロック)があった場合は、同ステップS7−4の処理を続行し、さらに一つ前に位置決め指令があるか否か判断する。この処理は、さらに一つ前に送り軸の位置決め指令が続いている限り続行される。例えば、後述する図8Bに示すように、複数の送り軸の位置決め指令が存在する場合は、最初の送り軸の位置決め指令までこの処理は続く。なお、図7のフローチャート中では、送り軸の位置決め指令を、便宜上(C)と略称している。一方、ステップS7−4において、送り軸の位置決め指令(C)ではないと判断された場合は、ステップS7−5に移行する。
ステップS7−5において、ブロック情報チェック部108は、さらに、一つ前の指令が、回転工具軸停止指令(ブロック)であるか否かを判断する。この判断も、ブロック情報保存部112の内容を参照することによって行う。この判断の結果、一つ前のブロックが、回転工具軸停止指令(ブロック)があった場合は、ステップS7−8に移行する。
一方、一つ前のブロックに、回転工具軸停止指令(ブロック)がなかった場合は、ステップS7−6に移行する。このステップS7−6に移行する場合は、図3A、図3Bに示すように、(図2A、図2Bと異なり、)送り軸の位置決め指令の前に回転工具軸停止指令(D)がなかった場合である。この場合の動作は、説明の都合上、次の実施形態3−2で説明する。なお、回転工具軸停止指令(ブロック)は、図7のフローチャート中では(D)と略称されている。
なお、一つ前のブロックが回転工具軸停止指令(D)であった場合とは、1個または2個以上の送り軸の位置決め指令の前に、回転工具軸停止指令(D)がある場合であり、この場合、ステップS7−8に移行する。例えば、送り軸の位置決め指令が1個の場合の例が、図2A、図2Bで説明されている。
ステップS7−8において、ブロック情報チェック部108は、その送り軸の位置決め指令(ブロック)の解析内容を、位置決めの動作と共に回転工具軸停止動作を実行させるよう情報に設定する。具体的には、ステップS7−8において、ブロック情報変更部110が、ブロック情報チェック部108からの指示を受けて、ブロック情報保存部112内の当該情報を上記内容に書き換える(または書き足す)。
これによって、図2Bで説明したように、送り軸の位置決め指令の動作中に、同時に回転工具軸停止動作を実行させることが可能である。送り軸の位置決め指令が複数個存在する場合は、その最初の送り軸の位置決め指令の動作中に回転工具軸停止動作を実行させる。
さらに、次のステップS7−9において、ステップS7−5において見出された回転工具軸停止指令(D)を実行しないように設定する。
すなわち、ブロック情報変更部110は、ブロック情報チェック部108からの指示を受けて、元のプログラム指令に含まれていた上記回転工具軸停止指令(D)(ステップS7−5)の解析内容を、ブロック情報保存部112(A)から削除する。
これらステップS7−8、S7−9の動作は、解決原理2に基づくものであり、適用状況としては、図2A、図2Bに示される状況である。
そして、ステップS7−10においては、ステップS5−5と同様の処理が実行される。すなわち、現在着目しているブロック、すなわち現在の解析対象である工具交換指令の直前のブロック、すなわち送り軸の位置決め指令のブロックの解析内容を、位置決めの動作と共に回転工具受軸オリエンテーションを実行させるような情報に設定する。具体的には、ステップS7−10において、ブロック情報変更部110が、ブロック情報チェック部からの指示を受けて、ブロック情報保存部112内の当該情報を上記内容に書き換える(または書き足す)。
さらに、同ステップS7−10において、現在着目しているブロック、すなわち現在の解析対象である工具交換指令のブロックの解析内容を、回転軸オリエンテーション動作を実行しないような内容に設定する。具体的には、ステップS7−10において、ブロック情報変更部110が、ブロック情報チェック部からの指示を受けて、現在着目しているブロックである工具交換指令のブロックの解析情報(ブロック情報保存部112内)から、回転工具軸オリエンテーション動作を除去し、工具交換動作のみを実行させるような内容に書き換える(または回転工具軸オリエンテーション動作の情報を削除する)のである。
このステップS7−10の動作は、解決原理1に基づくものであり、適用状況としては、図1に示される状況だからである。
以上のような動作によって、提供されたプログラム中の指令の並びに基づき、適宜その解釈結果を書き換えることができる。そして、書き換えた解釈内容に基づき、プログラム実行部114が、各動作の指令を工作機械に与える。
この結果、提供された既存のプログラム自体は何ら変更せずに、プログラム解析部104が、指令の並びに基づき、解釈を並べ替えたので、解決原理1、2に基づく動作の変更を行うことが可能である。したがって、このように解決原理1及び2を共に適用する場合も、既存のプログラムを何ら変更せずに工具交換時のサイクルタイムの短縮を図ることが可能である。
<実施形態3−2(解決原理1と、解決原理2とを共に適用した例その2)>
回転工具軸オリエンテーション動作の時間を削減する解決原理1と、回転工具軸停止の時間を削減する解決原理2とを共に適用した場合の動作例その2を説明する。この動作例2は、図3A、図3Bに示すように、送り軸の位置決め指令の前に回転工具軸停止指令が存在しない場合の動作を中心に説明する。
この実施形態3−2においては、上述したように、外部から提供されてきたプログラムが、プログラム入力部102において入力され、プログラム解析部104に送られる。
次に、数値制御装置100のプログラム解析部104においては、上記実施形態3−1において説明したような処理がステップS7−5(図7参照)まで進み、そのステップS7−5において、一つ前のブロックが回転工具軸停止指令ではないことが判定する。その結果ステップS7−6に移行する。以下、ステップS7−6以降の処理を説明する。
ステップS7−6において、ブロック情報チェック部108は、ブロック情報チェック部108は、その送り軸の位置決め指令(ブロック)の解析内容を、位置決めの動作と共に回転工具軸停止動作を実行させるような情報に設定する。具体的には、ステップS7−6において、ブロック情報変更部110が、ブロック情報チェック部108からの指示を受けて、ブロック情報保存部112内の当該情報を上記内容に書き換える(または書き足す)。
これによって、図3Bで説明したように、送り軸の位置決め指令の動作中に、同時に回転工具軸停止動作を実行させることが可能である。送り軸の位置決め指令が1個または2個以上存在する場合は、その最初の送り軸の位置決め指令の動作中に回転工具軸停止動作を実行させる。
さらに、ステップS7−6において、現在着目しているブロック、すなわち現在の解析対象である工具交換指令のブロックの解析内容を、回転工具軸停止動作を実行しないような内容に設定する。具体的には、ステップS7−6において、ブロック情報変更部110が、ブロック情報チェック部からの指示を受けて、現在着目しているブロックである工具交換指令のブロックの解析情報(ブロック情報保存部112内)から、回転工具軸停止動作を除去し、工具交換動作のみを実行させるような内容に書き換える(または回転工具軸停止動作の情報を削除する)のである。
このステップS7−7の動作は、解決原理2に基づく処理であり、特に、図3A、図3Bに示す状況における処理である。
そして、ステップS7−7においては、ステップS5−5と同様の処理が実行される。すなわち、現在着目しているブロック、すなわち現在の解析対象である工具交換指令の直前のブロック、すなわち送り軸の位置決め指令のブロックの解析内容を、位置決めの動作と共に回転工具受軸オリエンテーションを実行させるような情報に設定する。具体的には、ステップS7−7において、ブロック情報変更部110が、ブロック情報チェック部からの指示を受けて、ブロック情報保存部112内の当該情報を上記内容に書き換える(または書き足す)。
さらに、同ステップS7−7において、現在着目しているブロック、すなわち現在の解析対象である工具交換指令のブロックの解析内容を、回転軸オリエンテーション動作を実行しないような内容に設定する。具体的には、ステップS7−7において、ブロック情変更部110が、ブロック情報チェック部からの指示を受けて、現在着目しているブロックである工具交換指令のブロックの解析情報(ブロック情報保存部112内)から、回転工具軸オリエンテーション動作を除去し、工具交換動作のみを実行させるような内容に書き換える(または回転工具軸オリエンテーション動作の情報を削除する)のである。
このステップS7−7の動作は、解決原理1に基づくものであり、適用状況としては、図1に示される状況だからである。
以上のような動作によって、提供されたプログラム中の指令の並びに基づき、その指令の解釈された実行内容を適宜書き換えることができる。そして、書き換えた解釈内容に基づき、プログラム実行部114が、各動作の指令を工作機械に与える。
この結果、提供された既存のプログラム自体は何ら変更せずに、プログラム解析部104が、指令の並びに基づき、解釈を並べ替えたので、解決原理1及び解決原理2に基づく動作の変更を行うことが可能である。したがって、既存のプログラムを何ら変更せずに工具交換時のサイクルタイムの短縮を図ることが可能である。
<効果>
以上説明したように、本実施形態において下記のような効果がある。
従来は、与えられたプログラム中の各指令をその順番どおりに順次実行しているので、サイクルタイムが伸びてしまう。
これに対して、これまで説明した実施形態によれば、所定の指令の動作を同時に並列に実行することによって、特に、回転工具軸停止動作と、回転工具軸オリエンテーション動作の実行時間の削減が可能となる。
また、従来、図14B(図16A、図16B)で説明したプログラムの場合、工具交換指令開始時に実行される回転工具軸オリエンテーション動作実行前に、必ず回転工具軸の回転停止を行うため、その回転停止実行時間が必要となっていた。
これに対して、本実施形態によれば、CNC(Computer Numerical Control:コンピュータ数値制御)の制御によって、工具交換指令より前に、位置決め動作と同時に回転工具軸停止を行うことにより、回転停止に要する時間の削減が可能である。
また、図14A、図14Bに示されたプログラムを、図14Cに示すプログラムのように、位置決め指令時に、M05(回転工具軸停止指令)や回転工具軸オリエンテーションを同時に指令するようにプログラムを変更すれば、工具交換にかかるサイクルタイム短縮は可能かもしれない。しかしながら、既存のプログラムについてはプログラムの変更が必要となり、変更のための作業が煩雑となりがちである。また、プログラム変更時の変更ミスの可能性が発生してしまう。
これに対して、本実施形態によれば、プログラムの変更を行うことなく、回転工具軸停止動作と、回転工具軸オリエンテーション動作と、の実行時間の削減が可能である。
<変形例1>
以上述べた効果において、送り軸の位置決め指令と、(回転工具軸停止指令、および/または、回転工具軸オリエンテーション動作)の実行時間が逆転する場合もある。このような場合においても、結局はいずれか実行時間の短い方の指令の実行時間分の削減が可能である点は上述した実施形態と同様である。
例えば、図1において、送り軸の位置決め指令の実行時間より回転工具軸オリエンテーション動作の実行時間の方が短い例を示しているが、逆に、送り軸の位置決め指令の実行時間の方が短い場合に、送り軸の位置決め指令の動作と回転工具軸オリエンテーション動作とを共に実行することによって、送り軸の位置決め指令の動作時間を実質的に削減することができる。
すなわち、両動作を同時に実行することによって、それらの実行時間は長い動作時間の方に合わせられる。その結果、短い実行時間の動作を(順番に単独で実行する場合に比べて)実質的に消滅させることができる。
また、例えば、図2Bにおいて、送り軸の位置決め指令の実行時間より回転工具軸停止動作の実行時間の方が短い例を示しているが、逆に、送り軸の位置決め指令の実行時間の方が短い場合でも、送り軸の位置決め指令の動作と回転工具軸停止動作とを共に実行することによって、送り軸の位置決め指令の動作時間を実質的に削減することができる。
この場合も、両動作を同時に実行することによって、実行時間が長い動作時間の方に合わせられ、短い実行時間の動作を実質的に消滅させたものである。
<変形例2>
また、本実施形態で説明する解決原理1や解決原理2の処理と、従来動作の処理とを切り替えるように構成してもよい。この切り替えは、パラメータの設定、または、プログラム指令、または信号の指令により行うことができる。
<変形例3−1>
図8Aに示すプログラムのように、送り軸の位置決め指令が連続するプログラムも考えられる。このような場合は、連続する送り軸の位置決め指令の最初の送り軸の位置決め指令の開始タイミングで、回転工具軸停止動作、および/または、回転工具軸オリエンテーション動作を実行してもよい。つまり、図8Bに示すように、最初の送り軸の位置決め指令(Y,Z)の開始時刻t18から、回転工具軸停止動作が開始されている。その後、回転工具軸停止動作が時刻t19で終了すると、引き続き、時刻t19から、回転工具軸オリエンテーション動作が開始される。
<変形例3−2>
また、図9Aに示すプログラムのように、連続した送り軸の位置決め指令の途中で、いずれかの送り軸の位置決め指令と同じブロックに回転工具軸停止指令があるプログラムも考えられる。図9Aの例では、送り軸の位置決め指令G00Yyyとともに、回転工具軸停止指令M05が存在している。このような場合は、連続する送り軸の位置決め指令の最初の送り軸の位置決め指令の開始タイミングで、その途中の回転工具軸停止動作、および/または、工具交換指令中の回転工具軸オリエンテーション動作を実行してもよい。つまり、図9Bに示すように、最初の送り軸の位置決め指令(Y,Z)の開始時刻t20から、連続する送り軸の位置決め指令の途中に存在していた回転工具軸停止動作が開始されている。その後、回転工具軸停止動作が時刻t21で終了すると、引き続き、時刻t21から、回転工具軸オリエンテーション動作が開始される。
なお、複数の連続する送り軸の位置決め指令の「最初」の指令のブロックに、上記回転工具軸停止指令がある場合は、特に動作タイミングを変更することはない。一方、複数の連続する送り軸の位置決め指令の「最初」以外の指令のブロックに、上記回転工具軸停止指令がある場合は、上述のように、最初の送り軸の位置決め指令の開始タイミングで回転工具軸停止動作を実行してよい。
<変形例3−3>
なお、これまで説明した各実施形態、及び、上記変形例3−1、3−2においては、連続した送り軸の位置決め指令が存在する場合は、その最初の送り軸の位置決め指令において、回転工具軸停止動作、および/または、回転工具軸オリエンテーション動作を実行することを説明したが、必ずしも「最初」でなくてもよい。複数の送り軸の位置決め指令のいずれかの指令の実行のタイミングで、回転工具軸停止動作、および/または、回転工具軸オリエンテーション動作を実行してもよい。このような動作の場合も、回転工具軸停止動作、および/または、回転工具軸オリエンテーション動作を送り軸の位置決め動作と並行して実行することができ、サイクルタイムの短縮化が図れる。
なお、回転工具軸停止動作および回転工具軸オリエンテーション動作を共に送り軸の位置決め動作と並行して実行する場合は、回転工具軸停止動作を実行した後、回転工具軸オリエンテーション動作を実行してもよい。
<先行特許との比較>
上述した特許文献1には、「所定位置に到達したのち、オリエンテーションが完了したかを判断」し、オリエンテーションが完了していない場合に、回転工具軸停止とオリエンテーションを行う技術が開示されている。これに対して、本実施形態によれば、プログラム解析時に工具交換指令があるか否かを判断し、その存在が見出された場合は、その工具交換指令の前の(1または2以上の)位置決め指令の実行する際に、最初の位置決め指令のタイミングで回転工具軸停止指令、および/または、オリエンテーションを実行させるものである。そのため、特許文献1に開示の技術と異なり、主軸が所定位置に到達することを判断する必要がない。
また、特に特許文献1では、主軸の所定位置への移動指令前に、回転工具軸停止指令があった場合には回転工具軸停止と位置決め動作を同時に行うことができない。一方、本実施形態では、回転工具軸停止指令があっても、その回転工具軸停止指令と位置決め指令を同時に実行することが可能なようにプログラム解析時に指令を作成するため、それらの処理を同時に実行することが可能となる。
さらに、特許文献1では、プログラム指令についてはなんら記載がなく、本実施形態にあるような不要となる回転工具軸停止指令ブロックを実行しないようにブロック情報を変更して、プログラムを実行するような制御はなんら開示されていない。
例えば、図14Aで示したプログラムは、工具交換の際に用いられる典型的な通常のプログラムである。送り軸の位置決め指令(G00Zzz)の移動距離が長い場合に、回転工具軸を回転させ続けることは省電力の観点からも無駄であるため、図14Aのプログラム例のように、(G00Zzz)の前に回転工具軸停止指令(M05)を実行することはしばしば行われる。
このような場合は、特許文献1によれば、(M05)と(G00Zzz)を同時に実行することができず、(M05)を実行後に(G00Zzz)が実行されることになる。
これに対して本実施形態によれば、実施形態2−1、図6のフローチャートに記載の通り、(M05)直後の(G00Zzz)で(M05)を同時に実行するようにブロック情報を変更し、なおかつ、(M05)ブロックの情報を削除することで、プログラムを編集しなくても、指令された(M05)単独ブロックを実行することなく、(M05)と(G00Zzz)を同時に実行することが可能となり、サイクルタイム短縮が可能となる。
このため、一般的に使用されることの多い、図14Aで示したプログラム例においても本実施形態によれば、特許文献1と異なりサイクルタイムの短縮が可能となる。
このように、本実施形態は、特許文献1と顕著に相違し、本実施形態が開示する技術は、特許文献1が開示する技術から容易に想到できる技術ではない。
以上、本発明の実施形態について詳細に説明したが、前述した実施形態は、本発明を実施するにあたっての具体例を示したに過ぎない。本発明の技術的範囲は、前記実施形態に限定されるものではない。本発明は、その趣旨を逸脱しない範囲において種々の変更が可能であり、それらも本発明の技術的範囲に含まれる。
2 ワーク
4 主軸
6 旋削加工用工具
8 回転工具
10 ツーリング
10a テーパ部
10b キー溝
12 回転工具軸
12a テーパ部
12b キー
14 グリップ
14a キー
100 数値制御装置
102 プログラム入力部
104 プログラム解析部
106 ブロック解析部
108 ブロック情報チェック部
110 ブロック情報変更部
112 ブロック情報保存部
114 プログラム実行部

Claims (10)

  1. 工作機械の動作を記述するプログラムを入力するプログラム入力部と、
    前記入力したプログラムを解析し、解析結果を出力するプログラム解析部と、
    前記プログラム解析部が解析した解析結果に基づき前記工作機械を制御するプログラム実行部と、
    を具備し、
    前記プログラム解析部は、
    前記プログラム中の指令のブロックを解析し、前記解析結果をブロック情報保存部に保存するブロック解析部と、
    前記解析結果を保存する前記ブロック情報保存部と、
    前記ブロック解析部の前記解析結果をチェックし、所定の条件が成立した場合は、前記指令のブロックの解析結果の変更を、ブロック情報変更部に指示するブロック情報チェック部と、
    前記ブロック情報チェック部の指示に基づき、前記ブロック情報保存部に保存されている前記解析結果を変更するブロック情報変更部と、
    を備え、
    前記ブロック情報チェック部は、
    前記解析結果中で見いだした工具交換指令の前に1個または2個以上の送り軸の位置決め指令があると判断した場合、
    前記見いだした工具交換指令中の回転工具軸オリエンテーション動作を、前記1個または2個以上の送り軸の位置決め指令ブロックのいずれかの送り軸の位置決め指令の実行の際に実行するように、前記ブロック情報保存部に保存されている前記解析結果を変更するようにブロック情報変更部に指示する数値制御装置。
  2. 前記ブロック情報チェック部は、
    前記解析結果中で見いだした工具交換指令の前に1個または2個以上の送り軸の位置決め指令があると判断した場合、
    前記見いだした工具交換指令中の回転工具軸オリエンテーションの動作を、前記工具交換指令中の動作から除去するように、前記ブロック情報変更部に指示する請求項1記載の数値制御装置。
  3. 工作機械の動作を記述するプログラムを入力するプログラム入力部と、
    前記入力したプログラムを解析し、解析結果を出力するプログラム解析部と、
    前記プログラム解析部が解析した解析結果に基づき前記工作機械を制御するプログラム実行部と、
    を具備し、
    前記プログラム解析部は、
    前記プログラム中の指令のブロックを解析し、前記解析結果をブロック情報保存部に保存するブロック解析部と、
    前記解析結果を保存する前記ブロック情報保存部と、
    前記ブロック解析部の前記解析結果をチェックし、所定の条件が成立した場合は、前記指令のブロックの解析結果の変更を、ブロック情報変更部に指示するブロック情報チェック部と、
    前記ブロック情報チェック部の指示に基づき、前記ブロック情報保存部に保存されている前記解析結果を変更するブロック情報変更部と、
    を備え、
    前記ブロック情報チェック部は、
    前記解析結果中で見出した工具交換指令の前に1個または2個以上の送り軸の位置決め指令があり、前記1個または2個以上の送り軸の位置決め指令の前に、回転工具軸停止指令があると判断した場合、
    前記回転工具軸停止指令の動作を、前記1個または2個以上の送り軸の位置決め指令ブロックのいずれかの送り軸の位置決め指令の実行の際に実行するように、前記ブロック情報保存部に保存されている前記解析結果を変更するようにブロック情報変更部に指示する数値制御装置。
  4. 前記ブロック情報チェック部は、
    前記解析結果中で見出した工具交換指令の前に1個または2個以上の送り軸の位置決め指令があり、前記1個または2個以上の送り軸の位置決め指令の前に、回転工具軸停止指令があると判断した場合、
    前記1個または2個以上の送り軸の位置決め指令の前にある前記回転工具軸停止指令の解析結果を、前記ブロック情報保存部から除去するように、前記ブロック情報変更部に指示する請求項3記載の数値制御装置。
  5. 工作機械の動作を記述するプログラムを入力するプログラム入力部と、
    前記入力したプログラムを解析し、解析結果を出力するプログラム解析部と、
    前記プログラム解析部が解析した解析結果に基づき前記工作機械を制御するプログラム実行部と、
    を具備し、
    前記プログラム解析部は、
    前記プログラム中の指令のブロックを解析し、前記解析結果をブロック情報保存部に保存するブロック解析部と、
    前記解析結果を保存する前記ブロック情報保存部と、
    前記ブロック解析部の前記解析結果をチェックし、所定の条件が成立した場合は、前記指令のブロックの解析結果の変更を、ブロック情報変更部に指示するブロック情報チェック部と、
    前記ブロック情報チェック部の指示に基づき、前記ブロック情報保存部に保存されている前記解析結果を変更するブロック情報変更部と、
    を備え、
    前記ブロック情報チェック部は、
    前記解析結果中で見出した工具交換指令の前に1個または2個以上の送り軸の位置決め指令があり、前記1個または2個以上の送り軸の位置決め指令の前に、回転工具軸停止指令がないと判断した場合、
    前記工具交換指令中の回転工具軸停止の動作を、前記1個または2個以上の送り軸の位置決め指令ブロックのいずれかの送り軸の位置決め指令の実行の際に実行するように、前記ブロック情報保存部に保存されている前記解析結果を変更するようにブロック情報変更部に指示する数値制御装置。
  6. 工作機械の動作を記述するプログラムを入力するプログラム入力部と、
    前記入力したプログラムを解析し、解析結果を出力するプログラム解析部と、
    前記プログラム解析部が解析した解析結果に基づき前記工作機械を制御するプログラム実行部と、
    を具備し、
    前記プログラム解析部は、
    前記プログラム中の指令のブロックを解析し、前記解析結果をブロック情報保存部に保存するブロック解析部と、
    前記解析結果を保存する前記ブロック情報保存部と、
    前記ブロック解析部の前記解析結果をチェックし、所定の条件が成立した場合は、前記指令のブロックの解析結果の変更を、ブロック情報変更部に指示するブロック情報チェック部と、
    前記ブロック情報チェック部の指示に基づき、前記ブロック情報保存部に保存されている前記解析結果を変更するブロック情報変更部と、
    を備え、
    前記ブロック情報チェック部は、
    前記解析結果中で見出した工具交換指令の前に2個以上の送り軸の位置決め指令があり、前記2個以上の送り軸の位置決め指令中のいずれかの送り軸の位置決め指令と同じブロック中に回転工具軸停止指令があると判断した場合、
    前記回転工具軸停止指令の動作を、前記回転工具軸停止指令があるブロックでそのまま実行するために、前記ブロック情報保存部に保存されている前記解析結果を変更する指示を前記ブロック情報変更部に出さない第1の処理と、
    または、
    前記回転工具軸停止指令の動作を、前記2個以上の送り軸の位置決め指令ブロックのうちいずれかの別の送り軸の位置決め指令の実行の際に実行するように、前記ブロック情報保存部に保存されている前記解析結果を変更するようにブロック情報変更部に指示する第2の処理と、
    のいずれかの処理を実行する数値制御装置。
  7. 前記ブロック情報チェック部が前記第2の処理を実行する場合、
    前記ブロック情報チェック部は、
    前記ブロック情報保存部の前記回転工具軸停止指令があったブロックから、前記回転工具軸停止指令の解析結果を除去するように、前記ブロック情報変更部に指示する請求項6記載の数値制御装置。
  8. 前記ブロック情報チェック部は、
    前記解析結果中で見出した工具交換指令の前に1個または2個以上の送り軸の位置決め指令があり、前記1個または2個以上の送り軸の位置決め指令の前に、回転工具軸停止指令があると判断した場合、
    前記回転工具軸停止指令の動作を、前記1個または2個以上の送り軸の位置決め指令ブロックのいずれかの送り軸の位置決め指令の実行の際に実行するように、前記ブロック情報保存部に保存されている前記解析結果を変更するようにブロック情報変更部に指示し、
    且つ、
    前記回転工具軸停止指令の動作の後に、前記回転工具軸オリエンテーション動作を実行するように、前記ブロック情報保存部に保存されている前記解析結果を変更するようにブロック情報変更部に指示する請求項1記載の数値制御装置。
  9. 前記ブロック情報チェック部は、
    前記解析結果中で見出した工具交換指令の前に1個または2個以上の送り軸の位置決め指令があり、前記1個または2個以上の送り軸の位置決め指令の前に、回転工具軸停止指令がないと判断した場合、
    前記工具交換指令中の回転工具軸停止の動作を、前記1個または2個以上の送り軸の位置決め指令ブロックのいずれかの送り軸の位置決め指令の実行の際に実行するように、前記ブロック情報保存部に保存されている前記解析結果を変更するようにブロック情報変更部に指示し、
    且つ、
    前記回転工具軸停止の動作の後に、前記回転工具軸オリエンテーション動作を実行するように、前記ブロック情報保存部に保存されている前記解析結果を変更するようにブロック情報変更部に指示する請求項1記載の数値制御装置。
  10. 請求項1から9のいずれか1項に記載の数値制御装置と、
    前記数値制御装置により制御される前記工作機械と、
    を具備する工作機械システム。
JP2017036405A 2017-02-28 2017-02-28 数値制御装置および工作機械システム Active JP6453923B2 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2017036405A JP6453923B2 (ja) 2017-02-28 2017-02-28 数値制御装置および工作機械システム
US15/880,895 US10671053B2 (en) 2017-02-28 2018-01-26 Numerical controller and machine tool system
DE102018201758.1A DE102018201758A1 (de) 2017-02-28 2018-02-06 Numerische steuerung und maschinenanlagensystem
CN201810162130.3A CN108508849B (zh) 2017-02-28 2018-02-26 数值控制装置以及机床***

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017036405A JP6453923B2 (ja) 2017-02-28 2017-02-28 数値制御装置および工作機械システム

Publications (2)

Publication Number Publication Date
JP2018142194A true JP2018142194A (ja) 2018-09-13
JP6453923B2 JP6453923B2 (ja) 2019-01-16

Family

ID=63112398

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017036405A Active JP6453923B2 (ja) 2017-02-28 2017-02-28 数値制御装置および工作機械システム

Country Status (4)

Country Link
US (1) US10671053B2 (ja)
JP (1) JP6453923B2 (ja)
CN (1) CN108508849B (ja)
DE (1) DE102018201758A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPWO2021230202A1 (ja) * 2020-05-15 2021-11-18

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6120104A (ja) * 1984-07-06 1986-01-28 Fanuc Ltd 数値制御方式
JPS6425208A (en) * 1987-07-21 1989-01-27 Fanuc Ltd Numerical controller
JPH1148072A (ja) * 1997-08-07 1999-02-23 Brother Ind Ltd 工作機械
JP2003058212A (ja) * 2001-08-21 2003-02-28 Seibu Electric & Mach Co Ltd 数値制御工作装置
JP2010069545A (ja) * 2008-09-16 2010-04-02 Brother Ind Ltd 数値制御式工作機械及び数値制御式工作機械の制御プログラム
JP2012141762A (ja) * 2010-12-28 2012-07-26 Brother Ind Ltd 数値制御工作機械、制御プログラム及び記憶媒体
JPWO2013171850A1 (ja) * 2012-05-15 2016-01-07 三菱電機株式会社 数値制御装置
JP2016045937A (ja) * 2014-08-22 2016-04-04 ファナック株式会社 加工プログラムのサイクルタイムを短縮する数値制御装置
JP2017016323A (ja) * 2015-06-30 2017-01-19 ファナック株式会社 補助機能の実行を事前通知する数値制御装置

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3904945B2 (ja) 2002-02-28 2007-04-11 スター精密株式会社 Ncプログラムのための最適データ変換方法および数値制御工作機械
JP2004326618A (ja) 2003-04-25 2004-11-18 Star Micronics Co Ltd 工作機械の数値制御装置
JP2004001229A (ja) 2003-07-29 2004-01-08 Mori Seiki Co Ltd Nc工作機械
CN1258431C (zh) 2004-03-31 2006-06-07 清华大学 数控机床误差补偿方法及其***
DE102007027503A1 (de) 2007-06-14 2009-01-08 Trumpf Werkzeugmaschinen Gmbh + Co. Kg Verfahren zur optimierten Bewegungskoordination von Mess- oder Werkzeugmaschinen mit redundanten translatorisch wirksamen Achsen
CN100473474C (zh) 2007-07-13 2009-04-01 山东法因数控机械股份有限公司 数控平板冲孔机板料再定位***
JP5657623B2 (ja) 2012-09-21 2015-01-21 ファナック株式会社 系統間待合せ機能を有する数値制御装置
JP6077497B2 (ja) 2014-07-18 2017-02-08 ファナック株式会社 繰返し加工を行う数値制御装置

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6120104A (ja) * 1984-07-06 1986-01-28 Fanuc Ltd 数値制御方式
JPS6425208A (en) * 1987-07-21 1989-01-27 Fanuc Ltd Numerical controller
JPH1148072A (ja) * 1997-08-07 1999-02-23 Brother Ind Ltd 工作機械
JP2003058212A (ja) * 2001-08-21 2003-02-28 Seibu Electric & Mach Co Ltd 数値制御工作装置
JP2010069545A (ja) * 2008-09-16 2010-04-02 Brother Ind Ltd 数値制御式工作機械及び数値制御式工作機械の制御プログラム
JP2012141762A (ja) * 2010-12-28 2012-07-26 Brother Ind Ltd 数値制御工作機械、制御プログラム及び記憶媒体
JPWO2013171850A1 (ja) * 2012-05-15 2016-01-07 三菱電機株式会社 数値制御装置
JP2016045937A (ja) * 2014-08-22 2016-04-04 ファナック株式会社 加工プログラムのサイクルタイムを短縮する数値制御装置
JP2017016323A (ja) * 2015-06-30 2017-01-19 ファナック株式会社 補助機能の実行を事前通知する数値制御装置

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPWO2021230202A1 (ja) * 2020-05-15 2021-11-18
WO2021230202A1 (ja) * 2020-05-15 2021-11-18 ファナック株式会社 数値制御装置及び制御方法
JP7401661B2 (ja) 2020-05-15 2023-12-19 ファナック株式会社 数値制御装置及び制御方法

Also Published As

Publication number Publication date
JP6453923B2 (ja) 2019-01-16
US10671053B2 (en) 2020-06-02
CN108508849B (zh) 2020-03-13
CN108508849A (zh) 2018-09-07
DE102018201758A1 (de) 2018-08-30
US20180246498A1 (en) 2018-08-30

Similar Documents

Publication Publication Date Title
JP5355356B2 (ja) 部品プログラムの作成のための方法
US10558193B2 (en) Method for machining a workpiece in a machine tool with optimized machining time
JP6423811B2 (ja) 加工情報に応じて加工条件を変更可能な数値制御装置
US10782669B2 (en) Machining parameter adjustment system and machining parameter adjustment method
JP2010123122A6 (ja) 部品プログラムの作成のための方法
JP2017204188A (ja) 条件指定による加工プログラム先読み開始機能を備えた数値制御装置
JP6453923B2 (ja) 数値制御装置および工作機械システム
US11402822B2 (en) Numerical controller
JP5886656B2 (ja) 数値制御装置
US20230286169A1 (en) Numerical control system and robot control method
JP5210070B2 (ja) 数値制御工作機械
US10146213B2 (en) Numerical controller for automatically switching acceleration/deceleration setting in accordance with machining content or state
JP6444923B2 (ja) 数値制御装置
JP6770018B2 (ja) 設定装置及び設定プログラム
US7139635B2 (en) Multi-system numerical control device
JP2004202594A (ja) 数値制御装置
US11782415B2 (en) Numerical controller having scalable performance
US8498733B2 (en) Method and apparatus for reducing tool change operations
JP2000089813A (ja) 加工プログラム編集方法および工作機械の制御装置
JP2011039701A (ja) 数値制御装置、数値制御方法及び数値制御プログラム
JP7401665B2 (ja) 数値制御装置及び制御方法
WO2022196622A9 (ja) 数値制御装置
JP6935606B1 (ja) 情報処理装置および情報処理プログラム
JP2018197989A (ja) 数値制御装置
JP6919427B2 (ja) 工作機械、工作機械の制御方法、及び、工作機械の制御プログラム

Legal Events

Date Code Title Description
A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20180627

A975 Report on accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A971005

Effective date: 20180830

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20180918

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20181017

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20181213

R150 Certificate of patent or registration of utility model

Ref document number: 6453923

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150