Nothing Special   »   [go: up one dir, main page]

WO2024189813A1 - 数値制御装置およびコンピュータ読み取り可能な記憶媒体 - Google Patents

数値制御装置およびコンピュータ読み取り可能な記憶媒体 Download PDF

Info

Publication number
WO2024189813A1
WO2024189813A1 PCT/JP2023/010006 JP2023010006W WO2024189813A1 WO 2024189813 A1 WO2024189813 A1 WO 2024189813A1 JP 2023010006 W JP2023010006 W JP 2023010006W WO 2024189813 A1 WO2024189813 A1 WO 2024189813A1
Authority
WO
WIPO (PCT)
Prior art keywords
command
value
control
unit
control command
Prior art date
Application number
PCT/JP2023/010006
Other languages
English (en)
French (fr)
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 PCT/JP2023/010006 priority Critical patent/WO2024189813A1/ja
Publication of WO2024189813A1 publication Critical patent/WO2024189813A1/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/404Numerical 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 control arrangements for compensation, e.g. for backlash, overshoot, tool offset, tool wear, temperature, machine construction errors, load, inertia
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/18Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
    • G05B19/406Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by monitoring or safety
    • G05B19/4063Monitoring general control system

Definitions

  • the present disclosure relates to a numerical control device and a computer-readable storage medium.
  • Patent Document 1 a technique for reducing the machining speed according to the temperature of the tool during machining in order to suppress tool wear, etc.
  • the numerical control device disclosed herein includes a command generation unit that generates a control command for controlling a control axis based on a machining program, a first acquisition unit that acquires a first value indicating an integrated value of a predetermined physical quantity during execution of the machining program, a second acquisition unit that acquires a second value, a command update unit that updates the control command based on the first value acquired by the first acquisition unit and the second value acquired by the second acquisition unit, and a control unit that controls the control axis based on the control command updated by the command update unit.
  • the computer-readable storage medium of the present disclosure stores instructions that cause a computer to execute the following: generating a control command for controlling a control axis based on a machining program; acquiring a first value indicating an integrated value of a predetermined physical quantity during execution of the machining program; acquiring a second value; updating the control command based on the acquired first value and second value; and controlling the control axis based on the updated control command.
  • FIG. 2 is a block diagram showing an example of a hardware configuration of a machine tool.
  • FIG. 2 is a block diagram showing an example of a function of a numerical control device.
  • 11 is a diagram illustrating an example in which a control unit controls a control axis based on a control command updated by a command update unit.
  • FIG. 11 is a diagram illustrating an example in which a control unit controls a control axis based on a control command updated by a command update unit.
  • FIG. 11 is a diagram illustrating an example in which a control unit controls a control axis based on a control command updated by a command update unit.
  • FIG. 11 is a diagram illustrating an example in which a control unit controls a control axis based on a control command updated by a command update unit.
  • FIG. 11 is a diagram illustrating an example in which a control unit controls a control axis based on a control command updated by a command update unit.
  • FIG. 11 is a diagram illustrating an example in which a control unit controls a control axis based on a control command updated by a command update unit.
  • FIG. 11 is a diagram illustrating an example in which a control unit controls a control axis based on a control command updated by a command update unit.
  • FIG. 11 is a diagram illustrating an example in which a control unit controls a control axis based on a control command updated by a command update unit.
  • FIG. 11 is a diagram illustrating an example in which a control unit controls a control axis based on a control command updated by a command update unit.
  • FIG. 10 is a flowchart showing an example of a process for calculating a continuous cutting time.
  • 10 is a flowchart showing another example of the process related to calculation of a continuous cutting time.
  • 4 is an example of a machining program.
  • 4 is an example of a machining program.
  • 4 is a flowchart showing an example of a flow of processing executed by a numerical control device.
  • based on XX means “based on at least XX,” and includes cases where it is based on other elements in addition to XX. Furthermore, “based on XX” is not limited to cases where XX is used directly, but also includes cases where it is based on XX that has been calculated or processed. "XX” is any element (for example, any information).
  • a numerical control device is a device for controlling a machine tool.
  • a machine tool is a machine for machining a workpiece. Examples of machine tools include machining centers, lathes, and multi-tasking machines.
  • FIG. 1 is a block diagram showing an example of the hardware configuration of a machine tool.
  • the machine tool 1 includes a numerical control device 2, an input/output device 3, a servo amplifier 4, a servo motor 5, a spindle amplifier 6, a spindle motor 7, an auxiliary device 8, and a sensor 9.
  • the numerical control device 2 is a device for controlling the machine tool 1.
  • the numerical control device 2 includes, for example, a hardware processor 201, a bus 202, a ROM (Read Only Memory) 203, a RAM (Random Access Memory) 204, and a non-volatile memory 205.
  • the hardware processor 201 is a processor that controls the entire numerical control device 2 using a system program.
  • the hardware processor 201 reads out the system program stored in the ROM 203 via the bus 202.
  • the hardware processor 201 is, for example, a CPU (Central Processing Unit) or an electronic circuit.
  • the bus 202 is a communication path that connects each piece of hardware in the numerical control device 2 to each other. Each piece of hardware in the numerical control device 2 exchanges data via the bus 202.
  • ROM 203 is a storage device that stores system programs and the like. ROM 203 is a computer-readable storage medium.
  • RAM 204 is a storage device that temporarily stores various data. RAM 204 functions as a working area for the hardware processor 201 to process various data.
  • the non-volatile memory 205 is a storage device that retains data even when the power to the numerical control device 2 is turned off.
  • the non-volatile memory 205 stores, for example, machining programs.
  • the non-volatile memory 205 is a computer-readable storage medium.
  • the non-volatile memory 205 is, for example, a battery-backed memory or an SSD (Solid State Drive).
  • the numerical control device 2 further includes a first interface 206, an axis control circuit 207, a spindle control circuit 208, a PLC (Programmable Logic Controller) 209, an I/O unit 210, and a second interface 211.
  • the first interface 206 connects the bus 202 and the input/output device 3.
  • the first interface 206 sends, for example, various data processed by the hardware processor 201 to the input/output device 3.
  • the input/output device 3 receives various data via the first interface 206 and displays the various data on a display.
  • the input/output device 3 also receives input of various data and sends the data to, for example, the hardware processor 201 via the first interface 206.
  • the input/output device 3 is, for example, a touch panel.
  • the input/output device 3 is, for example, a capacitive touch panel.
  • the touch panel is not limited to a capacitive touch panel, and may be a touch panel of another type.
  • the input/output device 3 is installed in an operation panel (not shown) in which the numerical control device 2 is stored.
  • the axis control circuit 207 is a circuit for controlling the servo motor 5.
  • the axis control circuit 207 receives control commands from the hardware processor 201 and sends various commands to the servo amplifier 4 for driving the servo motor 5.
  • the axis control circuit 207 sends, for example, a torque command for controlling the torque of the servo motor 5 to the servo amplifier 4.
  • the servo amplifier 4 receives commands from the axis control circuit 207 and supplies current to the servo motor 5.
  • the servo motors 5 are driven by receiving a current supply from the servo amplifier 4.
  • the servo motors 5 are provided corresponding to each control axis of the machine tool 1. If the machine tool 1 is a machine tool having five axes, the servo motors 5 include, for example, an X-axis servo motor, a Y-axis servo motor, a Z-axis servo motor, an A-axis servo motor, and a C-axis servo motor.
  • the axis control circuit 207 and the servo amplifier 4 are provided for each servo motor 5.
  • the servo motor 5 is connected to, for example, a ball screw that moves a structure of the machine tool 1.
  • a structure of the machine tool 1 such as a tool rest, moves along a specified control axis.
  • the servo motor 5 has a built-in encoder (not shown) that detects the position and feed speed of the control axis. Position feedback information and speed feedback information indicating the position of the control axis and the feed speed of the control axis detected by the encoder, respectively, are fed back to the axis control circuit 207. In this way, the axis control circuit 207 performs feedback control of each control axis.
  • the spindle control circuit 208 is a circuit for controlling the spindle motor 7.
  • the spindle control circuit 208 receives a control command from the hardware processor 201 and sends a command to the spindle amplifier 6 to drive the spindle motor 7.
  • the spindle control circuit 208 sends, for example, a spindle speed command to the spindle amplifier 6 to control the rotation speed of the spindle motor 7.
  • the spindle amplifier 6 receives commands from the spindle control circuit 208 and supplies current to the spindle motor 7.
  • the spindle motor 7 is driven by a current supplied from the spindle amplifier 6.
  • the spindle motor 7 is connected to the main shaft and rotates the main shaft.
  • the PLC 209 is a device that executes a ladder program to control the auxiliary device 8.
  • the PLC 209 sends commands to the auxiliary device 8 via the I/O unit 210.
  • 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 device 8.
  • the auxiliary device 8 is installed in the machine tool 1 and performs auxiliary operations in the machine tool 1.
  • the auxiliary device 8 operates based on commands received from the I/O unit 210.
  • the auxiliary device 8 may be a device installed in the periphery of the machine tool 1.
  • the auxiliary device 8 is, for example, a tool changer, a cutting fluid injection device, or an opening/closing door drive device.
  • the second interface 211 connects the bus 202 and the sensor 9.
  • the second interface 211 sends, for example, measurement data measured by the sensor 9 to the hardware processor 201.
  • the sensor 9 is a device that measures various physical quantities.
  • the sensor 9 is, for example, an ammeter and a torque sensor.
  • the ammeter measures, for example, the current supplied to the servo motor 5 and the spindle motor 7.
  • the torque sensor measures the torque applied to the spindle motor and each servo motor.
  • FIG. 2 is a block diagram showing an example of the functions of the numerical control device 2.
  • the numerical control device 2 includes, for example, a program analysis unit 221, a command generation unit 222, a first acquisition unit 223, a storage unit 224, a second acquisition unit 225, a command update unit 226, and a control unit 227.
  • the program analysis unit 221, the command generation unit 222, the first acquisition unit 223, the second acquisition unit 225, the command update unit 226, and the control unit 227 are realized, for example, by the hardware processor 201 performing calculations using the system program stored in the ROM 203 and the machining program stored in the non-volatile memory 205.
  • the storage unit 224 is realized, for example, by storing various data in the non-volatile memory 205.
  • the program analysis unit 221 analyzes the machining program.
  • the machining program is a program used to machine a workpiece.
  • the machining program includes, for example, any of the following commands: a command to specify the tool movement path, a command to specify the feed rate, a command to specify the tool rotation speed, a command to specify the cutting depth, and a command to specify the cutting speed.
  • the program analysis unit 221 reads ahead the machining program and interprets each command specified in the machining program.
  • the command generation unit 222 generates control commands for controlling the control axes based on the machining program.
  • the command generation unit 222 generates control commands based on the results of the interpretation of the machining program by the program analysis unit 221.
  • the control axis may include, for example, any of the X-axis, Y-axis, Z-axis, A-axis, B-axis, and C-axis.
  • the control command may include a command to control the rotation of the spindle.
  • the command generation unit 222 generates a control command to move the tool along a movement path specified in the machining program.
  • the command generation unit 222 generates a control command to move the tool at a feed rate specified in the machining program.
  • the command generation unit 222 generates a control command to rotate the tool at a rotation speed specified in the machining program.
  • the command generation unit 222 generates a control command to machine the workpiece with a cutting depth specified in the machining program.
  • the command generation unit 222 generates a control command to machine the workpiece at a cutting speed specified in the machining program.
  • the first acquisition unit 223 acquires a first value indicating an integrated value of a predetermined physical quantity during execution of a machining program.
  • the predetermined physical quantity is, for example, time.
  • the predetermined physical quantity is integrated while the workpiece is being continuously cut.
  • the period during which the workpiece is being continuously cut is the period from when the tool and the workpiece come into contact with each other until they separate from each other.
  • the first acquisition unit 223 acquires an actual measured value of a predetermined physical quantity.
  • the first acquisition unit 223 acquires the first value based on information acquired from a torque sensor, for example.
  • the integrated value of the specified physical quantity is the time during which the workpiece is continuously cut.
  • the time during which the workpiece is continuously cut is called the continuous cutting time. The process for calculating the continuous cutting time will be explained in detail later.
  • the specified physical quantity is not limited to time, but may be the amount of the cut portion cut by the tool per unit time.
  • the amount of the cut portion is expressed, for example, as volume.
  • the integrated value of the specified physical quantity is a value indicating the amount of the cut portion while the workpiece is being continuously cut by the tool.
  • the amount of the cut portion while the workpiece is being continuously cut by the tool is referred to as the continuous cutting amount.
  • the specified physical quantity may be the feed rate at any point during cutting, the torque of the spindle motor at any point during cutting, and the cutting depth at any point during cutting.
  • the integrated value of the specified physical quantity is the integral of the feed rate during continuous cutting time.
  • the integrated value of the specified physical quantity is the integral of the feed rate from when the tool and workpiece come into contact with each other until they separate from each other.
  • the integrated value of the specified physical quantity is the integral of the torque of the spindle motor during continuous cutting time.
  • the integrated value of the specified physical quantity is the integral of the torque from when the tool and workpiece come into contact with each other until they separate from each other.
  • the integrated value of the specified physical quantity is the integral of the cutting depth during continuous cutting time.
  • the integrated value of the specified physical quantity is the integral of the cutting depth from when the tool and workpiece come into contact with each other until they separate from each other.
  • the memory unit 224 stores the second value.
  • the second value is a value used in the decision made by the command update unit 226 when updating the control command.
  • the update of the control command made by the command update unit 226 will be explained in detail later.
  • the second value is a threshold value.
  • the second value is a threshold value for the continuous cutting time or the continuous cutting amount.
  • control command is not updated until the first value becomes equal to or greater than the second value. Therefore, if the second value is excessively large, the control command is not updated. In this case, there is a risk that tool wear will accelerate.
  • the second value is determined, for example, taking into consideration preventing tool wear from accelerating and delaying the update of the control command as long as possible.
  • the second value is determined, for example, based on the experience of a skilled technician.
  • the second value may also be determined by machine learning using big data that indicates the relationship between a predetermined physical quantity and tool wear.
  • the second acquisition unit 225 acquires the second value. For example, the second acquisition unit 225 acquires the second value from the storage unit 224 that stores the second value.
  • the second acquisition unit 225 may acquire the second value from a source other than the storage unit 224.
  • the second acquisition unit 225 may acquire the second value based on an operator's operation on the input/output device 3. In other words, the operator may input the second value to the input/output device 3.
  • the command update unit 226 updates the control command generated by the command generation unit 222.
  • the command update unit 226 performs, for example, at least one of updating a control command that specifies a feed rate, updating a control command that specifies a cutting depth, and adding a control command that specifies a waiting time for cutting.
  • the command update unit 226 may also perform updating a control command that specifies the rotational speed of the tool and updating a control command that specifies the cutting speed.
  • the command update unit 226 changes the control command generated by the command generation unit 222 to a control command that specifies a feed rate slower than the feed rate specified by the control command.
  • control unit 227 controls the control axis based on the control command updated by the command update unit 226.
  • the command update unit 226 does not update the command generated by the command generation unit 222. For example, if the value indicating the continuous cutting time acquired by the first acquisition unit 223 is less than the threshold value of the continuous cutting time, the command update unit 226 does not update the control command generated by the command generation unit 222.
  • control unit 227 controls the control axis based on the control command generated by the command generation unit 222.
  • the control unit 227 controls the control axis based on, for example, the feed rate specified by the control command generated by the command generation unit 222.
  • FIGS. 3A and 3B are diagrams illustrating an example in which the control unit 227 controls the control axes based on the control commands updated by the command update unit 226.
  • the hollow arrows in FIG. 3A and FIG. 3B indicate velocity vectors.
  • the arrows and the letters X, Y, and Z in the drawings indicate the directions of the control axes in the coordinate system set in the machine tool 1.
  • FIG. 3A shows an example in which the tool T machines the workpiece W at a feed rate specified by the control command generated by the command generation unit 222. That is, in the example shown in FIG. 3A, the control command has not yet been updated by the command update unit 226. In this case, the control unit 227 moves the tool T at the feed rate specified by the control command generated by the command generation unit 222.
  • FIG. 3B shows an example in which the tool T machines the workpiece W at a feed rate specified by the control command updated by the command update unit 226. That is, in the example shown in FIG. 3B, the command generated by the command generation unit 222 is updated by the command update unit 226 while the machining program is being executed. In this case, the control unit 227 moves the tool T at the feed rate specified by the updated control command from the point in time when the control command is updated by the command update unit 226.
  • the command update unit 226 updates the control command to specify a feed rate slower than the feed rate specified by the control command generated by the command generation unit 222. For example, the command update unit 226 changes the feed rate to 0.5 times the feed rate specified by the control command generated by the command generation unit 222.
  • FIGS. 4A and 4B are diagrams illustrating an example in which the control unit 227 controls the control axis based on the control command updated by the command update unit 226.
  • FIG. 4A shows an example in which the tool T moves based on the cutting depth specified by the control command generated by the command generation unit 222. That is, in the example shown in FIG. 4A, the control command has not yet been updated by the command update unit 226. In this case, the control unit 227 moves the tool T by the cutting depth specified by the control command generated by the command generation unit 222.
  • FIG. 4B shows an example in which the tool T moves based on the cutting depth specified by the control command updated by the command update unit 226. That is, in the example shown in FIG. 4B, the command generated by the command generation unit 222 is updated by the command update unit 226 while the machining program is being executed. In this case, the control unit 227 moves the control axis by the cutting depth specified by the updated control command from the point in time when the control command is updated by the command update unit 226.
  • the command update unit 226 updates the control command generated by the command generation unit 222 to a control command that specifies a smaller amount of cutting depth than the amount of cutting depth specified by the control command generated by the command generation unit 222. For example, the command update unit 226 changes the amount of cutting depth to 0.5 times the amount of cutting depth specified by the control command generated by the command generation unit 222.
  • FIGS. 5A and 5B are diagrams illustrating an example in which the control unit 227 controls the control axis based on the control command updated by the command update unit 226.
  • FIG. 5A shows an example in which the tool T moves based on the control command generated by the command generation unit 222. That is, in the example shown in FIG. 5A, the control command has not yet been updated by the command update unit 226. Therefore, the control unit 227 moves the tool T along the movement path specified by the control command generated by the command generation unit 222.
  • FIG. 5B shows an example in which the control axis is controlled based on a control command that specifies a waiting time for cutting that has been added by the command update unit 226.
  • the control command updated by the command update unit 226 includes a command to retract the tool T during cutting and a command to wait for a predetermined time at the retracted position before cutting.
  • the command update unit 226 updates the control command to one that retracts the tool T by approximately a few millimeters in both the positive direction of the X-axis and the positive direction of the Y-axis, and pauses cutting for, for example, 60 seconds.
  • FIGS. 6A and 6B are diagrams illustrating an example in which the control unit 227 controls the control axis based on the control command updated by the command update unit 226.
  • FIG. 6A shows an example in which the tool T moves based on the control command generated by the command generation unit 222. That is, in the example shown in FIG. 6A, the control command has not yet been updated by the command update unit 226. Therefore, the control unit 227 moves the tool T along the movement path specified by the control command generated by the command generation unit 222.
  • FIG. 6B shows an example in which the control axis is controlled based on a command specifying a waiting time for cutting that is added by the command update unit 226. That is, in the example shown in FIG. 6B, the control command updated by the command update unit 226 includes a command to retract the tool T during cutting and a command to wait for cutting at the retracted position for a predetermined time.
  • the command update unit 226 updates the control command to one that retracts the tool T in the positive direction of the Z-axis and puts the cutting on hold for, for example, 60 seconds.
  • the continuous cutting time is, for example, an actual measured value.
  • FIG. 7 is a flowchart showing an example of a process for calculating the continuous cutting time.
  • the control unit 227 controls the control axis in accordance with the machining program (step SA1).
  • the control unit 227 While controlling the control axis, the control unit 227 detects the torque of the spindle and determines whether the torque is greater than 0 (step SA2). While the workpiece W is being cut by the tool T, a large load is applied to the spindle. On the other hand, while the workpiece W is not being cut by the tool T, no load is applied to the spindle. Therefore, by determining whether the torque is greater than 0, the control unit 227 can determine whether cutting is being performed.
  • step SA3 If the torque is greater than 0 (Yes in step SA2), a predetermined time is added to the continuous cutting time (step SA3).
  • the predetermined time is, for example, 1 ms.
  • the continuous cutting time is stored, for example, in RAM 204.
  • step SA4 the continuous cutting time is set to 0 (step SA4). In other words, the continuous cutting time is reset.
  • step SA5 determines whether the machining program has ended. If the machining program has ended (Yes in step SA5), the process of acquiring the continuous cutting time ends. On the other hand, if the machining program has not yet ended (No in step SA5), the process of step SA1 is executed again.
  • the continuous cutting time is reset when the torque becomes equal to or less than 0.
  • the continuous cutting time may be reset after a predetermined time has elapsed after the torque becomes 0.
  • FIG. 8 is a flowchart showing another example of processing related to calculation of the continuous cutting time.
  • the control unit 227 controls the control axis according to the machining program (step SB1).
  • the control unit 227 determines whether or not the cutting mode is in progress based on the command of the block being executed (step SB2). For example, if the block being executed contains the linear interpolation command "G01", the control unit 227 determines that the cutting mode is in progress.
  • control unit 227 determines whether the non-cutting time has exceeded a predetermined time (step SB3).
  • the predetermined time is, for example, 10 seconds.
  • step SB3 If the non-cutting time exceeds the predetermined time (Yes in step SB3), the continuous cutting time is set to 0 (step SB4). In other words, the continuous cutting time is reset. This makes it possible to prevent the continuous cutting time from being reset when, for example, the tool T is separated from the workpiece W for just an instant.
  • a predetermined time is added to the continuous cutting time (step SB5).
  • the predetermined time is, for example, 1 ms.
  • the control unit 227 determines whether the machining program has ended (step SB6). If the machining program has ended (Yes in step SB6), the process of acquiring the continuous cutting time ends. On the other hand, if the machining program has not yet ended (No in step SB6), the process of step SB1 is executed again.
  • the integrated value of the predetermined physical quantity acquired by the first acquisition unit 223 may be an estimated value.
  • the integrated value of the predetermined physical quantity is the continuous cutting time
  • the continuous cutting time is estimated based on the time the cutting mode continues.
  • FIG. 9 is an example of a machining program.
  • the time that the cutting mode continues is the time that the tool T is moving according to the linear interpolation command "G01."
  • the time that the cutting mode continues is the time that the tool T is moving according to the commands specified in each block from sequence number "N1" to sequence number "N10.”
  • the tool T moves at a feed speed of 60.0 "mm/min” specified by the "F" code.
  • G91 is an incremental command.
  • the position of tool T is specified by the amount of movement from the current position of tool T.
  • G01 is a linear interpolation command.
  • tool T moves in a straight line.
  • the "F” code is a command that specifies the feed speed of tool T.
  • F60.0 is a command that moves tool T at 60.0 [mm/min].
  • FIG. 10 is an example of a machining program.
  • the time during which the cutting mode continues is the time during which the tool T continues to move according to the linear interpolation command "G01."
  • a dwell command "G04" is specified between the block with sequence number "N5" and the block with sequence number "N6".
  • the dwell command is a command to stop the movement of tool T for a specified time.
  • "X1.0” specified together with the dwell command is a command to specify the stop time. In other words, "G04X1.0" specifies that the movement of tool T will be stopped for 1.0 [sec].
  • the time during which tool T moves according to the commands specified in the blocks from sequence number "N1" to sequence number "N5" is the continuous cutting time. Also, the time during which tool T moves according to the commands specified in the blocks from sequence number "N6” to sequence number “N10” is the continuous cutting time.
  • the first acquisition unit 223 acquires 5 seconds, which is estimated as a value indicating the continuous cutting time, in the blocks from sequence number "N1" to sequence number "N5.”
  • the first acquisition unit 223 also acquires 5 seconds, which is estimated as a value indicating the continuous cutting time, in the blocks from sequence number "N6" to sequence number "N10.”
  • FIG. 11 is a flowchart showing an example of the flow of processing executed by the numerical control device 2.
  • the program analysis unit 221 analyzes the machining program (step S1).
  • the command generation unit 222 generates a control command for controlling the control axis based on the results of the interpretation of the machining program by the program analysis unit 221 (step S2).
  • control unit 227 controls the control axis based on the control command generated by the command generation unit 222 (step S3).
  • the first acquisition unit 223 acquires a first value indicating an integrated value of a predetermined physical quantity during execution of the machining program (step S4).
  • the integrated value of the predetermined physical quantity is, for example, a continuous cutting time.
  • the second acquisition unit 225 acquires a second value (step S5).
  • the second value is, for example, a threshold value to be compared with the first value.
  • step S6 the command update unit 226 compares the first value with the second value (step S6). If the first value is smaller than the second value (No in step S6), the control unit 227 continues to control the control axis (step S3).
  • step S6 If the first value is greater than or equal to the second value (Yes in step S6), the command update unit 226 updates the control command generated by the command generation unit 222 (step S7).
  • control unit 227 controls the control axis based on the control command updated by the command update unit 226 (step S8), and the process ends.
  • the control command when the command update unit 226 adds a control command specifying a waiting time for cutting, the control command includes a command to retract the tool T during cutting.
  • the command update unit 226 adds a control command specifying a waiting time for cutting the control command does not need to include a command to retract the tool T during non-cutting. In other words, when the tool T is not in contact with the workpiece W, there is no need to retract the tool T.
  • the command update unit 226 may update the control command based on the third value calculated using the first value and the second value.
  • the third value may be a value indicating the product of the continuous cutting time and the integral of the feed rate during the continuous cutting time.
  • the third value may be a value indicating the product of the continuous cutting time and the integral of the cutting depth during the continuous cutting time.
  • the third value may be a value indicating the product of the continuous cutting time and the integral of the torque of the spindle during the continuous cutting time.
  • the third value may also be calculated using the first value and a numerical value indicating the characteristics of the workpiece W or the tool T.
  • the numerical value indicating the characteristics of the workpiece W is, for example, a value indicating the hardness of the workpiece W.
  • the numerical value indicating the characteristics of the tool T is, for example, a numerical value indicating the hardness of the tool T.
  • the memory unit 224 may store a plurality of second values.
  • the second value may be acquired according to the material of the workpiece W, the type of the tool T, etc.
  • the command update unit 226 may update the control command when the execution of the currently executing block ends. Specifically, the command update unit 226 may add a control command that specifies a waiting time for cutting when the execution of the currently executing block ends.
  • the numerical control device 2 includes a command generation unit 222 that generates a control command for controlling the control axis based on the machining program, a first acquisition unit 223 that acquires a first value indicating an integrated value of a predetermined physical quantity during execution of the machining program, a second acquisition unit 225 that acquires a second value, a command update unit 226 that updates the control command based on the first value acquired by the first acquisition unit 223 and the second value acquired by the second acquisition unit 225, and a control unit 227 that controls the control axis based on the control command updated by the command update unit 226.
  • a command generation unit 222 that generates a control command for controlling the control axis based on the machining program
  • a first acquisition unit 223 that acquires a first value indicating an integrated value of a predetermined physical quantity during execution of the machining program
  • a second acquisition unit 225 that acquires a second value
  • a command update unit 226 that updates the control command based on the first value acquired
  • the computer-readable storage medium also stores instructions that cause the computer to execute the following: generating a control command for controlling the control axis based on the machining program; acquiring a first value indicating an integrated value of a predetermined physical quantity during execution of the machining program; acquiring a second value; updating the control command based on the acquired first value and second value; and controlling the control axis based on the updated control command. Therefore, the numerical control device 2 can prevent wear on the tool T.
  • the first acquisition unit 223 acquires the first value based on the information acquired from the torque sensor. Therefore, the numerical control device 2 can acquire the actual measured value of the first value. Therefore, the numerical control device 2 can acquire the accurate value of the first value.
  • the first acquisition unit 223 also analyzes the machining program to acquire the first value.
  • the numerical control device 2 can acquire an estimate of the first value. Therefore, the machine tool 1 does not need to be provided with special hardware for acquiring the first value.
  • the first value is a value indicating the continuous cutting time.
  • the first value may also be a value indicating the continuous cutting amount. Therefore, the numerical control device 2 can suppress wear on the tool T even in a machine tool 1 that is not equipped with a sensor for measuring temperature or the like.
  • the command update unit 226 also executes at least one of updating the control command that specifies the feed rate, updating the control command that specifies the cutting depth, and adding a control command that specifies the waiting time for cutting. This enables the numerical control device 2 to prevent wear on the tool T from progressing at an accelerated rate.
  • control command specifying the waiting time includes a command to retract the tool T during cutting, but does not include a command to retract the tool T during non-cutting. Therefore, the numerical control device 2 can reliably prevent the tool T from becoming worn out during cutting. In addition, the numerical control device 2 can reduce the load of generating unnecessary commands during non-cutting.
  • the second acquisition unit 225 also acquires the second value from the storage unit 224, which stores the second value. Therefore, the operator does not need to input the second value every time. Therefore, the numerical control device 2 can reduce the workload of the operator.
  • a numerical control device comprising: a command generating unit that generates a control command for controlling a control axis based on a machining program; a first acquisition unit that acquires a first value indicating an integrated value of a predetermined physical quantity during execution of the machining program; a second acquisition unit that acquires a second value; a command updating unit that updates the control command based on the first value acquired by the first acquisition unit and the second value acquired by the second acquisition unit; and a control unit that controls the control axis based on the control command updated by the command updating unit.
  • Appendix [2] The numerical control device according to claim 1, wherein the first acquisition unit acquires the first value based on information acquired from a torque sensor.
  • Appendix [3] The numerical control device according to claim 1 or 2, wherein the first acquisition unit analyzes the machining program to acquire the first value.
  • Appendix [4] The numerical control device according to any one of appendices [1] to [3], wherein the first value is a value indicating a continuous cutting time.
  • Appendix [5] The numerical control device according to claim 1, wherein the first value is a value indicating a continuous cutting amount.
  • Appendix [6] The numerical control device according to any one of appendices [1] to [5], wherein the command update unit executes at least one of updating a control command that specifies a feed rate, updating a control command that specifies a cutting depth, and adding a control command that specifies a waiting time for cutting.
  • Appendix [7] The numerical control device according to appendix [6], wherein the control command specifying the waiting time includes a command to retract a tool during the cutting operation, and does not include a command to retract the tool during a non-cutting operation.
  • Appendix [8] The numerical control device according to any one of appendices [1] to [7], wherein the second acquisition unit acquires the second value from a storage unit that stores the second value.
  • Appendix [9] A computer-readable storage medium storing instructions that cause a computer to execute the following: generating a control command for controlling a control axis based on a machining program; acquiring a first value indicating an integrated value of a predetermined physical quantity during execution of the machining program; acquiring a second value; updating the control command based on the acquired first value and second value; and controlling the control axis based on the updated control command.
  • Machine tool 2 Numerical control device 201 Hardware processor 202 Bus 203 ROM 204 RAM 205 Non-volatile memory 206 First interface 207 Axis control circuit 208 Spindle control circuit 209 PLC 210 I/O unit 211 Second interface 221 Program analysis section 222 Command generation section 223 First acquisition section 224 Storage section 225 Second acquisition section 226 Command update section 227 Control section 3 Input/output device 4 Servo amplifier 5 Servo motor 6 Spindle amplifier 7 Spindle motor 8 Auxiliary equipment 9 Sensor

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の値を取得する第1の取得部と、第2の値を取得する第2の取得部と、第1の取得部によって取得された第1の値と、第2の取得部によって取得された第2の値とに基づいて、制御指令を更新する指令更新部と、指令更新部によって更新された制御指令に基づいて制御軸を制御する制御部と、を備える。

