WO2023276121A1 - 数値制御装置 - Google Patents

数値制御装置 Download PDF

Info

Publication number
WO2023276121A1
WO2023276121A1 PCT/JP2021/024998 JP2021024998W WO2023276121A1 WO 2023276121 A1 WO2023276121 A1 WO 2023276121A1 JP 2021024998 W JP2021024998 W JP 2021024998W WO 2023276121 A1 WO2023276121 A1 WO 2023276121A1
Authority
WO
WIPO (PCT)
Prior art keywords
command
specified
analysis unit
numerical value
machining program
Prior art date
Application number
PCT/JP2021/024998
Other languages
English (en)
French (fr)
Other versions
WO2023276121A9 (ja
Inventor
庸士 大西
Original Assignee
ファナック株式会社
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 ファナック株式会社 filed Critical ファナック株式会社
Priority to CN202180099863.7A priority Critical patent/CN117561484A/zh
Priority to JP2023531303A priority patent/JPWO2023276121A1/ja
Priority to US18/568,962 priority patent/US20240272619A1/en
Priority to DE112021007514.4T priority patent/DE112021007514T5/de
Priority to PCT/JP2021/024998 priority patent/WO2023276121A1/ja
Publication of WO2023276121A1 publication Critical patent/WO2023276121A1/ja
Publication of WO2023276121A9 publication Critical patent/WO2023276121A9/ja

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
    • 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/408Numerical 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 data handling or data format, e.g. reading, buffering or conversion of data
    • 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/32105Calculate machining axis, best feasible orientation for machining
    • 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/35Nc in input of data, input till input file format
    • G05B2219/35304Real time analysis, check of program, just before machining
    • 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/35Nc in input of data, input till input file format
    • G05B2219/35376Input program, analyze, store to buffer ready to control nc, no further data handling

Definitions

  • FIG. 3 is a block diagram showing an example of functions of a numerical control device;
  • FIG. It is a figure which shows an example of a processing program.
  • FIG. 4 is a diagram showing an example of execution timing of a speed command;
  • FIG. 4 is a flow chart showing an example of the flow of processing executed by a numerical control device;
  • It is a figure which shows an example of a processing program.
  • 7A and 7B are diagrams for explaining the operation of the control axis when the machining program shown in FIG. 6 is executed;
  • FIG. It is a figure which shows an example of a processing program.
  • It which shows an example of a processing program.
  • It which shows an example of a processing program.
  • the numerical controller 2 is a device that controls the machine tool 1 as a whole.
  • the numerical controller 2 includes a hardware processor 201 , a bus 202 , a ROM (Read Only Memory) 203 , a RAM (Random Access Memory) 204 and a nonvolatile memory 205 .
  • the hardware processor 201 is a processor that controls the entire numerical controller 2 according to the system program.
  • a hardware processor 201 reads a system program or the like stored in a ROM 203 via a bus 202 and performs various processes based on the system program. Also, the hardware processor 201 controls the servo motor 5 and the spindle motor 7 based on the machining program.
  • the hardware processor 201 is, for example, a CPU (Central Processing Unit) or an electronic circuit.
  • the hardware processor 201 analyzes the machining program and outputs control commands to the servo motor 5 and the spindle motor 7 for each control cycle.
  • the servo motor 5 is driven by being supplied with current from the servo amplifier 4 .
  • the servomotor 5 is connected to, for example, a ball screw that drives the tool post.
  • a structure of the machine tool 1 such as the tool post moves in, for example, the X-axis direction, the Y-axis direction, or the Z-axis direction.
  • the servomotor 5 may incorporate a speed detector (not shown) for detecting the feed speed of each feed shaft.
  • a spindle control circuit 208 is a circuit for controlling the spindle motor 7 .
  • a spindle control circuit 208 receives a control command from the hardware processor 201 and outputs a command for driving the spindle motor 7 to the spindle amplifier 6 .
  • the spindle control circuit 208 for example, sends a torque command for controlling the torque of the spindle motor 7 to the spindle amplifier 6 .
  • the spindle motor 7 is driven by being supplied with current from the spindle amplifier 6 .
  • a spindle motor 7 is connected to the main shaft and rotates the main shaft.
  • the I/O unit 210 is an interface that connects the PLC 209 and the auxiliary device 8.
  • the I/O unit 210 sends commands received from the PLC 209 to the auxiliary equipment 8 .
  • FIG. 2 is a block diagram showing an example of functions of the numerical controller 2. As shown in FIG.
  • the numerical controller 2 includes a machining program storage unit 21 , a command analysis unit 22 , a command information generation unit 23 and a control unit 24 .
  • the machining program storage unit 21 is realized, for example, by storing the machining program input from the input/output device 3 in the RAM 204 or the non-volatile memory 205 .
  • the multiple commands include a first command, a second command, and a third command.
  • Numerical values that define axis motion are, for example, coordinate values in a predetermined coordinate system.
  • a coordinate value "X150.Y140.” in a predetermined coordinate system is designated as the first command for the block with sequence number N101.
  • the predetermined coordinate system is, for example, the machine coordinate system of the machine tool 1 or the workpiece coordinate system.
  • the numerical value defining the axis motion may be the amount of movement of the axis in a predetermined coordinate system.
  • the numerical value that defines the axis motion may be execution time. An example in which the numerical value defining the axis motion is execution time will be described in detail later.
  • a preparation function command is a command for internal setting of the numerical controller 2 for processing preparation.
  • the ready function commands are G-code commands such as, for example, G00, G01, G02, G03, and G04.
  • G00 is a positioning command
  • G01 is a linear interpolation command
  • G02 is a circular interpolation command for drawing a clockwise circular arc
  • G03 is a circular interpolation command for drawing a counterclockwise circular arc
  • G04 is a dwell command.
  • a speed command is a command that specifies the feed speed when the control axis moves with cutting feed.
  • a speed command is specified by an F code. In the example shown in FIG. 3, speed commands "600", “500” and "400" are designated by the F code.
  • the spindle rotation command is a command that specifies the rotation speed of the spindle.
  • a spindle rotation command is specified by an S code.
  • the tool change command is a command for changing tools.
  • a tool change command is specified by a T code.
  • the third command is a command that defines the execution timing of the second command. Execution timing is when the second command becomes valid or the period during which the second command is valid.
  • the third command includes any of a numerical value indicating position, a numerical value indicating operating distance, a numerical value indicating operating time, a numerical value indicating operating distance ratio, and a numerical value indicating operating time ratio in axis operation.
  • the command analysis unit 22 generates a first command including a numerical value that defines an axis operation, a second command including one of a preparation function command, a speed command, a spindle rotation command, a tool change command, and an auxiliary command, and a second command.
  • a machining program is analyzed that includes a third instruction that defines the execution timing of the second instruction in one block.
  • the command analysis unit 22 reads the machining program stored in the machining program storage unit 21 and analyzes each command included in each block of the machining program.
  • the command information generator 23 also generates command information for moving the control axis at a feed rate of 500 [mm/min] in the next 3/5 distance section between the position of X100, Y100 and the position of X150, Y140. to generate In other words, the command information generator 23 generates command information for performing cutting feed by linear interpolation from the position of X110, Y108 toward the position of X140, Y132 at a feed rate of 500 [mm/min].
  • the numerical values that define the axis motion include any of coordinate values, movement amount, and execution time.
  • the third command includes any one of a numerical value indicating position, a numerical value indicating operating distance, a numerical value indicating operating time, a numerical value indicating operating distance ratio, and a numerical value indicating operating time ratio in axis operation. . That is, the numerical controller 2 can generate command information based on various types of third commands. As a result, the operator can create a machining program to be executed by the numerical controller 2 in accordance with the operation mode of the control axis. In other words, the numerical controller 2 can reduce the burden on the operator in programming.
  • the first command is a coordinate value or a numerical value indicating the amount of movement.
  • the first command is not limited to these, and may include a numerical value indicating execution time.

Landscapes

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

Abstract

数値制御装置が、軸動作を規定する数値を含む第1の指令と、準備機能指令、速度指令、主軸回転指令、工具交換指令、および補助指令のいずれかを含む第2の指令と、第2の指令の実行タイミングを規定する第3の指令とを1つのブロックに含む加工プログラムを解析する指令解析部と、指令解析部によって解析された第1の指令および第3の指令に基づいて、第2の指令の指令情報を生成する指令情報生成部と、を備える。

Description

数値制御装置
 本開示は、工作機械を制御する数値制御装置に関する。
 従来、数値制御装置において、1つのブロック中に複数の指令値の組が配列される加工プログラムを用いることが提案されている(例えば、特許文献1)。このような指令形式の加工プログラムは、1つのブロック中で指定された複数の指令値の組によって、工作機械における連続的な動作の実行を指令する。
特開2020-98428号公報
 しかし、このような指令形式の加工プログラムでは多くの数値が1つのブロックに配列されるため、加工プログラムの可読性が低下するおそれがある。また、各数値をあらかじめ定めておく必要があるため、作業者にとって加工プログラムの作成が大きな負担となる。
 本開示は、1つのブロック中に複数の指令値の組が配列される加工プログラムの作成の負担を軽減することが可能な数値制御装置を提供すること目的とする。
 数値制御装置が、軸動作を規定する数値を含む第1の指令と、準備機能指令、速度指令、主軸回転指令、工具交換指令、および補助指令のいずれかを含む第2の指令と、第2の指令の実行タイミングを規定する第3の指令とを1つのブロックに含む加工プログラムを解析する指令解析部と、指令解析部によって解析された第1の指令および第3の指令に基づいて、第2の指令の指令情報を生成する指令情報生成部と、を備える。
 本開示の一態様により、1つのブロック中に複数の指令値の組が配列される加工プログラム作成の負担を軽減することが可能となる。
数値制御装置のハードウェア構成の一例を示すブロック図である。 数値制御装置の機能の一例を示すブロック図である。 加工プログラムの一例を示す図である。 速度指令の実行タイミングの一例を示す図である。 数値制御装置が実行する処理の流れの一例を示すフローチャートである。 加工プログラムの一例を示す図である。 図6に示す加工プログラムが実行されたときの制御軸の動作を説明する図である。 加工プログラムの一例を示す図である。 加工プログラムの一例を示す図である。 加工プログラムの一例を示す図である。 加工プログラムの一例を示す図である。 図11に示す加工プログラムが実行されたときの制御軸およびクーラントの動作について説明する図である。 加工プログラムの一例を示す図である。
 以下、本開示の一実施形態について図面を用いて説明する。なお、以下の実施形態で説明される特徴のすべての組み合わせが課題解決に必ずしも必要であるとは限らない。また、必要以上の詳細な説明を省略する場合がある。また、以下の実施形態の説明、および図面は、当業者が本開示を十分に理解するために提供されるものであり、特許請求の範囲を限定することを意図していない。
 図1は、数値制御装置を備える工作機械のハードウェア構成の一例を示すブロック図である。工作機械1は、旋盤、マシニングセンタおよび複合加工機を含む。工作機械1は、ワイヤ放電加工機を含んでいてもよい。
 工作機械1は、数値制御装置2と、入出力装置3と、サーボアンプ4およびサーボモータ5と、スピンドルアンプ6およびスピンドルモータ7と、補助機器8とを備える。
 数値制御装置2は、工作機械1全体を制御する装置である。数値制御装置2は、ハードウェアプロセッサ201と、バス202と、ROM(Read Only Memory)203と、RAM(Random Access Memory)204と、不揮発性メモリ205とを備えている。
 ハードウェアプロセッサ201は、システムプログラムに従って数値制御装置2全体を制御するプロセッサである。ハードウェアプロセッサ201は、バス202を介してROM203に格納されたシステムプログラムなどを読み出し、システムプログラムに基づいて、各種処理を行う。また、ハードウェアプロセッサ201は、加工プログラムに基づいて、サーボモータ5およびスピンドルモータ7を制御する。ハードウェアプロセッサ201は、例えば、CPU(Central Processing Unit)、または電子回路である。
 ハードウェアプロセッサ201は、制御周期ごとに、例えば、加工プログラムの解析、ならびに、サーボモータ5およびスピンドルモータ7に対する制御指令の出力を行う。
 バス202は、数値制御装置2内の各ハードウェアを互いに接続する通信路である。数値制御装置2内の各ハードウェアはバス202を介してデータをやり取りする。
 ROM203は、数値制御装置2全体を制御するためのシステムプログラムなどを記憶する記憶装置である。ROM203は、コンピュータ読み取り可能な記憶媒体である。
 RAM204は、各種データを一時的に格納する記憶装置である。RAM204は、ハードウェアプロセッサ201が各種データを処理するための作業領域として機能する。
 不揮発性メモリ205は、工作機械1の電源が切られ、数値制御装置2に電力が供給されていない状態でもデータを保持する記憶装置である。不揮発性メモリ205は、例えば、加工プログラム、および各種パラメータを記憶する。不揮発性メモリ205は、コンピュータ読み取り可能な記憶媒体である。不揮発性メモリ205は、例えば、SSD(Solid State Drive)で構成される。
 数値制御装置2は、さらに、インタフェース206と、軸制御回路207と、スピンドル制御回路208と、PLC(Programmable Logic Controller)209と、I/Oユニット210とを備える。
 インタフェース206は、バス202と入出力装置3とを接続する。インタフェース206は、例えば、ハードウェアプロセッサ201が処理した各種データを入出力装置3に送る。
 入出力装置3は、インタフェース206を介して各種データを受け、各種データを表示する装置である。また、入出力装置3は、各種データの入力を受け付けてインタフェース206を介して各種データをハードウェアプロセッサ201に送る。入出力装置3は、例えば、タッチパネルである。入出力装置3がタッチパネルである場合、タッチパネルは、例えば、静電容量方式のタッチパネルである。なお、タッチパネルは、静電容量方式に限らず、他の方式のタッチパネルであってもよい。入出力装置3は、例えば、数値制御装置2が格納される操作盤(不図示)に取り付けられる。
 軸制御回路207は、サーボモータ5を制御する回路である。軸制御回路207は、ハードウェアプロセッサ201からの制御指令を受けてサーボモータ5を駆動させるための指令をサーボアンプ4に出力する。軸制御回路207は、例えば、サーボモータ5のトルクを制御するトルクコマンドをサーボアンプ4に送る。
 サーボアンプ4は、軸制御回路207からの指令を受けて、サーボモータ5に電流を供給する。
 サーボモータ5は、サーボアンプ4から電流の供給を受けて駆動する。サーボモータ5は、例えば、刃物台を駆動させるボールねじに連結される。サーボモータ5が駆動することにより、刃物台などの工作機械1の構造物は、例えば、X軸方向、Y軸方向、またはZ軸方向に移動する。なお、サーボモータ5は、各送り軸の送り速度を検出する速度検出器(不図示)を内蔵していてもよい。
 スピンドル制御回路208は、スピンドルモータ7を制御するための回路である。スピンドル制御回路208は、ハードウェアプロセッサ201からの制御指令を受けてスピンドルモータ7を駆動させるための指令をスピンドルアンプ6に出力する。スピンドル制御回路208は、例えば、スピンドルモータ7のトルクを制御するトルクコマンドをスピンドルアンプ6に送る。
 スピンドルアンプ6は、スピンドル制御回路208からの指令を受けて、スピンドルモータ7に電流を供給する。
 スピンドルモータ7は、スピンドルアンプ6から電流の供給を受けて駆動する。スピンドルモータ7は、主軸に連結され、主軸を回転させる。
 PLC209は、ラダープログラムを実行して補助機器8を制御する装置である。PLC209は、I/Oユニット210を介して補助機器8に対して指令を送る。
 I/Oユニット210は、PLC209と補助機器8とを接続するインタフェースである。I/Oユニット210は、PLC209から受けた指令を補助機器8に送る。
 補助機器8は、工作機械1に設置され、工作機械1において補助的な動作を行う機器である。補助機器8は、I/Oユニット210から受けた指令に基づいて動作する。補助機器8は、工作機械1の周辺に設置される機器であってもよい。補助機器8は、例えば、工具交換装置、切削液噴射装置、または開閉ドア駆動装置である。
 次に、数値制御装置2の機能について説明する。
 図2は、数値制御装置2の機能の一例を示すブロック図である。数値制御装置2は、加工プログラム記憶部21と、指令解析部22と、指令情報生成部23と、制御部24とを備える。
 加工プログラム記憶部21は、例えば、入出力装置3から入力された加工プログラムが、RAM204、または不揮発性メモリ205に記憶されることにより実現される。
 指令解析部22、指令情報生成部23、および制御部24は、例えば、ハードウェアプロセッサ201が、ROM203に記憶されているシステムプログラムならびに不揮発性メモリ205に記憶されている各種データを用いて演算処理することにより実現される。
 加工プログラム記憶部21は、ワークの加工に用いられる加工プログラムを記憶する。
 図3は、加工プログラムの一例を示す図である。加工プログラムには、例えば、複数の指令を含む1つのブロックが含まれる。
 1つのブロックとは、加工プログラムの1つの行を意味する。つまり、図3に示す加工プログラムのシーケンス番号N100の行は1つのブロックである。またシーケンス番号N101の行は1つのブロックである。
 複数の指令は、第1の指令と、第2の指令と、第3の指令とを含む。
 第1の指令は、例えば、軸動作を規定する数値を含む。軸動作とは、制御軸が、X軸、Y軸などの軸に沿って移動する動作、または停止する動作である。軸動作は、制御軸が移動せずに待機すること、すなわち、停止状態を維持することを含む。
 軸動作を規定する数値は、例えば、所定の座標系における座標値である。図3に示す例では、シーケンス番号N101のブロックに第1の指令として、所定の座標系における座標値「X150.Y140.」が指定されている。なお、所定の座標系とは、例えば、工作機械1の機械座標系、または、ワーク座標系である。軸動作を規定する数値は、所定の座標系における軸の移動量であってもよい。また、軸動作を規定する数値は、実行時間であってもよい。軸動作を規定する数値が実行時間である場合の例については、後に詳しく説明する。
 第2の指令は、準備機能指令、速度指令、主軸回転指令、工具交換指令、および補助指令のいずれかを含む。
 準備機能指令とは、加工準備のために数値制御装置2の内部設定を行う指令である。準備機能指令は、例えば、G00、G01、G02、G03、およびG04などのGコードによる指令である。なお、G00は位置決め指令、G01は直線補間指令、G02は時計回りの円弧を描く円弧補間指令、G03は反時計回りの円弧を描く円弧補間指令、G04はドウェル指令である。
 速度指令とは、制御軸が切削送りで移動するときの送り速度を指定する指令である。速度指令は、Fコードによって指定される。図3に示す例では、Fコードによって速度指令「600」、「500」および「400」が指定されている。
 主軸回転指令は、主軸の回転速度を指定する指令である。主軸回転指令は、Sコードによって指定される。
 工具交換指令は、工具交換を行うための指令である。工具交換指令は、Tコードによって指定される。
 補助指令は、制御軸の動作以外の機能を実行するための指令である。補助指令は、Mコードによって指定される。
 第3の指令は、第2の指令の実行タイミングを規定する指令である。実行タイミングとは、第2の指令が有効になる時、または、第2の指令が有効になっている期間である。第3の指令は、軸動作における、位置を示す数値、動作距離を示す数値、動作時間を示す数値、動作距離の比を示す数値、および動作時間の比を示す数値のいずれかを含む。
 図3に示す例では、第2の指令「600」、「500」、「400」に対してそれぞれ、第3の指令として動作距離の比を示す数値「1」、「3」、「1」が指定されている。つまり、第3の指令は、第2の指令が有効になる期間を動作距離の比を示す数値によって指定している。「1」、「3」、「1」は動作距離の比ではなく、制御軸の動作時間の比であってもよい。また、第3の指令が、動作距離の比であるか動作時間の比であるかなどは、あらかじめ所定のパラメータによって設定されるようにしてよい。さらに、第2の指令が動作距離の比であることを明確に規定するために、「RATIO_LENGTH」などの指令が加工プログラムで指定されるようにしてもよい。
 また、位置を示す数値、動作距離を示す数値、動作時間を示す数値、および動作時間の比を示す数値は、それぞれ、例えば、POS{X}、LENGTH{X}、TIME、およびRATIO_TIMEによって指定されるようにしてもよい。また、第3の指令は、軸方向を指定しない合成距離LENGTHによって指定されるようにしてもよい。ここで、図2に戻って数値制御装置2の機能の説明を続ける。
 指令解析部22は、軸動作を規定する数値を含む第1の指令と、準備機能指令、速度指令、主軸回転指令、工具交換指令、および補助指令のいずれかを含む第2の指令と、第2の指令の実行タイミングを規定する第3の指令とを1つのブロックに含む加工プログラムを解析する。指令解析部22は、加工プログラム記憶部21に記憶された加工プログラムを読み込んで、加工プログラムの各ブロックに含まれる各指令を解析する。
 指令解析部22は、加工プログラムで指定された各指令を1ブロックごと読み込んで解析する。指令解析部22は、各ブロックの指令を順次先読みして解析してもよい。
 例えば、図3に示すシーケンス番号N100のブロックでは、「G00 X100. Y100.」が指定されている。指令解析部22はこのブロックの指令を、X100、Y100の位置に早送りで制御軸を移動させる指令であると解釈する。
 また、シーケンス番号N101のブロックでは、「G01 X150. Y140. F=[1,600],[3,500],[1,400]」が指定されている。指令解析部22はこのブロックの指令を、X100、Y100の位置からX150、Y140の位置まで切削送りで制御軸を移動させると解釈する。また、指令解析部22は、X100、Y100の位置とX150、Y140の位置との間の最初の1/5の距離の区間を送り速度600[mm/min]で制御軸を移動させると解釈する。また、指令解析部22は、次の3/5の距離の区間を送り速度500[mm/min]で制御軸を移動させると解釈する。また、指令解析部22は、最後の1/5の距離の区間を送り速度400[mm/min]で制御軸を移動させると解釈する。
 指令情報生成部23は、指令解析部22によって解析された第1の指令および第3の指令に基づいて、第2の指令の指令情報を生成する。
 図4は、速度指令の実行タイミングの一例を示す図である。具体的には、図4は、図3に示す加工プログラムが実行されるときの速度指令の実行タイミングを示すグラフである。
 指令解析部22が図3に示す加工プログラムを解析した結果に基づいて、指令情報生成部23は、X100、Y100の位置とX150、Y140の位置との間の最初の1/5の距離の区間を送り速度600[mm/min]で制御軸を移動させる指令情報を生成する。言い換えれば、指令情報生成部23は、X100、Y100の位置からX110、Y108の位置に向かって送り速度600[mm/min]で直線補間による切削送りを行う指令情報を生成する。
 また、指令情報生成部23は、X100、Y100の位置とX150、Y140の位置との間の次の3/5の距離の区間を送り速度500[mm/min]で制御軸を移動させる指令情報を生成する。言い換えれば、指令情報生成部23は、X110、Y108の位置からX140、Y132の位置に向かって送り速度500[mm/min]で直線補間による切削送りを行う指令情報を生成する。
 また、指令情報生成部23は、X100、Y100の位置とX150、Y140の位置との間の最後の1/5の距離の区間を送り速度400[mm/min]で制御軸を移動させる指令情報を生成する。言い換えれば、X140、Y132の位置からX150、Y140の位置に向かって送り速度400[mm/min]で直線補間による切削送りを行う指令情報を生成する。
 つまり、指令情報生成部23は、第1の指令による制御軸の動作において、送り速度が600[mm/min]で動作する区間と、送り速度が500[mm/min]で動作する区間と、送り速度が400[mm/min]で動作する区間との間の動作距離の比が1:3:1となるように制御指令を生成する。
 制御部24は、指令情報生成部23によって生成された指令情報に基づいて工作機械1の各部を制御する。制御部24は、例えば、X軸、Y軸およびZ軸などの制御軸を制御することにより主軸頭、または刃物台などの動作を制御する。これにより、数値制御装置2は、工作機械1にワークの加工を行わせることができる。
 次に、数値制御装置2が実行する処理の流れについて説明する。
 図5は、数値制御装置2が実行する処理の流れの一例を示すフローチャートである。
 まず、指令解析部22が加工プログラム記憶部21に記憶された加工プログラムを読み込む(ステップS1)。
 次に、指令解析部22が読み込んだ加工プログラムの指令を解析し、各指令を解釈する(ステップS2)。
 次に、指令解析部22によって解釈された加工プログラムの各指令に基づいて、指令情報生成部23が指令情報を生成する(ステップS3)。
 最後に、制御部24が指令情報生成部23によって生成された指令情報に基づいて工作機械1の各部を制御し(ステップS4)、処理を終了する。
 以上説明したように、数値制御装置2は、軸動作を規定する数値を含む第1の指令と、準備機能指令、速度指令、主軸回転指令、工具交換指令、および補助指令のいずれかを含む第2の指令と、第2の指令の実行タイミングを規定する第3の指令とを1つのブロックに含む加工プログラムを解析する指令解析部22と、指令解析部22によって解析された第1の指令および第3の指令に基づいて、第2の指令の指令情報を生成する指令情報生成部23と、を備える。
 これにより、数値制御装置2は、第1の指令と、第2の指令と、第3の指令とを1つのブロックに含む加工プログラムに基づいて、指令情報を生成することができる。つまり、数値制御装置2は、1つのブロック中に複数の指令値の組が配列される加工プログラム作成の負担を軽減することができる。
 また、軸動作を規定する数値は、座標値、移動量、および実行時間のいずれかを含む。さらに、第3の指令は、軸動作における、位置を示す数値、動作距離を示す数値、動作時間を示す数値、動作距離の比を示す数値、および動作時間の比を示す数値のいずれかを含む。つまり、数値制御装置2は、様々な種類の第3の指令に基づいて、指令情報を生成することができる。その結果、作業者は数値制御装置2において実行される加工プログラムを制御軸の動作態様に合わせて作成することができる。言い換えれば、数値制御装置2は、作業者のプログラム作成における負担を軽減することが可能となる。
 上述した実施形態の説明では、第2の指令が速度指令のみ、すなわち、第2の指令が1種類の指令である場合の例について説明した。しかし、第2の指令は、複数種類の指令を含んでいてもよい。
 図6は、加工プログラムの一例を示す図である。図7は、図6に示す加工プログラムが実行されたときの制御軸の動作を説明する図である。シーケンス番号N200のブロックには、「G90 G00 Z50.」が指定されている。G90はアブソリュート指令である。アブソリュート指令の下では、設定されている座標系における座標値に基づいて軸動作が行われる。したがって、指令解析部22は、シーケンス番号N200のブロックで指定された指令を、Z50.の位置まで早送りで制御軸を移動させる指令であると解釈する。
 なお、G00はモーダル指令である。モーダル指令とは、1つのグループに属する他のGコードが指令されるまで無効化されない指令である。G00、G01、G02、G03、およびG04は1つのグループに属する指令である。つまり、一のブロックでG00が指定された場合、一のブロックに続く他のブロックでG01など他の指令が指定されるまでG00が有効である。
 シーケンス番号N201のブロックでは「X100. Y100.」が指定されている。また、シーケンス番号N201のブロックではGコードが指定されておらず、シーケンス番号N200のブロックで指定されたG00が有効である。したがて、指令解析部22は、シーケンス番号N201のブロックで指定された指令を、X100、Y100の位置まで早送りで制御軸を移動させる指令であると解釈する。
 シーケンス番号N202のブロックでは「Z-30.,G,F=[9, , ],[6,01,400],[1, ,200]」が指定されている。このうち、「Z-30.」が第1の指令である。また、G00はシーケンス番号N202で指定されている「Z-30.」に対しても有効である。
 「G,F=[9, , ],[6,01,400],[1, ,200]」は、第2の指令と第3の指令とが組み合わされた指令である。アドレス「G,F」、ならびに、各々の角括弧内の中央に示される数値および右側に示される数値がそれぞれ、第2の指令である。つまり、中央の角括弧、および右側の角括弧内で指定された「400」、および「200」がそれぞれ第2の指令である。なお、左側の角括弧内ではG00が指定されているとみなされるため、アドレスFに対応する数値の指定は省略されている。
 上述したようにG00、G01などのGコードはモーダル指令である。そのため、左側および右側の角括弧内の中央の数値の指定は省略されている。
 左側の角括弧、中央の角括弧、および右側の角括弧内で指定された「9」、「6」、および「1」がそれぞれ、第2の指令に対して指定された第3の指令である。第3の指令は、動作距離の比を示す数値である。
 したがって、指令解析部22は、シーケンス番号N202で指定された指令を、Z50の位置とZ-30の位置との間の最初の9/16の距離の区間を早送りで制御軸を移動させる指令であると解釈する。また、指令解析部22は、Z50の位置とZ-30の位置との間の次の6/16の距離の区間を送り速度400[mm/min]で移動させる指令であると解釈する。また、指令解析部22は、Z50の位置とZ-30の位置との間の最後の1/16の距離の区間を送り速度200[mm/min]で制御軸を移動させる指令であると解釈する。
 シーケンス番号N202で指定された指令が解析されると、指令情報生成部23はZ50の位置からZ5の位置まで制御軸を早送りで移動させる指令を生成する。また、指令情報生成部23は、Z5の位置からZ-25の位置まで制御軸を送り速度400[mm/min]で切削送りさせる指令情報を生成する。また、指令情報生成部23は、Z-25の位置からZ-30の位置まで制御軸を送り速度200[mm/min]で切削送りさせる指令情報を生成する。
 シーケンス番号N203のブロックでは「Z50.,G,F=[1, , ],[6, ,400],[9,00, ]」が指定されている。このうち、「Z50.」が第1の指令である。
 また、「G,F=[1, , ],[6, ,400],[9,00, ]」は、第2の指令と第3の指令とが組み合わされた指令である。アドレス「G,F」、ならびに、各々の角括弧内の中央に示される数値および右側に示される数値がそれぞれ、第2の指令である。つまり、左側の角括弧、中央の角括弧、および右側の角括弧内で指定された「400」、および「00」がそれぞれ第2の指令である。
 上述したようにG00、G01などのGコードはモーダル指令である。そのため、左側および中央の角括弧内の中央の数値、ならびに左側の角括弧内の右側の数値の指定は省略されている。
 左側の角括弧、中央の角括弧、および右側の角括弧内で指定された「1」、「6」、および「9」がそれぞれ、第2の指令に対して指定された第3の指令である。第3の指令は、動作距離の比を示す数値である。
 したがって、指令解析部22は、シーケンス番号N203で指定された指令を、Z-30の位置とZ50の位置との間の最初の1/16の距離の区間を送り速度200[mm/min]で制御軸を移動させる指令であると解釈する。また、指令解析部22は、Z-25の位置とZ5の位置との間の次の6/16の距離の区間を送り速度400[mm/min]で制御軸を移動させる指令であると解釈する。指令解析部22は、Z5の位置とZ50の位置との間の最後の9/16の距離の区間を早送りで移動させる指令であると解釈する。
 シーケンス番号N203で指定された指令が解析されると、指令情報生成部23はZ-30の位置からZ-25の位置まで制御軸を送り速度200[mm/min]で切削送りさせる指令情報を生成する。また、指令情報生成部23は、Z-25の位置からZ5の位置まで制御軸を送り速度400[mm/min]で切削送りさせる指令情報を生成する。また、指令情報生成部23は、Z5の位置からZ50の位置まで制御軸を早送りで移動させる指令情報を生成する。
 シーケンス番号N204のブロックには、「X110.」が指定されている。したがって、指令解析部22は、シーケンス番号N204で指定された指令を、X110の位置まで制御軸を早送りで移動させると解釈する。指令情報生成部23はX100の位置からX110の位置まで制御軸を早送りさせる指令情報を生成する。
 以上説明したように、指令解析部22は、1つのブロックに複数種類の第2の指令を含む加工プログラムを解析するようにしてもよい。この場合、加工プログラムが簡略化され、作業者による加工プログラム作成の負担を軽減することができる。
 上述した実施形態では、第3の指令は軸動作における動作距離の比を示す数値である。第3の指令は位置を示す数値であってもよい。位置を示す数値とは、例えば、座標値である。
 図8は、加工プログラムの一例を示す図である。シーケンス番号N300のブロックでは、「G90 G00 X100. Y100.」が指定されている。指令解析部22は、シーケンス番号N300のブロックで指定された指令を、X100、Y100の位置まで制御軸を早送りで移動させる指令であると解釈する。
 シーケンス番号N301のブロックでは、「G01 X150.,Y140.,POS{X},F=[110,,600],[140.,500],[ ,400]」が指定されている。このうち、「X150.,Y140.」が第1の指令である。
 「POS{X},F=[110,,600],[140.,500],[ ,400]」は、第2の指令と第3の指令とが組み合わされた指令である。アドレス「F」、ならびに、各々の角括弧内の右側に示される数値がそれぞれ、第2の指令である。つまり、左側の角括弧、中央の角括弧、および右側の角括弧内で指定された「600」、「500」、「400」がそれぞれ第2の指令である。
 また、左側の角括弧、および中央の角括弧内で指定された「110.」および「140.」がそれぞれ、第2の指令に対して指定された第3の指令である。また、右側の角括弧内の第3の指令は、第1の指令「X150.」と同じであるため指定が省略されている。
 指令解析部22は、シーケンス番号N301で指定された指令を、X100、Y100の位置とX150、Y140の位置との間の最初の区間を送り速度600[mm/min]で制御軸を移動させる指令であると解釈する。ここで、最初の区間とは、X100の位置からX110.の位置までの区間である。また、X110の位置ではY108である。
 また、指令解析部22は、シーケンス番号N301で指定された指令を、X100、Y100の位置とX150、Y140の位置との間の次の区間を送り速度500[mm/min]で制御軸を移動させる指令であると解釈する。ここで、次の区間とは、X110の位置からX140の位置までの区間である。また、X140の位置ではY132である。
 また、指令解析部22は、シーケンス番号N301で指定された指令を、X100、Y100の位置とX150、Y140の位置との間の最後の区間を送り速度400[mm/min]で制御軸を移動させる指令であると解釈する。ここで、最後の区間とは、X140位置からX150の位置までの区間である。また、X150の位置ではY140である。
 以上説明したように、指令解析部22は、第3の指令が位置を示す数値によって指定された加工プログラムを解析するようにしてもよい。この場合、加工プログラムが簡略化され、作業者による加工プログラム作成の負担を軽減することができる。また、第3の指令が位置を示す数値によって指定されることにより、制御軸が到達する座標が明確になる。また、第3の指令の一部の指定を省略することが可能になる。さらに、第3の指令を一部の制御軸に対して指定することが可能になる。
 上述した実施形態では、第3の指令は軸動作における位置を示す数値である。第3の指令は動作距離を示す数値であってもよい。
 図9は、加工プログラムの一例を示す図である。シーケンス番号N400のブロックでは、「G90 G00 X100. Y100.」が指定されている。指令解析部22は、シーケンス番号N400のブロックで指定された指令を、X100、Y100の位置まで早送りで制御軸を移動させる指令であると解釈する。
 シーケンス番号N401のブロックでは、「G01 X150.,Y140.,LENGTH{X},F=[10,,600],[30.,500],[ ,400]」が指定されている。このうち、「X150.,Y140.」が第1の指令である。
 「LENGTH{X},F=[10,,600],[30.,500],[ ,400]」は、第2の指令と第3の指令とが組み合わされた指令である。アドレス「F」、ならびに、各々の角括弧内の右側に示される数値がそれぞれ、第2の指令である。つまり、左側の角括弧、中央の角括弧、および右側の角括弧内で指定された「600」、「500」、「400」がそれぞれ第2の指令である。
 左側の角括弧、および中央の角括弧内で指定された「10.」および「30.」はそれぞれ、第2の指令に対して指定された第3の指令である。また、左側の角括弧、および中央の角括弧内で軸動作における位置を示す数値が指定されると、右側の各括弧内の第3の指令は自ずと定まる。そのため、右側の角括弧内では第3の指令の指定が省略されている。
 指令解析部22は、シーケンス番号N401で指定された指令を、X100、Y100の位置とX150、Y140の位置との間の最初の区間を送り速度600[mm/min]で移動させる指令であると解釈する。ここで、最初の区間とは、X100の位置と、X100の位置からX軸方向に10だけ離れた位置との間の区間である。すなわち、X100の位置とX110の位置との間の区間である。なお、X110の位置ではY108である。
 また、指令解析部22は、シーケンス番号N401で指定された指令を、X100、Y100の位置とX150、Y140との間の次の区間を送り速度500[mm/min]で移動させる指令であると解釈する。ここで、次の区間とは、X110の位置と、X110の位置からX軸方向に30だけ離れた位置との間の区間である。すなわち、X110の位置とX140の位置との間の区間である。なお、X140の位置ではY132である。
 また、指令解析部22は、シーケンス番号N401で指定された指令を、X100、Y100の位置とX150、Y140の位置との間の最後の区間を送り速度400[mm/min]で移動させる指令であると解釈する。ここで、最後の区間とは、X140の位置とX150の位置との間の区間である。なお、X150の位置ではY140である。
 以上説明したように、指令解析部22は、第3の指令が動作距離を示す数値によって指定された加工プログラムを解析するようにしてもよい。この場合、加工プログラムが簡略化され、作業者による加工プログラム作成の負担を軽減することができる。
 上述した実施形態では、第3の指令が動作距離を示す数値である。第2の指令が主軸回転指令であって、第3の指令が動作時間を示す数値であってもよい。
 図10は、加工プログラムの一例を示す図である。シーケンス番号N500のブロックでは、「G90 G00 Z100.」が指定されている。指令解析部22は、シーケンス番号N500のブロックで指定された指令を、Z100の位置まで制御軸を早送りで移動させる指令であると解釈する。
 シーケンス番号N501のブロックでは、「G00 Z0.,TIME,S=[ ,0],[100,1000]」が指定されている。このうち、「Z0.」が第1の指令である。
 また、「TIME,S=[ ,0],[100,1000]」は、第2の指令と第3の指令とが組み合わされた指令である。アドレス「S」、および各々の角括弧内の右側に示される数値がそれぞれ、第2の指令である。つまり、左側の角括弧、および右側の角括弧内で指定された「0」、および「1000」がそれぞれ第2の指令である。
 右側の角括弧で指定された「100」は、第2の指令「1000」に対して指定された第3の指令である。また、左側の角括弧内の第3の指令の指定は省略されている。
 指令解析部22は、シーケンス番号N501で指定された指令を、Z100の位置からZ0の位置に制御軸が到達する100[ms]前までの主軸の回転速度を0[rev/min]で回転させる指令であると解釈する。すなわち、指令解析部22は、この期間の主軸の回転を停止させると解釈する。
 指令解析部22は、シーケンス番号N501で指定された指令を、Z100の位置からZ0の位置に制御軸が到達する100[ms]前からZ0.の位置に到達するまでの主軸の回転速度を1000[rev/min]で回転させる指令であると解釈する。
 シーケンス番号N502のブロックでは、「G01 Z-10. F300」が指定されている。指令解析部22は、シーケンス番号N502のブロックで指定された指令を、Z-10の位置まで送り速度300[mm/min]で制御軸を移動させる指令であると解釈する。
 シーケンス番号N503のブロックでは、「Z0.」が指定されている。指令解析部22は、シーケンス番号N503のブロックで指定された指令を、Z0の位置まで送り速度300[mm/min]で制御軸を移動させる指令であると解釈する。
 シーケンス番号N504のブロックでは、「G00 Z50.,TIME,S=[100,0],[ ,1000]」が指定されている。このうち、「Z50.」が第1の指令である。
 「TIME,S=[100,0],[ ,1000]」は、第2の指令と第3の指令とが組み合わされた指令である。アドレス「S」、および各々の角括弧内の右側に示される数値がそれぞれ、第2の指令である。つまり、左側の角括弧、および右側の角括弧内で指定された「0」、および「1000」がそれぞれ第2の指令である。
 左側の角括弧で指定された「100」が、第2の指令「0」に対して指定された第3の指令である。また、右側の角括弧内の第3の指令の指定は省略されている。
 指令解析部22は、シーケンス番号N504で指定された指令を、Z0の位置からZ50の位置に制御軸が到達する100[ms]前までの主軸の回転速度を0[rev/min]で回転させると解釈する。すなわち、指令解析部22は、この期間、主軸の回転を停止させると解釈する。
 また、指令解析部22は、シーケンス番号N504で指定された指令を、Z0の位置からZ50の位置に制御軸が到達する100[ms]前からZ50の位置に到達するまでの主軸の回転速度を1000[rev/min]で回転させる指令であると解釈する。
 以上説明したように、指令解析部22は、第2の指令が主軸回転指令であって、第3の指令が動作時間を示す数値によって指定された加工プログラムを解析してもよい。この場合、加工プログラムが簡略化され、作業者による加工プログラム作成の負担を軽減することができる。
 上述した実施形態では、第2の指令が主軸回転指令である。第2の指令は補助指令であってもよい。
 図11は、加工プログラムの一例を示す図である。図12は、図11に示す加工プログラムが実行されたときの制御軸およびクーラントの動作について説明する図である。シーケンス番号N600のブロックには、「G00 X100. Y100.」が指定されている。指令解析部22は、シーケンス番号N600のブロックで指定された指令を、X100、Y100の位置まで早送りで制御軸を移動させる指令であると解釈する。
 シーケンス番号N601のブロックでは、「G01 X150.,Y140.,F=600,M,M=[1,8,19],[3,9,18],[1,8,19]」が指定されている。このうち、「X150.,Y140.」が第1の指令である。
 また、「M,M=[1,8,19],[3,9,18],[1,8,19]」は、第2の指令と第3の指令とが組み合わされた指令である。アドレス「M」、ならびに、各々の角括弧内の中央に示される数値、および右側に示される数値がそれぞれ、第2の指令である。つまり、左側の角括弧、中央の角括弧、および右側の角括弧内で指定された「8,19」、「9,18」、「8,19」がそれぞれ第2の指令である。
 左側の角括弧、中央の角括弧、および右側の角括弧内で指定された「1」、「3」、および「1」がそれぞれ、第2の指令に対して指定された第3の指令である。第3の指令は、例えば、動作距離の比を示す数値である。
 したがって、指令解析部22は、シーケンス番号N601で指定された指令を、X100、Y100の位置とX150、Y140の位置との間の最初の1/5の距離の区間を制御軸が移動する間、M8、およびM19の指令が有効であると解釈する。
 また、指令解析部22は、シーケンス番号N601で指定された指令を、X100、Y100の位置とX150、Y140の位置との間の次の3/5の距離の区間を制御軸が移動する間、M9、およびM18の指令が有効であると解釈する。
 また、指令解析部22は、シーケンス番号N601で指定された指令を、X100、Y100の位置とX150、Y140の位置との間の最後の1/5の距離の区間を制御軸が移動する間、M8、およびM19の指令が有効であると解釈する。
 なお、M8およびM18は、2系統のクーラントシステムを備えている工作機械1において、第1の系統のクーラントシステム、および第2の系統のクーラントシステムをそれぞれオン状態にする指令である。また、M9およびM19は、2系統のクーラントシステムを備えている工作機械1において、第1の系統のクーラントシステム、および第2の系統のクーラントシステムをそれぞれオフ状態にする指令である。
 したがって、制御軸が最初の区間を移動する間は、例えば、第1の系統のクーラントシステムがオン状態になり、第2の系統のクーラントシステムがオフ状態となる。また、制御軸が次の区間を移動する間、第1の系統のクーラントシステムがオフ状態となり、第2の系統のクーラントシステムがオン状態となる。また、制御軸が最後の区間を移動する間、第1の系統のクーラントシステムがオン状態となり、第2の系統のクーラントシステムがオフ状態となる。
 以上説明したように、指令解析部22は、第2の指令が補助指令、特に、クーラントをオン状態にする指令、またはオフ状態にする指定によって指定された加工プログラムを解析してもよい。この場合、工具がワークを切削するときの工具とワークとの接触位置に合わせて、クーラントをオン状態、またはオフ状態にすることができる。また、加工プログラムが簡略化され、作業者による加工プログラム作成の負担を軽減することができる。
 上述した各実施形態では、第1の指令が座標値、または移動量を示す数値である例について説明した。第1の指令はこれらに限られず、実行時間を示す数値を含んでいてもよい。
 図13は、加工プログラムの一例を示す図である。シーケンス番号N700のブロックでは、「G00 Z100.」が指定されている。指令解析部22は、シーケンス番号N700のブロックで指定された指令を、Z100の位置まで制御軸を早送りで移動させる指令であると解釈する。
 シーケンス番号N701のブロックでは、「G04 X1000.,TIME,S=[500,1000],[,1500]」が指定されている。このうち、「X1000.」が実行時間を示す数値を含む第1の指令である。なお、第1の指令によって、X軸の動作が1000[ms]の間停止される。
 また、「TIME,S=[500,1000],[,1500]」は、第2の指令と第3の指令とが組み合わされた指令である。アドレス「S」、および各々の角括弧内の右側に示される数値がそれぞれ、第2の指令である。つまり、左側の角括弧、および右側の角括弧内で指定された「1000」、および「1500」がそれぞれ第2の指令である。
 左側の角括弧で指定された「500」は、第2の指令「1000」に対して指定された第3の指令である。また、左側の角括弧内の第3の指令の指定は省略されている。
 指令解析部22は、シーケンス番号N701で指定された指令を、X軸の動作が停止する1000[ms]のうちの最初の500[ms]の間、主軸を1000[rev/min]で回転させると解釈する。また、指令解析部22は、残りの500[ms]の間、主軸を1500[rev/min]で回転させると解釈する。
 以上説明したように、指令解析部22は、実行時間を示す数値によって指定された第1の指令を含む加工プログラムを解析してもよい。この場合、加工プログラムが簡略化され、作業者による加工プログラム作成の負担を軽減することができる。
 なお、本開示は上記実施の形態に限られたものではなく、趣旨を逸脱しない範囲で適宜変更することが可能である。本開示では、実施の形態の任意の構成要素の変形、もしくは実施の形態の任意の構成要素の省略が可能である。
  1     工作機械
  2     数値制御装置
  201   ハードウェアプロセッサ
  202   バス
  203   ROM
  204   RAM
  205   不揮発性メモリ
  206   インタフェース
  207   軸制御回路
  208   スピンドル制御回路
  209   PLC
  210   I/Oユニット
  21    加工プログラム記憶部
  22    指令解析部
  23    指令情報生成部
  24    制御部
  3     入出力装置
  4     サーボアンプ
  5     サーボモータ
  6     スピンドルアンプ
  7     スピンドルモータ
  8     補助機器

Claims (3)

  1.  軸動作を規定する数値を含む第1の指令と、準備機能指令、速度指令、主軸回転指令、工具交換指令、および補助指令のいずれかを含む第2の指令と、前記第2の指令の実行タイミングを規定する第3の指令とを1つのブロックに含む加工プログラムを解析する指令解析部と、
     前記指令解析部によって解析された前記第1の指令および前記第3の指令に基づいて、前記第2の指令の指令情報を生成する指令情報生成部と、
    を備える数値制御装置。
  2.  前記軸動作を規定する数値は、座標値、移動量および実行時間のいずれかを含む請求項1に記載の数値制御装置。
  3.  前記第3の指令は、前記軸動作における、位置を示す数値、動作距離を示す数値、動作時間を示す数値、動作距離の比を示す数値、および動作時間の比を示す数値のいずれかを含む請求項1または2に記載の数値制御装置。
PCT/JP2021/024998 2021-07-01 2021-07-01 数値制御装置 WO2023276121A1 (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
CN202180099863.7A CN117561484A (zh) 2021-07-01 2021-07-01 数值控制装置
JP2023531303A JPWO2023276121A1 (ja) 2021-07-01 2021-07-01
US18/568,962 US20240272619A1 (en) 2021-07-01 2021-07-01 Numerical control device
DE112021007514.4T DE112021007514T5 (de) 2021-07-01 2021-07-01 Numerische steuereinrichtung
PCT/JP2021/024998 WO2023276121A1 (ja) 2021-07-01 2021-07-01 数値制御装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2021/024998 WO2023276121A1 (ja) 2021-07-01 2021-07-01 数値制御装置

Publications (2)

Publication Number Publication Date
WO2023276121A1 true WO2023276121A1 (ja) 2023-01-05
WO2023276121A9 WO2023276121A9 (ja) 2023-11-02

Family

ID=84692580

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2021/024998 WO2023276121A1 (ja) 2021-07-01 2021-07-01 数値制御装置

Country Status (5)

Country Link
US (1) US20240272619A1 (ja)
JP (1) JPWO2023276121A1 (ja)
CN (1) CN117561484A (ja)
DE (1) DE112021007514T5 (ja)
WO (1) WO2023276121A1 (ja)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS57201903A (en) * 1981-01-20 1982-12-10 Okuma Mach Works Ltd Plural operation sequence generating system in numerical control device
JPH05134722A (ja) * 1991-11-11 1993-06-01 Hitachi Seiko Ltd 数値制御工作機械の制御方法
JPH05204421A (ja) * 1992-01-30 1993-08-13 Fanuc Ltd Ncプログラム処理方法
JPH08161022A (ja) * 1994-12-07 1996-06-21 Fanuc Ltd Cncの多系統待ち合わせ方式

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7088820B2 (ja) 2018-12-17 2022-06-21 ファナック株式会社 数値制御装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS57201903A (en) * 1981-01-20 1982-12-10 Okuma Mach Works Ltd Plural operation sequence generating system in numerical control device
JPH05134722A (ja) * 1991-11-11 1993-06-01 Hitachi Seiko Ltd 数値制御工作機械の制御方法
JPH05204421A (ja) * 1992-01-30 1993-08-13 Fanuc Ltd Ncプログラム処理方法
JPH08161022A (ja) * 1994-12-07 1996-06-21 Fanuc Ltd Cncの多系統待ち合わせ方式

Also Published As

Publication number Publication date
WO2023276121A9 (ja) 2023-11-02
CN117561484A (zh) 2024-02-13
JPWO2023276121A1 (ja) 2023-01-05
DE112021007514T5 (de) 2024-04-04
US20240272619A1 (en) 2024-08-15

Similar Documents

Publication Publication Date Title
JP5813058B2 (ja) 複合形固定サイクルの開始点経路短縮機能を有する数値制御装置
WO2023276121A1 (ja) 数値制御装置
WO2022154049A1 (ja) 数値制御装置
US6909939B1 (en) Numerical control method and numerical control device
JP2000284817A (ja) 共通経路上の2つの可動体を同時制御する数値制御装置
JPH08263115A (ja) Nc工作機械における干渉回避方法
JP2020003958A (ja) 数値制御装置
US20230033414A1 (en) Numerical controller
JPH08106311A (ja) 数値制御装置
JPH09262742A (ja) 工作機械の送り制御方法および装置
WO2023053349A1 (ja) 数値制御装置
WO2022196622A1 (ja) 数値制御装置
JPH04217426A (ja) ワイヤ放電加工方法及びその装置
US9964940B2 (en) Numerical controller for performing axis control of two parallel axes
WO2023148986A1 (ja) 制御装置、およびコンピュータ読み取り可能な記憶媒体
JP2023137665A (ja) 工作機械の制御装置及び制御方法、並びに、工作機械
WO2023058085A1 (ja) 数値制御装置
WO2022039142A1 (ja) 数値制御装置、工作機械、および工作機械の制御方法
JP7401665B2 (ja) 数値制御装置及び制御方法
WO2022239155A1 (ja) 数値制御装置、およびコンピュータ読み取り可能な記憶媒体
JP2009294868A (ja) 数値制御装置及び工作機械の制御方法
WO2022244072A1 (ja) 数値制御装置及びコンピュータ読み取り可能な記憶媒体
WO2022075141A1 (ja) 数値制御装置、および工作機械
US20240248453A1 (en) Control device for industrial machine
JP2022047702A (ja) 加工プログラム最適化装置及びその方法

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 21948425

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 2023531303

Country of ref document: JP

WWE Wipo information: entry into national phase

Ref document number: 18568962

Country of ref document: US

WWE Wipo information: entry into national phase

Ref document number: 112021007514

Country of ref document: DE

WWE Wipo information: entry into national phase

Ref document number: 202180099863.7

Country of ref document: CN

122 Ep: pct application non-entry in european phase

Ref document number: 21948425

Country of ref document: EP

Kind code of ref document: A1