Description

数値制御装置およびコンピュータ読み取り可能な記憶媒体
 本開示は、数値制御装置およびコンピュータ読み取り可能な記憶媒体に関する。
 従来、工具の摩耗などを抑制するために、加工中の工具の温度に応じて、加工速度を低くする技術が知られている(例えば、特許文献1)。
特開2003-208205号公報
 しかし、加工中の工具の温度を計測するためには、温度計測用の特別なセンサが工作機械に設置されていなければならない。そのため、温度計測用のセンサが設置されていない工作機械では、この技術を利用することができない。したがって、温度計測用のセンサが設置されていない工作機械でも、工具の摩耗を抑制することが可能な技術が求められている。
 本開示の数値制御装置は、加工プログラムに基づいて、制御軸を制御するための制御指令を生成する指令生成部と、加工プログラムの実行中に所定の物理量の積算値を示す第1の値を取得する第1の取得部と、第2の値を取得する第2の取得部と、第1の取得部によって取得された第1の値と、第2の取得部によって取得された第2の値とに基づいて、制御指令を更新する指令更新部と、指令更新部によって更新された制御指令に基づいて制御軸を制御する制御部と、を備える。
 本開示のコンピュータ読み取り可能な記憶媒体は、加工プログラムに基づいて、制御軸を制御するための制御指令を生成することと、加工プログラムの実行中に所定の物理量の積算値を示す第1の値を取得することと、第2の値を取得することと、取得された第1の値と、第2の値とに基づいて、制御指令を更新することと、更新された制御指令に基づいて制御軸を制御することと、をコンピュータに実行させる命令を記憶する。
工作機械のハードウェア構成の一例を示すブロック図である。 数値制御装置の機能の一例を示すブロック図である。 制御部が指令更新部によって更新された制御指令に基づいて制御軸を制御する例について説明する図である。 制御部が指令更新部によって更新された制御指令に基づいて制御軸を制御する例について説明する図である。 制御部が指令更新部によって更新された制御指令に基づいて制御軸を制御する例について説明する図である。 制御部が指令更新部によって更新された制御指令に基づいて制御軸を制御する例について説明する図である。 制御部が指令更新部によって更新された制御指令に基づいて制御軸を制御する例について説明する図である。 制御部が指令更新部によって更新された制御指令に基づいて制御軸を制御する例について説明する図である。 制御部が指令更新部によって更新された制御指令に基づいて制御軸を制御する例について説明する図である。 制御部が指令更新部によって更新された制御指令に基づいて制御軸を制御する例について説明する図である。 連続切削時間の算出に係る処理の一例を示すフローチャートである。 連続切削時間の算出に係る処理の他の例を示すフローチャートである。 加工プログラムの一例である。 加工プログラムの一例である。 数値制御装置が実行する処理の流れの一例を示すフローチャートである。
 以下、本開示の実施形態に係る数値制御装置およびコンピュータ読み取り可能な記憶媒体について図面を参照して説明する。なお、以下の説明では、同一または類似の機能を有する構成に同一の符号を付す。そして、それら構成の重複する説明は、省略する場合がある。
 本願でいう「XXに基づく」とは、「少なくともXXに基づく」ことを意味し、XXに加えて別の要素に基づく場合も含む。また、「XXに基づく」とは、XXを直接に用いる場合に限定されず、XXに対して演算や加工が行われたものに基づく場合も含む。「XX」は、任意の要素(例えば、任意の情報)である。
 数値制御装置は、工作機械を制御するための装置である。工作機械は、ワークを加工するための機械である。工作機械は、例えば、マシニングセンタ、旋盤、および複合加工機である。
 図1は、工作機械のハードウェア構成の一例を示すブロック図である。工作機械1は、数値制御装置2と、入出力装置3と、サーボアンプ4と、サーボモータ5と、スピンドルアンプ6と、スピンドルモータ7と、補助機器8と、センサ9とを備える。
 数値制御装置2は、工作機械1を制御するための装置である。数値制御装置2は、例えば、ハードウェアプロセッサ201と、バス202と、ROM(Read Only Memory)203と、RAM(Random Access Memory)204と、不揮発性メモリ205とを備える。
 ハードウェアプロセッサ201は、システムプログラムを用いて数値制御装置2全体を制御するプロセッサである。ハードウェアプロセッサ201は、バス202を介してROM203に格納されたシステムプログラムなどを読み出す。ハードウェアプロセッサ201は、例えば、CPU(Central Processing Unit)、または電子回路である。
 バス202は、数値制御装置2の各ハードウェアを互いに接続する通信路である。数値制御装置2の各ハードウェアはバス202を介してデータをやり取りする。
 ROM203は、システムプログラムなどを記憶する記憶装置である。ROM203は、コンピュータ読み取り可能な記憶媒体である。
 RAM204は、各種データを一時的に格納する記憶装置である。RAM204は、ハードウェアプロセッサ201が各種データを処理するための作業領域として機能する。
 不揮発性メモリ205は、数値制御装置2の電源が切られた状態でもデータを保持する記憶装置である。不揮発性メモリ205は、例えば、加工プログラムを記憶する。不揮発性メモリ205は、コンピュータ読み取り可能な記憶媒体である。不揮発性メモリ205は、例えば、バッテリでバックアップされたメモリ、または、SSD(Solid State Drive)で構成される。
 数値制御装置2は、さらに、第1のインタフェース206と、軸制御回路207と、スピンドル制御回路208と、PLC(Programmable Logic Controller)209と、I/Oユニット210と、第2のインタフェース211とを備える。
 第1のインタフェース206は、バス202と入出力装置3とを接続する。第1のインタフェース206は、例えば、ハードウェアプロセッサ201によって処理された各種データを入出力装置3に送る。
 入出力装置3は、第1のインタフェース206を介して各種データを受け、各種データをディスプレイに表示させる。また、入出力装置3は、各種データの入力を受けて、各種データを第1のインタフェース206を介して、例えば、ハードウェアプロセッサ201に送る。
 入出力装置3は、例えば、タッチパネルである。入出力装置3がタッチパネルである場合、入出力装置3は、例えば、静電容量方式のタッチパネルである。タッチパネルは、静電容量方式に限らず、他の方式のタッチパネルであってもよい。入出力装置3は、数値制御装置2が格納される操作盤(不図示)に設置される。
 軸制御回路207は、サーボモータ5を制御するための回路である。軸制御回路207は、ハードウェアプロセッサ201からの制御指令を受けてサーボモータ5を駆動させるための各種指令をサーボアンプ4に送る。軸制御回路207は、例えば、サーボモータ5のトルクを制御するトルクコマンドをサーボアンプ4に送る。
 サーボアンプ4は、軸制御回路207からの指令を受けて、サーボモータ5に電流を供給する。
 サーボモータ5は、サーボアンプ4から電流の供給を受けて駆動する。サーボモータ5は、工作機械1の各制御軸に対応して設けられる。工作機械1が5軸を有する工作機械である場合、サーボモータ5は、例えば、X軸用サーボモータ、Y軸用サーボモータ、Z軸用サーボモータ、A軸用サーボモータ、およびC軸用サーボモータを含む。この場合、軸制御回路207、およびサーボアンプ4は、各サーボモータ5に対してそれぞれ設けられる。
 サーボモータ5は、例えば、工作機械1の構造物を移動させるボールねじに連結される。サーボモータ5が駆動することにより、刃物台などの工作機械1の構造物が所定の制御軸に沿って移動する。
 サーボモータ5は、制御軸の位置および送り速度を検出するエンコーダ(不図示)を内蔵する。エンコーダによって検出される制御軸の位置、および制御軸の送り速度をそれぞれ示す位置フィードバック情報、および速度フィードバック情報は、軸制御回路207にフィードバックされる。これにより、軸制御回路207は、各制御軸のフィードバック制御を行う。
 スピンドル制御回路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のインタフェース211は、バス202とセンサ9とを接続する。第2のインタフェース211は、例えば、センサ9によって計測された計測データをハードウェアプロセッサ201に送る。
 センサ9は、各種物理量を計測する装置である。センサ9は、例えば、電流計、およびトルクセンサである。電流計は、例えば、サーボモータ5、およびスピンドルモータ7に供給される電流を計測する。トルクセンサは、スピンドルモータ、および各サーボモータに掛かるトルクを計測する。
 図2は、数値制御装置2の機能の一例を示すブロック図である。数値制御装置2は、例えば、プログラム解析部221と、指令生成部222と、第1の取得部223と、記憶部224と、第2の取得部225と、指令更新部226と、制御部227とを備える。
 プログラム解析部221、指令生成部222、第1の取得部223、第2の取得部225、指令更新部226、および制御部227は、例えば、ハードウェアプロセッサ201が、ROM203に記憶されたシステムプログラム、および不揮発性メモリ205に記憶された加工プログラムなどを用いて演算処理をすることにより実現される。記憶部224は、例えば、各種データが不揮発性メモリ205に記憶されることにより実現される。
 プログラム解析部221は、加工プログラムを解析する。加工プログラムは、ワークの加工に用いられるプログラムである。加工プログラムには、例えば、工具の移動経路を指定する指令、送り速度を指定する指令、工具の回転速度を指定する指令、切込量を指定する指令、および切削速度を指定する指令のいずれかが含まれる。
 プログラム解析部221は、加工プログラムを先読みして加工プログラムで指定されている各指令を解釈する。
 指令生成部222は、加工プログラムに基づいて、制御軸を制御するための制御指令を生成する。指令生成部222は、プログラム解析部221による加工プログラムの解釈結果に基づいて、制御指令を生成する。
 制御軸は、例えば、X軸、Y軸、Z軸、A軸、B軸およびC軸のいずれかを含む。制御指令は、主軸の回転を制御する指令を含んでいてもよい。
 指令生成部222は、加工プログラムで指定された移動経路に沿って工具を移動させる制御指令を生成する。指令生成部222は、加工プログラムで指定された送り速度で工具を移動させる制御指令を生成する。指令生成部222は、加工プログラムで指定された回転速度で、工具を回転させる制御指令を生成する。指令生成部222は、加工プログラムで指定された切込量でワークを加工する制御指令を生成する。指令生成部222は、加工プログラムで指定された切削速度でワークを加工する制御指令を生成する。
 第1の取得部223は、加工プログラムの実行中に所定の物理量の積算値を示す第1の値を取得する。所定の物理量は、例えば、時間である。所定の物理量は、連続してワークが切削されている間に積算される。連続してワークが切削されている間とは、工具とワークとが接触してから両者が互いに離れるまでの間である。
 第1の取得部223は、所定の物理量の実測値を取得する。第1の取得部223は、例えば、トルクセンサから取得された情報に基づいて、第1の値を取得する。
 所定の物理量が時間である場合、所定の物理量の積算値は、連続してワークが切削されている間の時間である。連続してワークが切削されている間の時間を連続切削時間と称する。連続切削時間の算出に係る処理については、後に詳しく説明する。
 所定の物理量は、時間に限らず、単位時間あたりに工具によって切削される被切削部分の量であってもよい。被切削部分の量は、例えば、体積で表される。この場合、所定の物理量の積算値は、連続して工具によってワークが切削されている間の被切削部分の量を示す値である。連続して工具によってワークが切削されている間の被切削部分の量を連続切削量と称する。
 所定の物理量は、切削中の任意の時点における送り速度、切削中の任意の時点におけるスピンドルモータのトルク、および切削中の任意の時点における切込量であってもよい。
 所定の物理量が切削中の任意の時点における送り速度である場合、所定の物理量の積算値は、連続切削時間中における送り速度の積分値である。すなわち、所定の物理量の積算値は、工具とワークとが接触してから両者が互いに離れるまでの間の送り速度の積分値である。
 所定の物理量が切削中の任意の時点におけるスピンドルモータのトルクである場合、所定の物理量の積算値は、連続切削時間中におけるスピンドルモータのトルクの積分値である。すなわち、所定の物理量の積算値は、工具とワークとが接触してから両者が互いに離れるまでの間のトルクの積分値である。
 所定の物理量が切削中の任意の時点における切込量である場合、所定の物理量の積算値は、連続切削時間中における切込量の積分値である。すなわち、所定の物理量の積算値は、工具とワークとが接触してから両者が互いに離れるまでの間の切込量の積分値である。
 記憶部224は、第2の値を記憶する。第2の値は、指令更新部226が制御指令を更新する際に行う判断に用いられる値である。指令更新部226が行う制御指令の更新については、後に詳しく説明する。
 第2の値は、しきい値である。第2の値は、例えば、連続切削時間のしきい値、連続切削量のしきい値である。
 後述するように、第1の値が第2の値以上になるまで、制御指令は更新されない。したがって、第2の値が過度に大きいと、制御指令が更新されなくなる。この場合、工具の摩耗が加速度的に進むおそれがある。
 一方、制御指令が早めに更新されると、サイクルタイムが長くなるという問題が生じる。したがって、第2の値は、例えば、工具の摩耗が加速度的に進むことを防ぐこと、および、制御指令の更新を可能な限り遅らせることを考慮して決定される。
 第2の値は、例えば、熟練した技術者の経験に基づいて決定される。第2の値は、所定の物理量と工具の摩耗との関係を示すビッグデータを利用した機械学習によって決定されてもよい。
 第2の取得部225は、第2の値を取得する。第2の取得部225は、例えば、第2の値を記憶する記憶部224から第2の値を取得する。
 第2の取得部225は、記憶部224以外から第2の値を取得してもよい。例えば、第2の取得部225は、オペレータの入出力装置3に対する操作に基づいて、第2の値を取得してもよい。つまり、オペレータは、入出力装置3に対して、第2の値を入力してもよい。
 指令更新部226は、第1の取得部223によって取得された第1の値と、第2の取得部225によって取得された第2の値とに基づいて、指令生成部222によって生成された制御指令を更新する。指令更新部226は、例えば、第1の値と第2の値とを比較して、制御指令を更新する。制御指令の更新には、制御指令の追加も含まれる。
 第1の値が第2の値以上である場合、指令更新部226は、指令生成部222によって生成された制御指令を更新する。指令更新部226は、例えば、送り速度を指定する制御指令の更新、切込量を指定する制御指令の更新、および、切削の待機時間を指定する制御指令の追加の少なくともいずれかを実行する。指令更新部226は、工具の回転速度を指定する制御指令の更新および切削速度を指定する制御指令の更新を実行してもよい。
 例えば、第1の取得部223によって取得された連続切削時間を示す値が連続切削時間のしきい値以上である場合、指令更新部226は、指令生成部222によって生成された制御指令を、当該制御指令が指定する送り速度よりも遅い送り速度を指定する制御指令に変更する。
 この場合、制御部227は、指令更新部226によって更新された制御指令に基づいて制御軸を制御する。
 第1の値が第2の値未満である場合、指令更新部226は、指令生成部222によって生成された指令を更新しない。例えば、第1の取得部223によって取得された連続切削時間を示す値が、連続切削時間のしきい値未満である場合、指令更新部226は、指令生成部222によって生成された制御指令を更新しない。
 この場合、制御部227は、指令生成部222によって生成された制御指令に基づいて、制御軸を制御する。制御部227は、例えば、指令生成部222によって生成された制御指令が指定する送り速度に基づいて制御軸を制御する。
 図3Aおよび図3Bは、制御部227が指令更新部226によって更新された制御指令に基づいて制御軸を制御する例について説明する図である。なお、図3Aおよび図3B中の白抜きの矢印は、速度ベクトルを示している。また、図面中の矢印およびX、Y、Zの文字は、工作機械1に設定された座標系の各制御軸の方向を示している。
 図3Aは、指令生成部222によって生成された制御指令が指定する送り速度で工具TがワークWを加工する例を示す。すなわち、図3Aに示す例では、未だ、指令更新部226によって制御指令が更新されていない。この場合、制御部227は、指令生成部222によって生成された制御指令が指定する送り速度で工具Tを移動させる。
 図3Bは、指令更新部226によって更新された制御指令が指定する送り速度で工具TがワークWを加工する例を示す。すなわち、図3Bに示す例では、加工プログラムの実行中に、指令生成部222によって生成された指令が、指令更新部226によって更新されている。この場合、制御部227は、指令更新部226によって制御指令が更新された時点から、更新された制御指令が指定する送り速度で工具Tを移動させる。
 指令更新部226は、指令生成部222で生成された制御指令が指定する送り速度よりも遅い送り速度を指定する制御指令に更新する。指令更新部226は、例えば、指令生成部222によって生成された制御指令が指定する送り速度の0.5倍の送り速度に変更する。
 図4Aおよび図4Bは、制御部227が指令更新部226によって更新された制御指令に基づいて制御軸を制御する例について説明する図である。
 図4Aは、指令生成部222によって生成された制御指令が指定する切込量に基づいて工具Tが移動する例を示す。すなわち、図4Aに示す例では、未だ、指令更新部226によって制御指令が更新されていない。この場合、制御部227は、指令生成部222によって生成された制御指令が指定する切込量で工具Tを移動させる。
 図4Bは、指令更新部226によって更新された制御指令が指定する切込量に基づいて工具Tが移動する例を示す。すなわち、図4Bに示す例では、加工プログラムの実行中に、指令生成部222によって生成された指令が、指令更新部226によって更新されている。この場合、制御部227は、指令更新部226によって制御指令が更新された時点から、更新された制御指令が指定する切込量で制御軸を移動させる。
 指令更新部226は、指令生成部222で生成された制御指令が指定する切込量よりも小さい切込量を指定する制御指令に更新する。指令更新部226は、例えば、指令生成部222によって生成された制御指令が指定する切込量の0.5倍の切込量に変更する。
 図5Aおよび図5Bは、制御部227が指令更新部226によって更新された制御指令に基づいて制御軸を制御する例について説明する図である。
 図5Aは、指令生成部222によって生成された制御指令に基づいて工具Tが移動する例を示す。すなわち、図5Aに示す例では、未だ、指令更新部226によって制御指令が更新されていない。そのため、制御部227は、指令生成部222によって生成された制御指令が指定する移動経路に沿って工具Tを移動させる。
 図5Bは、指令更新部226によって追加された切削の待機時間を指定する制御指令に基づいて制御軸の制御が行われる例を示す。図5Bに示す例では、指令更新部226によって更新された制御指令は、切削時には工具Tを退避させる指令と所定の時間だけ退避位置で切削を待機する指令とを含む。
 例えば、エンドミルがX軸のマイナス方向に向かってワークWの端面の切削を行っている場合、指令更新部226は、X軸のプラス方向、およびY軸のプラス方向にそれぞれ数ミリ程度、工具Tを退避させて、切削を、例えば、60秒間待機させる制御指令に更新する。
 図6Aおよび図6Bは、制御部227が指令更新部226によって更新された制御指令に基づいて制御軸を制御する例について説明する図である。
 図6Aは、指令生成部222によって生成された制御指令に基づいて工具Tが移動する例を示す。すなわち、図6Aに示す例では、未だ、指令更新部226によって制御指令が更新されていない。そのため、制御部227は、指令生成部222によって生成された制御指令が指定する移動経路に沿って工具Tを移動させる。
 図6Bは、指令更新部226によって追加された切削の待機時間を指定する指令に基づいて制御軸の制御が行われる例を示す。すなわち、図6Bに示す例では、指令更新部226によって更新された制御指令は、切削時において工具Tを退避させる指令と所定の時間だけ退避位置で切削を待機する指令とを含む。
 例えば、エンドミルがX軸のマイナス方向に移動して溝加工を行っている場合、指令更新部226は、工具TをZ軸のプラス方向に退避させて、切削を、例えば、60秒間待機させる制御指令に更新する。
 次に、連続切削時間の算出に係る処理について説明する。連続切削時間は、例えば、実測値である。
 図7は、連続切削時間の算出に係る処理の一例を示すフローチャートである。加工プログラムの実行が開始されると、制御部227は、加工プログラムに従って制御軸を制御する(ステップSA1)。
 制御軸を制御している間、制御部227は主軸のトルクを検出して、トルクが0よりも大きいか否かを判断する(ステップSA2)。工具TによってワークWが切削されている間、主軸には大きな負荷が掛かる。一方、工具TによってワークWが切削されていない間、主軸には負荷が掛からない。そのため、トルクが0よりも大きいか否かを判断することにより、制御部227は、切削が行われているか否かを判断することができる。
 トルクが0よりも大きい場合(ステップSA2においてYesの場合)、連続切削時間に所定の時間が加算される(ステップSA3)。所定の時間は、例えば、1[ms]である。連続切削時間は、例えば、RAM204に記憶される。
 トルクが0以下である場合(ステップSA2においてNoの場合)、連続切削時間は0に設定される(ステップSA4)。つまり、連続切削時間がリセットされる。
 次に、制御部227は、加工プログラムが終了したか否かを判断する(ステップSA5)。加工プログラムが終了した場合(ステップSA5においてYesの場合)、連続切削時間の取得処理は終了する。一方、加工プログラムが未だ終了しない場合(ステップSA5においてNoの場合)、再びステップSA1の処理が実行される。
 図7に示す例では、トルクが0以下になった時点で連続切削時間がリセットされる。しかし、トルクが0になった後、所定の時間が経過してから連続切削時間がリセットされるようにしてもよい。
 図8は、連続切削時間の算出に係る処理の他の例を示すフローチャートである。加工プログラムの実行が開始されると、制御部227は、加工プログラムに従って制御軸を制御する(ステップSB1)。
 制御部227は、実行中のブロックの指令に基づいて、切削モード中か否かを判断する(ステップSB2)。例えば、実行中のブロックに直線補間指令「G01」が含まれている場合、制御部227は、切削モード中であると判断する。
 制御部227が切削モード中ではないと判断した場合(ステップSB2においてNoの場合)、制御部227は、非切削時間が所定時間を超えたか否かを判断する(ステップSB3)。所定時間は、例えば、10[sec]である。
 非切削時間が所定時間を超えている場合(ステップSB3においてYesの場合)、連続切削時間は0に設定される(ステップSB4)。すなわち、連続切削時間がリセットされる。これにより、一瞬だけ工具TがワークWから離れた場合などに、連続切削時間がリセットされることを防ぐことができる。
 制御部227が切削モード中であると判断した場合(ステップSB2においてYesの場合)、連続切削時間には、所定の時間が加算される(ステップSB5)。所定の時間は、例えば、1[ms]である。
 次に、制御部227は、加工プログラムが終了したか否かを判断する(ステップSB6)。加工プログラムが終了した場合(ステップSB6においてYesの場合)、連続切削時間の取得処理は終了する。一方、加工プログラムが未だ終了しない場合(ステップSB6においてNoの場合)、再びステップSB1の処理が実行される。
 第1の取得部223によって取得される所定の物理量の積算値は、推定値であってもよい。第1の取得部223は、例えば、加工プログラムを解析して第1の値の推定値を取得する。所定の物理量の積算値が連続切削時間である場合、連続切削時間は、切削モードが継続する時間に基づいて推定される。
 図9は、加工プログラムの一例である。図9に示す加工プログラムにおいて、切削モードが継続する時間は、直線補間指令「G01」によって工具Tが、移動している時間である。すなわち、切削モードが継続する時間は、シーケンス番号「N1」からシーケンス番号「N10」の各ブロックで指定される指令によって工具Tが移動する時間である。シーケンス番号「N1」からシーケンス番号「N10」の各ブロックでは、「F」コードで指定される送り速度60.0「mm/min」で工具Tが移動する。
 シーケンス番号「N1」からシーケンス番号「N10」までの各ブロックでは、それぞれ、工具TをX軸のプラス方向に1.0[mm]だけ、送り速度60.0[mm/min]の速さで移動させる指令が指定されている。したがって、切削モードが継続する時間は、10[sec]である。この場合、第1の取得部223は、加工プログラムの解析結果に基づいて、連続切削時間が10[sec]であると推定する。
 なお、図9に示す加工プログラムにおいて、「O」は、プログラム名を指定するコードである。「G00」は、位置決め指令である。「G90」は、アブソリュート指令である。アブソリュート指令が指定されている場合、工具Tの位置は、設定された原点を0とする座標系における座標値によって指定される。
 「G91」は、インクレメンタル指令である。インクレメンタル指令が指定されている場合、工具Tの位置は、工具Tの現在の位置からの移動量で指定される。
 「G01」は、直線補間指令である。「G01」が指定されている場合、工具Tは直線移動する。「F」コードは、工具Tの送り速度を指定する指令である。つまり、「F60.0」は、工具Tを60.0[mm/min]で移動させる指令である。
 シーケンス番号「N1」からシーケンス番号「N10」までの各ブロックの「X1.0」は、それぞれ、工具Tを、順次、送り速度60.0[mm/min]でX軸のプラス方向に1.0[mm]移動させることを指定する。「M00」は、プログラム終了指令である。
 図10は、加工プログラムの一例である。図10に示す加工プログラムにおいて、切削モードが継続する時間は、直線補間指令「G01」によって工具Tが継続して移動する時間である。
 図10に示す加工プログラムでは、シーケンス番号「N5」のブロックとシーケンス番号「N6」のブロックとの間にドウェル指令「G04」が指定されている。ドウェル指令は、指定された時間の間、工具Tの移動を停止させる指令である。ドウェル指令とともに指定された「X1.0」は、停止時間を指定する指令である。つまり、「G04X1.0」によって、工具Tの移動が1.0[sec]の間停止することが指定されている。
 したがって、図10に示す加工プログラムでは、シーケンス番号「N1」からシーケンス番号「N5」までのブロックで指定される指令によって工具Tが移動する時間が連続切削時間である。また、シーケンス番号「N6」からシーケンス番号「N10」までのブロックで指定される指令によって工具Tが移動する時間が連続切削時間である。
 図10に示す例では、第1の取得部223は、シーケンス番号「N1」からシーケンス番号「N5」のブロックにおいて、連続切削時間を示す値として推定される5[sec]を取得する。また、第1の取得部223は、シーケンス番号「N6」からシーケンス番号「N10」のブロックにおいて、連続切削時間を示す値として推定される5[sec]を取得する。
 図11は、数値制御装置2が実行する処理の流れの一例を示すフローチャートである。
 プログラムの実行が開始されると、プログラム解析部221が加工プログラムを解析する(ステップS1)。
 次に、指令生成部222が、プログラム解析部221による加工プログラムの解釈結果に基づいて、制御軸を制御するための制御指令を生成する(ステップS2)。
 次に、制御部227は、指令生成部222によって生成された制御指令に基づいて制御軸を制御する(ステップS3)。
 次に、第1の取得部223が、加工プログラムの実行中に所定の物理量の積算値を示す第1の値を取得する(ステップS4)。所定の物理量の積算値は、例えば、連続切削時間である。
 次に、第2の取得部225が、第2の値を取得する(ステップS5)。第2の値は、例えば、第1の値と比較されるしきい値である。
 次に、指令更新部226が第1の値と第2の値とを比較する(ステップS6)。第1の値が第2の値よりも小さい場合(ステップS6においてNoの場合)、制御部227は、制御軸の制御を継続して行う(ステップS3)。
 第1の値が第2の値以上である場合(ステップS6においてYesの場合)、指令更新部226は、指令生成部222によって生成された制御指令を更新する(ステップS7)。
 次に、制御部227が、指令更新部226によって更新された制御指令に基づいて制御軸を制御し(ステップS8)、当該処理が終了する。
 上述した実施形態において、指令更新部226が切削の待機時間を指定する制御指令を追加する場合、制御指令は、切削時には、工具Tを退避させる指令を含むことを説明した。しかし、指令更新部226が切削の待機時間を指定する制御指令を追加する場合、制御指令は、非切削時には、工具Tを退避させる指令を含まなくてもよい。つまり、工具TがワークWと接触していない場合は、工具Tを退避させる必要はない。
 上述した実施形態において、指令更新部226は、第1の値を利用して算出される第3の値と、第2の値とに基づいて制御指令を更新してもよい。
 例えば、第3の値は、連続切削時間と、連続切削時間中における送り速度の積分値との積を示す値であってもよい。第3の値は、連続切削時間と、連続切削時間中における切込量の積分値との積を示す値であってもよい。第3の値は、連続切削時間と、連続切削時間中における主軸のトルクの積分値との積を示す値であってもよい。
 また、第3の値は、第1の値と、ワークWまたは工具Tの特徴を示す数値とを利用して算出されてもよい。ワークWの特徴を示す数値は、例えば、ワークWの硬度を示す値である。工具Tの特徴を示す数値は、例えば、工具Tの硬度を示す数値である。
 上述した実施形態において、記憶部224は複数の第2の値を記憶していてもよい。この場合、ワークWの材質、工具Tの種類などに応じて第2の値が取得されるようにしてもよい。
 上述した実施形態では、第1の値が第2の値以上になった場合に、指令更新部226は、制御指令を更新する。しかし、指令更新部226は、第1の値が第2の値以上になることを事前に予測して制御指令を更新してもよい。
 例えば、実行中のブロックの次のブロックが実行されると、次のブロックの実行中に第1の値が第2の値以上になることがある。この場合、指令更新部226は、実行中のブロックの実行が終了した時点で、制御指令を更新してもよい。具体的には、指令更新部226は、実行中のブロックの実行が終了した時点で、切削の待機時間を指定する制御指令を追加してもよい。
 以上説明したように、数値制御装置2は、加工プログラムに基づいて、制御軸を制御するための制御指令を生成する指令生成部222と、加工プログラムの実行中に所定の物理量の積算値を示す第1の値を取得する第1の取得部223と、第2の値を取得する第2の取得部225と、第1の取得部223によって取得された第1の値と、第2の取得部225によって取得された第2の値とに基づいて、制御指令を更新する指令更新部226と、指令更新部226によって更新された制御指令に基づいて制御軸を制御する制御部227と、を備える。
 また、コンピュータ読み取り可能な記憶媒体が、加工プログラムに基づいて、制御軸を制御するための制御指令を生成することと、加工プログラムの実行中に所定の物理量の積算値を示す第1の値を取得することと、第2の値を取得することと、取得された第1の値と、第2の値とに基づいて、制御指令を更新することと、更新された制御指令に基づいて制御軸を制御することと、をコンピュータに実行させる命令を記憶する。したがって、数値制御装置2は、工具Tの摩耗を防ぐことできる。
 また、第1の取得部223は、トルクセンサから取得された情報に基づいて、第1の値を取得する。そのため、数値制御装置2は、第1の値の実測値を取得することができる。したがって、数値制御装置2は、第1の値の正確な値を取得することができる。
 また、第1の取得部223は、加工プログラムを解析して第1の値を取得する。つまり、数値制御装置2、第1の値の推定値を取得することができる。したがって、工作機械1には、第1の値を取得するための特別なハードウェアを設ける必要がない。
 また、第1の値は、連続切削時間を示す値である。また、第1の値は、連続切削量を示す値であってもよい。したがって、数値制御装置2は、温度計測用などのセンサが設置されていない工作機械1においても、工具Tの摩耗を抑制することができる。
 また、指令更新部226は、送り速度を指定する制御指令の更新、切込量を指定する制御指令の更新、および、切削の待機時間を指定する制御指令の追加の少なくともいずれかを実行する。これにより、数値制御装置2は、工具Tの摩耗が加速度的に進行することを防ぐことができる。
 また、待機時間を指定する制御指令は、切削時には、工具Tを退避させる指令を含み、非切削時には、工具Tを退避させる指令を含まない。そのため、数値制御装置2は、切削時には工具Tの摩耗が進行することを確実に防ぐことができる。また、数値制御装置2は、非切削時には不要な指令を生成するための負荷を削減することができる。
 また、第2の取得部225は、第2の値を記憶する記憶部224から第2の値を取得する。そのため、オペレータが毎回、第2の値を入力する必要がない。したがって、数値制御装置2は、オペレータの作業負担を軽減することができる。
 本開示について詳述したが、本開示は上述した個々の実施形態に限定されるものではない。これらの実施形態は、本開示の要旨を逸脱しない範囲で、または、請求の範囲に記載された内容とその均等物から導き出される本開示の要旨を逸脱しない範囲で、種々の追加、置き換え、変更、部分的削除等が可能である。また、これらの実施形態は、組み合わせて実施することもできる。
 以下に、本開示の実施形態に係る付記を示す。
付記[1]
 加工プログラムに基づいて、制御軸を制御するための制御指令を生成する指令生成部と、前記加工プログラムの実行中に所定の物理量の積算値を示す第1の値を取得する第1の取得部と、第2の値を取得する第2の取得部と、前記第1の取得部によって取得された前記第1の値と、前記第2の取得部によって取得された前記第2の値とに基づいて、前記制御指令を更新する指令更新部と、前記指令更新部によって更新された前記制御指令に基づいて前記制御軸を制御する制御部と、を備える数値制御装置。
付記[2]
 前記第1の取得部は、トルクセンサから取得された情報に基づいて、前記第1の値を取得する付記[1]に記載の数値制御装置。
付記[3]
 前記第1の取得部は、前記加工プログラムを解析して前記第1の値を取得する付記[1]または[2]に記載の数値制御装置。
付記[4]
 前記第1の値は、連続切削時間を示す値である付記[1]~[3]のいずれかに記載の数値制御装置。
付記[5]
 前記第1の値は、連続切削量を示す値である付記[1]に記載の数値制御装置。
付記[6]
 前記指令更新部は、送り速度を指定する制御指令の更新、切込量を指定する制御指令の更新、および、切削の待機時間を指定する制御指令の追加の少なくともいずれかを実行する付記[1]~[5]のいずれかに記載の数値制御装置。
付記[7]
 前記待機時間を指定する前記制御指令は、前記切削時には、工具を退避させる指令を含み、非切削時には、前記工具を退避させる指令を含まない付記[6]に記載の数値制御装置。
付記[8]
 前記第2の取得部は、前記第2の値を記憶する記憶部から前記第2の値を取得する付記[1]~[7]のいずれかに記載の数値制御装置。
付記[9]
 加工プログラムに基づいて、制御軸を制御するための制御指令を生成することと、前記加工プログラムの実行中に所定の物理量の積算値を示す第1の値を取得することと、第2の値を取得することと、取得された前記第1の値と、前記第2の値とに基づいて、前記制御指令を更新することと、更新された前記制御指令に基づいて前記制御軸を制御することと、をコンピュータに実行させる命令を記憶するコンピュータ読み取り可能な記憶媒体。
  1       工作機械
  2       数値制御装置
  201     ハードウェアプロセッサ
  202     バス
  203     ROM
  204     RAM
  205     不揮発性メモリ
  206     第1のインタフェース
  207     軸制御回路
  208     スピンドル制御回路
  209     PLC
  210     I/Oユニット
  211     第2のインタフェース
  221     プログラム解析部
  222     指令生成部
  223     第1の取得部
  224     記憶部
  225     第2の取得部
  226     指令更新部
  227     制御部
  3       入出力装置
  4       サーボアンプ
  5       サーボモータ
  6       スピンドルアンプ
  7       スピンドルモータ
  8       補助機器
  9       センサ

Claims (9)

  1.  加工プログラムに基づいて、制御軸を制御するための制御指令を生成する指令生成部と、
     前記加工プログラムの実行中に所定の物理量の積算値を示す第1の値を取得する第1の取得部と、
     第2の値を取得する第2の取得部と、
     前記第1の取得部によって取得された前記第1の値と、前記第2の取得部によって取得された前記第2の値とに基づいて、前記制御指令を更新する指令更新部と、
     前記指令更新部によって更新された前記制御指令に基づいて前記制御軸を制御する制御部と、
    を備える数値制御装置。
  2.  前記第1の取得部は、トルクセンサから取得された情報に基づいて、前記第1の値を取得する請求項1に記載の数値制御装置。
  3.  前記第1の取得部は、前記加工プログラムを解析して前記第1の値を取得する請求項1または2に記載の数値制御装置。
  4.  前記第1の値は、連続切削時間を示す値である請求項1~3のいずれか1項に記載の数値制御装置。
  5.  前記第1の値は、連続切削量を示す値である請求項1に記載の数値制御装置。
  6.  前記指令更新部は、送り速度を指定する制御指令の更新、切込量を指定する制御指令の更新、および、切削の待機時間を指定する制御指令の追加の少なくともいずれかを実行する請求項1~5のいずれか1項に記載の数値制御装置。
  7.  前記待機時間を指定する前記制御指令は、前記切削時には、工具を退避させる指令を含み、非切削時には、前記工具を退避させる指令を含まない請求項6に記載の数値制御装置。
  8.  前記第2の取得部は、前記第2の値を記憶する記憶部から前記第2の値を取得する請求項1~7のいずれか1項に記載の数値制御装置。
  9.  加工プログラムに基づいて、制御軸を制御するための制御指令を生成することと、
     前記加工プログラムの実行中に所定の物理量の積算値を示す第1の値を取得することと、
     第2の値を取得することと、
     取得された前記第1の値と、前記第2の値とに基づいて、前記制御指令を更新することと、
     更新された前記制御指令に基づいて前記制御軸を制御することと、
    をコンピュータに実行させる命令を記憶するコンピュータ読み取り可能な記憶媒体。
PCT/JP2023/010006 2023-03-15 2023-03-15 数値制御装置およびコンピュータ読み取り可能な記憶媒体 WO2024189813A1 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
PCT/JP2023/010006 WO2024189813A1 (ja) 2023-03-15 2023-03-15 数値制御装置およびコンピュータ読み取り可能な記憶媒体

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2023/010006 WO2024189813A1 (ja) 2023-03-15 2023-03-15 数値制御装置およびコンピュータ読み取り可能な記憶媒体

Publications (1)

Publication Number Publication Date
WO2024189813A1 true WO2024189813A1 (ja) 2024-09-19

Family

ID=92754764

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2023/010006 WO2024189813A1 (ja) 2023-03-15 2023-03-15 数値制御装置およびコンピュータ読み取り可能な記憶媒体

Country Status (1)

Country Link
WO (1) WO2024189813A1 (ja)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07219611A (ja) * 1994-01-28 1995-08-18 Mitsubishi Electric Corp 工作機械および工作機械制御装置
JP2018051725A (ja) * 2016-09-30 2018-04-05 三菱重工工作機械株式会社 工具の刃先位置計測方法及び工作機械
JP2021189992A (ja) * 2020-06-04 2021-12-13 ファナック株式会社 工作機械システム

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07219611A (ja) * 1994-01-28 1995-08-18 Mitsubishi Electric Corp 工作機械および工作機械制御装置
JP2018051725A (ja) * 2016-09-30 2018-04-05 三菱重工工作機械株式会社 工具の刃先位置計測方法及び工作機械
JP2021189992A (ja) * 2020-06-04 2021-12-13 ファナック株式会社 工作機械システム

Similar Documents

Publication Publication Date Title
EP2071419B1 (en) Numerical controller having control mode switching function
CN106346304B (zh) 机床的热位移修正装置
US7657356B2 (en) Controller
JP2015011669A (ja) 複合形固定サイクルの開始点経路短縮機能を有する数値制御装置
US11402824B2 (en) Numerical controller
US11106194B2 (en) Numerical controller for continuous cutting control
US11402822B2 (en) Numerical controller
WO2024189813A1 (ja) 数値制御装置およびコンピュータ読み取り可能な記憶媒体
EP0487738B1 (en) System for correcting quantity of deformation of tool
US11003161B2 (en) Numerical controller
JP7518212B2 (ja) 数値制御装置
US11565331B2 (en) Numerical controller
WO2022239155A9 (ja) 数値制御装置、およびコンピュータ読み取り可能な記憶媒体
WO2024214301A1 (ja) 指令生成装置およびコンピュータ読み取り可能な記憶媒体
US20180364681A1 (en) Numerical controller
US20240377813A1 (en) Numerical controller
WO2023228356A1 (ja) 数値制御装置およびコンピュータ読み取り可能な記憶媒体
JPS61103207A (ja) 数値制御システム
WO2023162001A1 (ja) 加工面推定装置およびコンピュータ読み取り可能な記憶媒体
WO2022244072A1 (ja) 数値制御装置及びコンピュータ読み取り可能な記憶媒体
WO2023058085A1 (ja) 数値制御装置
WO2023053349A9 (ja) 数値制御装置
JP7448738B1 (ja) 産業機械の制御装置及び制御方法
WO2023166559A9 (ja) データ収集装置およびコンピュータ読み取り可能な記憶媒体
US20230408986A1 (en) Controller

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

Country of ref document: EP

Kind code of ref document: A1