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

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

Info

Publication number
WO2022239155A9
WO2022239155A9 PCT/JP2021/018083 JP2021018083W WO2022239155A9 WO 2022239155 A9 WO2022239155 A9 WO 2022239155A9 JP 2021018083 W JP2021018083 W JP 2021018083W WO 2022239155 A9 WO2022239155 A9 WO 2022239155A9
Authority
WO
WIPO (PCT)
Prior art keywords
control information
command
control
axis
speed
Prior art date
Application number
PCT/JP2021/018083
Other languages
English (en)
French (fr)
Other versions
WO2022239155A1 (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 JP2023520658A priority Critical patent/JPWO2022239155A1/ja
Priority to PCT/JP2021/018083 priority patent/WO2022239155A1/ja
Priority to CN202180097798.4A priority patent/CN117242410A/zh
Priority to DE112021007207.2T priority patent/DE112021007207T5/de
Publication of WO2022239155A1 publication Critical patent/WO2022239155A1/ja
Publication of WO2022239155A9 publication Critical patent/WO2022239155A9/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/19Numerical 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 positioning or contouring control systems, e.g. to control position from one programmed point to another or to control movement along a programmed continuous path

Definitions

  • the present disclosure relates to a numerical control device and a computer-readable storage medium.
  • the numerical control device controls each part of the machine tool based on the machining program.
  • control information for controlling the control axes is set based on a code called a G code.
  • a G code For example, when positioning command G00 is specified, a position gain, feedforward coefficient, and acceleration/deceleration time constant corresponding to the positioning command are set as control information. Further, when the cutting feed command G01 is specified, a position gain, a feedforward coefficient, and an acceleration/deceleration time constant corresponding to the cutting feed command are set as control information.
  • the creator of the machining program may mistakenly write a G code different from the intended G code in the machining program.
  • machining is performed with control information set that is different from the control information intended by the creator of the machining program.
  • control information set that is different from the control information intended by the creator of the machining program.
  • An object of the present disclosure is to provide a numerical control device that can control a control axis in a state where appropriate control information is set.
  • the numerical control device has a control information storage unit that stores multiple pieces of control information for controlling the control axes of the machine tool, and a speed command that specifies the feed rate of the control axis or a movement command derived from the speed command.
  • a control information determination unit that determines one control information among the plurality of control information stored in the control information storage unit based on the control information determination unit; and a control axis that controls the control axis based on the one control information determined by the control information determination unit.
  • An instruction for causing a computer to determine one of the control information and to control the control axis based on the determined one control information is stored.
  • FIG. 1 is a diagram showing an example of a hardware configuration diagram of a machine tool. It is a block diagram showing an example of the function of a numerical control device. It is a figure explaining an example of control information stored in a control information storage part.
  • FIG. 3 is a diagram showing part of a machining program. 2 is a flowchart illustrating an example of the flow of processing executed by the numerical control device.
  • FIG. 3 is a diagram showing part of a machining program. It is a figure explaining an example of control information stored in a control information storage part.
  • FIG. 3 is a diagram showing part of a machining program. It is a figure explaining an example of acceleration time of a control axis.
  • FIG. 1 is a diagram showing an example of the hardware configuration of a machine tool.
  • the machine tool 1 is, for example, a lathe, a machining center, or a multitasking machine.
  • the machine tool 1 includes, for example, a numerical control device 2, an input/output device 3, a servo amplifier 4 and a servo motor 5, a spindle amplifier 6 and a spindle motor 7, and an auxiliary device 8.
  • the numerical control device 2 is a device that controls the entire machine tool 1.
  • the numerical control device 2 includes a CPU (Central Processing Unit) 201, a bus 202, a ROM (Read Only Memory) 203, a RAM (Random Access Memory) 204, and a nonvolatile memory 205. It is equipped with a CPU (Central Processing Unit) 201, a bus 202, a ROM (Read Only Memory) 203, a RAM (Random Access Memory) 204, and a nonvolatile memory 205. It is equipped with a CPU (Central Processing Unit) 201, a bus 202, a ROM (Read Only Memory) 203, a RAM (Random Access Memory) 204, and a nonvolatile memory 205. It is equipped with a CPU (Central Processing Unit) 201, a bus 202, a ROM (Read Only Memory) 203, a RAM (Random Access Memory) 204, and a nonvolatile memory 205. It is equipped with a
  • the CPU 201 is a processor that controls the entire numerical control device 2 according to a system program.
  • the CPU 201 reads out a system program stored in the ROM 203 via the bus 202, and performs various processes based on the system program. Further, the CPU 201 controls the servo motor 5 and the spindle motor 7 based on the machining program.
  • the CPU 201 analyzes a machining program and outputs control commands to the servo motor 5 and spindle motor 7, for example, in each control cycle.
  • the bus 202 is a communication path that connects each piece of hardware within the numerical control device 2 to each other. Each piece of hardware within the numerical control device 2 exchanges data via a bus 202.
  • the ROM 203 is a storage device that stores system programs and the like for controlling the entire numerical control device 2.
  • ROM 203 is a computer readable storage medium.
  • the RAM 204 is a storage device that temporarily stores various data.
  • the RAM 204 functions as a work area for the CPU 201 to process various data.
  • the nonvolatile memory 205 is a storage device that retains data even when the machine tool 1 is powered off and the numerical control device 2 is not supplied with power.
  • the nonvolatile memory 205 stores, for example, machining programs and various parameters input from the input/output device 3.
  • Non-volatile memory 205 is a computer readable storage medium.
  • the nonvolatile memory 205 is configured with, for example, an SSD (Solid State Drive).
  • the numerical control device 2 further includes an interface 206, an axis control circuit 207, a spindle control circuit 208, a PLC (Programmable Logic Controller) 209, and an I/O unit 210.
  • an interface 206 an interface 206, an axis control circuit 207, a spindle control circuit 208, a PLC (Programmable Logic Controller) 209, and an I/O unit 210.
  • PLC Programmable Logic Controller
  • the interface 206 connects the bus 202 and the input/output device 3.
  • the interface 206 sends various data processed by the CPU 201 to the input/output device 3, for example.
  • the input/output device 3 is a device that receives various data via the interface 206 and displays the various data. The input/output device 3 also receives input of various data and sends the various data to the CPU 201 via the interface 206.
  • the input/output device 3 includes a display such as an LCD (Liquid Crystal Display), a keyboard, a mouse, and the like.
  • the input/output device 3 may be a touch panel.
  • the axis control circuit 207 is a circuit that controls the servo motor 5.
  • the axis control circuit 207 receives a control command from the CPU 201 and outputs a command for driving the servo motor 5 to the servo amplifier 4.
  • the axis control circuit 207 sends a torque command for controlling the torque of the servo motor 5 to the servo amplifier 4, for example.
  • the servo amplifier 4 receives a command from the axis control circuit 207 and supplies current to the servo motor 5.
  • the servo motor 5 is driven by receiving current from the servo amplifier 4.
  • the servo motor 5 is connected to, for example, a ball screw that drives a tool post.
  • structures of the machine tool 1, such as a tool rest move in, for example, the X-axis direction, the Y-axis direction, or the Z-axis direction.
  • the servo motor 5 may have a built-in speed detector (not shown) that detects the feed speed 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 CPU 201 and outputs a command for driving the spindle motor 7 to the spindle amplifier 6.
  • the spindle control circuit 208 sends a torque command for controlling the torque of the spindle motor 7 to the spindle amplifier 6, for example.
  • the spindle amplifier 6 receives a command from the spindle control circuit 208 and supplies current to the spindle motor 7.
  • the spindle amplifier 6 has a built-in ammeter 61 that measures the current value of the current supplied to the spindle motor 7.
  • the ammeter 61 detects the current value of the current supplied to the spindle motor 7.
  • the ammeter 61 sends data indicating the detected current value to the CPU 201.
  • the spindle motor 7 is driven by receiving current 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 equipment 8. PLC 209 sends commands to auxiliary equipment 8 via I/O unit 210.
  • the I/O unit 210 is an interface that connects the PLC 209 and the auxiliary equipment 8. I/O unit 210 sends the command received from PLC 209 to auxiliary equipment 8.
  • the auxiliary equipment 8 is installed in the machine tool 1 and is a device that performs auxiliary operations in the machine tool 1.
  • the auxiliary equipment 8 may be equipment installed around the machine tool 1.
  • Auxiliary equipment 8 operates based on commands received from I/O unit 210.
  • the auxiliary equipment 8 is, for example, a tool changer, a cutting fluid injection device, or an opening/closing door drive device.
  • the numerical control device 2 is a device that controls each part of the machine tool 1 based on a machining program.
  • FIG. 2 is a block diagram showing an example of the functions of the numerical control device 2.
  • the numerical control device 2 includes a program storage section 211, a program analysis section 212, a threshold storage section 213, a control information storage section 214, a control information determination section 215, a control information setting section 216, and a control section 217. Equipped with.
  • the program storage unit 211 is realized by storing a machining program input from the input/output device 3 or the like in the RAM 204 or the nonvolatile memory 205.
  • the threshold storage unit 213 and the control information storage unit 214 are realized by storing parameters, control information, etc. input from the input/output device 3 or the like in the RAM 204 or the nonvolatile memory 205.
  • control information determination section 215 controls the program execution section 212 .
  • control information setting section 216 controls the control section 217 . This is achieved by
  • the program storage unit 211 stores machining programs.
  • the machining program is a program for operating each part of the machine tool 1 to process a workpiece.
  • the moving path of the tool, the rotational speed of the spindle, the depth of cut, etc. are specified using G codes, S codes, and the like.
  • the feed rate is specified using the F code.
  • the F code that specifies the feed rate in the machining program is a speed command.
  • the program analysis unit 212 reads the machining program stored in the program storage unit 211 and analyzes the machining program. As the program analysis unit 212 analyzes the machining program, the numerical control device 2 recognizes each command written in the machining program.
  • the threshold storage unit 213 stores one or more thresholds.
  • the threshold value stored in the threshold storage unit 213 is used by the control information determining unit 215 to determine a piece of control information.
  • the functions of the control information determining section 215 will be described in detail below.
  • the control information storage unit 214 stores a plurality of pieces of control information for controlling the control axes of the machine tool 1.
  • the control information is information set for moving the control axis of the machine tool 1.
  • the control axis of the machine tool 1 is an axis for moving or rotating a tool or a main spindle.
  • the control axes include, for example, three orthogonal axes including an X-axis, a Y-axis, and a Z-axis.
  • control axes may include, for example, an A-axis, a B-axis, and a C-axis whose rotation axes are an axis parallel to the X-axis direction, an axis parallel to the Y-axis direction, and an axis parallel to the Z-axis direction, respectively.
  • the threshold storage unit 213 and the control information storage unit 214 may be provided in an external medium (for example, a USB (Universal Serial Bus) memory).
  • the control information determining unit 215 determines control information, which will be described later, based on information stored in the external medium.
  • the plurality of control information includes, for example, first control information and second control information.
  • the plural pieces of control information may include three or more pieces of control information.
  • the first control information and the second control information each include, for example, at least one of a position gain, a feedforward coefficient, an acceleration/deceleration time constant, and information indicating on/off of the function.
  • the function is a function related to movement of the control axis.
  • the function related to movement of the control axis is executed, for example, when machining a workpiece.
  • an oscillating cutting function is presented as an example of the function.
  • first control information and the second control information include the upper limit speed of the control axis, acceleration, high-precision cutting function on/off, and output on/off of rapid feed signal and cutting feed signal, respectively. , an in-position width, and information indicating an inner rotation tolerance of the tool.
  • the position gain is a numerical value multiplied by the position deviation, which is the difference between a position command specifying the position of the control axis and a position feedback value indicating the position of the control axis controlled based on the position command.
  • a command value for commanding the speed of the control axis is calculated by multiplying the position deviation by the position gain.
  • Position gain is also called position loop gain.
  • the feedforward coefficient is a numerical value that is multiplied by the differential value of the position command that specifies the position of the control axis.
  • the acceleration/deceleration time constant is a numerical value indicating the time it takes for the control axis to move from the speed specified by the speed command to a stopped state, or from the stopped state to reach the speed specified by the speed command.
  • Oscillating cutting refers to making a tool swing or vibrate when cutting a workpiece. By performing swing cutting, chips can be divided into small pieces. In order to prevent vibrations from adversely affecting the machine, the oscillating cutting function is generally turned off when not cutting, such as when executing a positioning command. Further, the swing cutting function is often operated with a swing amplitude proportional to the feed rate of the control shaft in order to shred chips. When the feed speed is particularly high, if the swing amplitude is proportional to the feed speed, the swing amplitude becomes large, and as a result, the vibration becomes excessively large. Therefore, if the feed rate is particularly high, it may be desirable to turn off the oscillating cutting function.
  • FIG. 3 is a diagram illustrating an example of control information stored in the control information storage unit 214.
  • the control information storage unit 214 stores, for example, first control information and second control information.
  • the position gain of the first control information is smaller than the position gain of the second control information.
  • the feedforward coefficient of the first control information is smaller than the feedforward coefficient of the second control information.
  • the acceleration/deceleration time constant of the first control information is smaller than the acceleration/deceleration time constant of the second control information.
  • Information indicating OFF is set in the information indicating ON/OFF of swing cutting in the first control information.
  • information indicating ON is set in the information indicating ON/OFF of swing cutting in the second control information.
  • the first control information corresponds to, for example, control information that is set when a positioning command is specified in the conventional numerical control device 2.
  • the second control information corresponds to, for example, control information that is set when a cutting feed command is specified in the conventional numerical control device 2.
  • the control information determining unit 215 determines one piece of control information from among the plurality of pieces of control information stored in the control information storage unit 214, based on a speed command that specifies the feed rate of the control axis.
  • the speed command that specifies the feed rate of the control axis is specified by an F code in the machining program, for example.
  • the control information determining unit 215 selects a plurality of pieces of control information stored in the control information storage unit 214 based on the feed rate of the control axis designated by the speed command and the threshold value stored in the threshold value storage unit 213. Decide which control information to set.
  • the control information determining unit 215 first compares the threshold value stored in the threshold storage unit 213 with the feed rate of the control axis specified by the speed command. The control information determining unit 215 determines the control information to be the first control information when the feed rate is greater than the threshold value. On the other hand, if the feed rate is equal to or less than the threshold, the control information determining unit 215 determines the control information to be the second control information.
  • the control information determining unit 215 determines one piece of control information used for controlling a control axis will be described using FIG. 4.
  • FIG. 4 is a diagram showing part of the machining program.
  • X100F5800 is specified in the line with sequence number N100 of the machining program.
  • X80F4800 is specified in the line with sequence number N200.
  • the threshold value storage unit 213 stores a threshold value 5000.
  • the control information determining unit 215 compares the value 5800 indicated by the speed command specified in the row with the sequence number N100 and the threshold value 5000. In this case, the feed speed indicated by the speed command specified in the row with sequence number N100 is greater than the threshold value. Therefore, the control information determining unit 215 determines the control information to be the first control information when the line with sequence number N100 is executed.
  • the control information determination unit 215 compares the value 4800 indicated by the speed command specified in the row with the sequence number N200 and the threshold value 5000. In this case, the feed speed indicated by the speed command specified in the row with sequence number N200 is less than or equal to the threshold value. Therefore, the control information determining unit 215 determines the control information to be the second control information when the line with sequence number N200 is executed.
  • the control information determining unit 215 determines one of the plurality of pieces of control information stored in the control information storage unit 214 based on a movement command derived from a speed command specifying the feed rate of the control axis. Good too. That is, when deriving a movement command from a speed command, the control information determining unit 215 compares the threshold value stored in the threshold storage unit 213 with the feed rate specified by the speed command, and uses the comparison result as a A movement command is derived based on the movement command.
  • the derived movement command includes, for example, a positioning command and a cutting feed command.
  • the control information determining unit 215 determines that the movement command is a positioning command. That is, the control information determining unit 215 derives a positioning command as a movement command from a speed command specified in the machining program. When the derived movement command is a positioning command, the control information determining unit 215 determines the control information as first control information corresponding to the positioning command.
  • the control information determining unit 215 determines that the movement command is a cutting feed command. That is, the control information determining unit 215 derives a cutting feed command as a movement command from the speed command specified in the machining program. When the derived movement command is a cutting feed command, the control information determining unit 215 determines the control information to be second control information corresponding to the cutting feed command.
  • the movement command derived from the speed command may include a first cutting feed command and a second cutting feed command different from the first cutting feed command.
  • the control information determining unit 215 determines one piece of control information corresponding to the first cutting feed command, and the derived movement command is the second cutting feed command. If it is a command, the control information determining unit 215 may determine other control information corresponding to the second cutting feed command.
  • the movement command derived from the speed command may include a first positioning command and a second positioning command different from the first positioning command.
  • the control information determining unit 215 determines one piece of control information corresponding to the first positioning command, and the derived movement command is the second positioning command. In this case, the control information determining unit 215 may determine other control information corresponding to the second positioning command.
  • the control information setting unit 216 sets one piece of control information determined by the control information determining unit 215 as control information used for controlling the control axis.
  • the control information setting unit 216 sets the position gain, feedforward coefficient, acceleration/deceleration time constant, and information indicating on/off of oscillating cutting, for example, as “ Set to "Small” value, “Small” value, “Small” value, and "Off”.
  • the control information setting unit 216 sets the position gain, feedforward coefficient, acceleration/deceleration time constant, and information indicating on/off of swing cutting, for example, as “ Set to "Large” value, “Large” value, “Large” value, and “On”.
  • the "small” value and the “large” value respectively refer to a relatively “small” value and a relatively “large” value when comparing the first control information and the second control information. ” means value.
  • the control unit 217 controls the control axis based on the one piece of control information determined by the control information determination unit 215.
  • the control unit 217 controls the control axis based on the first control information.
  • the control section 217 controls the control axis based on the second control information.
  • FIG. 5 is a flowchart showing an example of the flow of processing executed by the numerical control device 2.
  • the program analysis section 212 first reads a machining program from the program storage section 211 and analyzes the read machining program (step S1).
  • control information determining unit 215 selects one of the plurality of pieces of control information stored in the control information storage unit 214 based on a speed command specifying the feed rate of the control axis or a movement command derived from the speed command.
  • One piece of control information is determined (step S2).
  • control information setting unit 216 sets the one control information determined by the control information determining unit 215 as control information for controlling the control axis (step S3).
  • control unit 217 controls the control axis based on the one control information set by the control information determining unit 215 (step S4), and ends the process.
  • the numerical control device 2 may perform the processing of steps S1 to S4 repeatedly each time each line of the machining program is executed or at a predetermined period.
  • the numerical control device 2 includes the control information storage section 214 that stores a plurality of pieces of control information for controlling the control axes of the machine tool 1, and a speed command that specifies the feed rate of the control axes, or
  • the control information determining unit 215 determines one control information among the plurality of control information stored in the control information storage unit 214 based on the movement command derived from the speed command; and a control unit 217 that controls the control axis based on one piece of control information.
  • the numerical control device can control the control axes based on appropriate control information.
  • machining is performed with control information set that is different from the control information intended by the creator of the machining program. can be prevented. Furthermore, the amount of code specified in the machining program can be reduced.
  • the movement command includes a positioning command and a cutting feed command
  • the control information determining unit 215 determines one piece of control information corresponding to the positioning command.
  • the control information determining unit 215 determines one piece of control information corresponding to the cutting feed command. Therefore, appropriate control information is set in each case when a positioning command is derived and when a cutting feed command is derived.
  • each of the plural pieces of control information includes at least one of a position gain, a feedforward coefficient, an acceleration/deceleration time constant, and information indicating on/off of swing cutting. Therefore, each piece of information included in the control information can be set in consideration of machining accuracy, cycle time, and the like.
  • the speed command is specified in the machining program.
  • the speed command is not limited to what is specified by the machining program, and may be specified by, for example, any one of a parameter, an external signal, and an external medium.
  • the parameter is a parameter set in the numerical control device 2.
  • the external signal is, for example, a signal input from the PLC 209 or a PC (Personal Computer) connected to the numerical control device 2.
  • the external medium is, for example, a USB (Universal Serial Bus) memory.
  • the control information determination unit 215 determines control information based on any one of a parameter, an external signal, and a value stored in an external medium instead of the threshold value stored in the threshold storage unit 213. It's okay.
  • control information determining unit 215 compares a speed command specified in a machining program with a threshold value, and determines one piece of control information based on the comparison result.
  • the control information determination unit 215 determines the control information by comparing the ratio between the speed command before switching and the speed command after switching when the speed command is switched, that is, the speed ratio and a threshold value. It's okay.
  • the control information determining unit 215 compares the speed ratio with a threshold value. When the speed ratio is larger than the threshold value, the control information determining unit 215 determines, for example, the first control information shown in FIG. 3 as the control information to be set. When the speed ratio is less than or equal to the threshold, the control information determining unit 215 determines the second control information shown in FIG. 3 as the control information to be set.
  • the control information determining unit 215 determines one piece of control information to be used for controlling the control axis by comparing the speed ratio and the threshold value.
  • FIG. 6 is a diagram showing part of the machining program.
  • X100F100 is specified in the line with sequence number N100 of the machining program.
  • X80F1500 is specified in the line with sequence number N200.
  • the threshold value storage unit 213 stores a threshold value 1000.
  • the first control information and the second control information include information indicating whether the swing cutting function is turned on or off.
  • this is not limited to the oscillating cutting function, and may be any function as long as it should be turned on/off in response to a speed command or a movement command derived from the speed command.
  • it may be an interpolation function for high-quality processing.
  • the interpolation function is a function of interpolating a movement path so as to smoothly connect movement command points in response to a cutting movement command. Enabling the interpolation function requires a large amount of control cost. Therefore, when the feed speed is high, a large load is placed on the CPU. In this case, the interpolation function may not work properly. In such cases, it is better to turn off this feature. In this way, any function may be used as long as it should be turned on/off based on the feed rate.
  • the control information determining unit 215 selects a plurality of controls stored in the control information storage unit 214 based on a speed command specifying the feed rate of the control axis or a movement command derived from the speed command. One of the control information is determined. However, the control information determining unit 215 may further change the determined control information based on the acceleration time of the control axis when the speed command is switched. An example in which the control information determining unit 215 changes the determined control information based on the acceleration time of the control axis when the speed command is switched will be described with reference to FIGS. 7 to 9.
  • FIG. 7 is a diagram illustrating an example of control information stored in the control information storage unit 214.
  • FIG. 8 is a diagram showing a part of the machining program.
  • FIG. 9 is a diagram illustrating the acceleration time of the control axis.
  • the control information storage unit 214 stores first control information and second control information.
  • the first control information includes a position gain, a feedforward coefficient, and an acceleration/deceleration time constant.
  • the position gain of the first control information is set to a smaller value than the position gain of the second control information.
  • the feedforward coefficient of the first control information is set to a smaller value than the feedforward coefficient of the second control information.
  • the second control information includes a position gain, a feedforward coefficient, and an acceleration/deceleration time constant.
  • the position gain of the second control information is set to a value larger than the position gain of the first control information.
  • the feedforward coefficient of the second control information is set to a larger value than the feedforward coefficient of the first control information.
  • the upper limit speed of the control axis is set in advance as a parameter, taking into account the mechanical configuration of the machine tool, the safety of the operation of the control axis, etc.
  • the positioning command G00 allows speed specification up to the maximum positioning speed.
  • the cutting feed command G01 it is possible to specify a speed up to the maximum cutting feed rate.
  • acceleration/deceleration time constants and acceleration are also set in advance as parameters. For example, when the positioning command G00 is designated, the speed is accelerated or decelerated to the designated speed using the acceleration/deceleration time constant or acceleration during the positioning operation. Further, when the cutting feed command G01 is specified, the speed is accelerated or decelerated to the specified speed using the acceleration/deceleration time constant or acceleration during the cutting feed operation.
  • the first control information allows the control axis to specify speeds up to F8000
  • the second control information allows the control axis to specify speeds up to F3000.
  • the first control information specifies ⁇ 1 [s] as the acceleration/deceleration time constant
  • the second control information specifies ⁇ 2 [s] as the acceleration/deceleration time constant.
  • X100F6000 is specified in the line with sequence number N100 in the machining program.
  • X80F2800 is specified in the line with sequence number N200.
  • X50F1500 is specified in the line with sequence number N300. It is assumed that the threshold value storage unit 213 stores a threshold value 2500.
  • the control information determining unit 215 compares the value 6000 specified by the F code with the threshold value 2500 when the command specified in the line with sequence number N100 is executed. The feedrate specified by the F code in this line is greater than the threshold. Therefore, the control information determining unit 215 determines the first control information as the control information when line N100 is executed. Furthermore, the acceleration time when row N100 is executed is ⁇ 1 [s] (see FIG. 9).
  • the control information determining unit 215 compares the value 2800 specified by the F code with the threshold value 2500 when the command specified in the line with the sequence number N200 is executed.
  • the feedrate specified by the F code in this line is greater than the threshold. Therefore, the control information determining unit 215 determines the first control information as the control information when line N200 is executed.
  • the control information determining unit 215 determines the first control information as the control information.
  • the second control information is included within the upper limit speed 3000 of the control axis, there is no problem in selecting the second control information in terms of the machine configuration and the operation of the control axis. Therefore, the control information determining unit 215 determines the acceleration time of the control axis when the control axis is controlled based on the first control information and the acceleration time of the control axis when the control axis is controlled based on the second control information. Compare with time. When the first control information is set, the acceleration time until the feed speed reaches F2800 is ⁇ 1. On the other hand, assuming that the second control information is set, the time required for the feed rate of the control axis to reach F2800 is ⁇ 2 [s], which is shorter than ⁇ 1 [s].
  • the control information determining unit 215 changes the once determined first control information to the second control information.
  • the machining cycle time can be shortened by ( ⁇ 1- ⁇ 2) [s].
  • the control information determining unit 215 compares the value 1500 specified by the F code with the threshold value 2500 when the command specified in the line with sequence number N300 is executed.
  • the feed rate specified by the F code in this line is less than or equal to the threshold value. Therefore, the control information determining unit 215 determines the second control information as the control information when line N300 is executed.
  • the acceleration time of the control axis when the control axis is controlled based on the first control information and the acceleration time of the control axis when the control axis is controlled based on the second control information are calculated. Compare the acceleration time of the control axis in the case of control. However, this comparison may also be performed when N100 rows are executed and when N300 rows are executed.
  • the first control information and the second control information include acceleration/deceleration time constants.
  • the control information in such a case may include acceleration in the first control information or the second control information, and the acceleration ⁇ may be used for comparison of acceleration times.
  • the first control information includes an acceleration/deceleration time constant and does not include acceleration
  • the second control information does not include an acceleration/deceleration time constant but includes acceleration.
  • the first control information does not include acceleration/deceleration time constants and includes acceleration
  • the second control information includes acceleration/deceleration time constants and each control information is modified so that acceleration is not included. May be set.
  • control information determining unit 215 compares the speed command specified in the machining program with the threshold value, determines the control information based on the comparison result, and then determines the acceleration time of the control axis. Based on this, the determined control information is changed.
  • the control information determining unit 215 determines the control information by comparing the ratio of the speed command before switching and the speed command after switching when the speed command is switched, that is, the speed ratio and a threshold value, and then , the determined control information may be changed based on the acceleration time of the control axis.
  • one of the control information items stored in the control information storage unit 214 is based on the speed command specifying the feed speed of the control axis or the movement command derived from the speed command. Determine.
  • the control information determination unit 215 determines the first control information as the control information when the positioning command G00 is designated, and controls the control information when the cutting feed command G01 is designated, as before.
  • the information may include a mode for determining the second control information. That is, the numerical control device 2 includes a plurality of control modes, and in the first mode, the control information determining unit 215 uses a speed command that specifies the feed speed of the control axis or a movement command derived from the speed command.
  • one of the plurality of pieces of control information stored in the control information storage unit 214 may be determined. Further, in the second mode, the numerical control device 2 executes one control command corresponding to the positioning command or one control command corresponding to the cutting feed command based on the positioning command G00 or the cutting feed command G01 specified in the machining program. One control command may be determined.
  • Machine tool 2 Numerical control device 201 CPU 202 Bus 203 ROM 204 RAM 205 Non-volatile memory 206 Interface 207 Axis control circuit 208 Spindle control circuit 209 PLC 210 I/O unit 211 Program storage unit 212 Program analysis unit 213 Threshold storage unit 214 Control information storage unit 215 Control information determination unit 216 Control information setting unit 217 Control unit 3 Input/output device 4 Servo amplifier 5 Servo motor 6 Spindle amplifier 61 Ammeter 7 Spindle motor 8 Auxiliary equipment

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

数値制御装置が、工作機械の制御軸を制御するための複数の制御情報を記憶する制御情報記憶部と、制御軸の送り速度を指定する速度指令、または、速度指令から導出される移動指令に基づいて、制御情報記憶部に記憶された複数の制御情報のうち一の制御情報を決定する制御情報決定部と、制御情報決定部によって決定された一の制御情報に基づいて制御軸を制御する制御部と、を備える。

Description

数値制御装置、およびコンピュータ読み取り可能な記憶媒体
 本開示は、数値制御装置、およびコンピュータ読み取り可能な記憶媒体に関する。
 数値制御装置は、加工プログラムに基づいて工作機械の各部を制御する。加工プログラムでは、Gコードと称されるコードに基づいて制御軸を制御する際の制御情報が設定される。例えば、位置決め指令G00が指定されると、制御情報として、位置決め指令に対応するポジションゲイン、フィードフォワード係数、および加減速時定数が設定される。また、切削送り指令G01が指定されると、制御情報として、切削送り指令に対応するポジションゲイン、フィードフォワード係数、および加減速時定数が設定される。
国際公開第2020/085437号
 しかし、加工プログラムの作成者は、意図しているGコードとは異なるGコードを誤って加工プログラムに記載してしまう場合がある。この場合、加工プログラムの作成者が意図していた制御情報とは異なる制御情報が設定された状態で加工が行われる。その結果、ワークの加工精度が悪くなったり、加工時間が長くなったりするおそれがある。
 本開示は、適切な制御情報が設定された状態で制御軸の制御を実行することが可能な数値制御装置を提供することを目的とする。
 数値制御装置が、工作機械の制御軸を制御するための複数の制御情報を記憶する制御情報記憶部と、制御軸の送り速度を指定する速度指令、または、速度指令から導出される移動指令に基づいて、制御情報記憶部に記憶された複数の制御情報のうち一の制御情報を決定する制御情報決定部と、制御情報決定部によって決定された一の制御情報に基づいて制御軸を制御する制御部と、を備える。
 コンピュータ読み取り可能な記憶媒体が、工作機械の制御軸の送り速度を指定する速度指令、または、速度指令から導出される移動指令に基づいて、工作機械の制御軸を制御するための複数の制御情報のうち一の制御情報を決定することと、決定された一の制御情報に基づいて制御軸を制御することと、をコンピュータに実行させる命令を記憶する。
 本開示の一態様により、適切な制御情報が設定された状態で制御軸の制御を実行することが可能になる。
工作機械のハードウェア構成図の一例を示す図である。 数値制御装置の機能の一例を示すブロック図である。 制御情報記憶部に記憶される制御情報の一例を説明する図である。 加工プログラムの一部を示す図である。 数値制御装置が実行する処理の流れの一例を示すフローチャートである。 加工プログラムの一部を示す図である。 制御情報記憶部に記憶される制御情報の一例を説明する図である。 加工プログラムの一部を示す図である。 制御軸の加速時間の一例を説明する図である。
 以下、本開示の一実施形態について図面を用いて説明する。なお、以下の実施形態で説明する特徴のすべての組み合わせが課題解決に必ずしも必要であるとは限らない。また、必要以上の詳細な説明を省略する場合がある。また、以下の実施形態の説明、および図面は、当業者が本開示を十分に理解するために提供されるものであり、特許請求の範囲を限定することを意図していない。
 図1は、工作機械のハードウェア構成の一例を示す図である。工作機械1は、例えば、旋盤、マシニングセンタおよび複合加工機である。
 工作機械1は、例えば、数値制御装置2と、入出力装置3と、サーボアンプ4およびサーボモータ5と、スピンドルアンプ6およびスピンドルモータ7と、補助機器8とを備える。
 数値制御装置2は、工作機械1全体を制御する装置である。数値制御装置2は、CPU(Central Processing Unit)201と、バス202と、ROM(Read Only Memory)203と、RAM(Random Access Memory)204と、不揮発性メモリ205とを備えている。
 CPU201は、システムプログラムに従って数値制御装置2全体を制御するプロセッサである。CPU201は、バス202を介してROM203に格納されたシステムプログラムなどを読み出し、システムプログラムに基づいて、各種処理を行う。また、CPU201は、加工プログラムに基づいて、サーボモータ5およびスピンドルモータ7を制御する。
 CPU201は、制御周期ごとに、例えば、加工プログラムの解析、ならびに、サーボモータ5、およびスピンドルモータ7に対する制御指令の出力を行う。
 バス202は、数値制御装置2内の各ハードウェアを互いに接続する通信路である。数値制御装置2内の各ハードウェアはバス202を介してデータをやり取りする。
 ROM203は、数値制御装置2全体を制御するためのシステムプログラムなどを記憶する記憶装置である。ROM203は、コンピュータ読み取り可能な記憶媒体である。
 RAM204は、各種データを一時的に格納する記憶装置である。RAM204は、CPU201が各種データを処理するための作業領域として機能する。
 不揮発性メモリ205は、工作機械1の電源が切られ、数値制御装置2に電力が供給されていない状態でもデータを保持する記憶装置である。不揮発性メモリ205は、例えば、加工プログラム、および入出力装置3から入力される各種パラメータを記憶する。不揮発性メモリ205は、コンピュータ読み取り可能な記憶媒体である。不揮発性メモリ205は、例えば、SSD(Solid State Drive)で構成される。
 数値制御装置2は、さらに、インタフェース206と、軸制御回路207と、スピンドル制御回路208と、PLC(Programmable Logic Controller)209と、I/Oユニット210とを備えている。
 インタフェース206は、バス202と入出力装置3とを接続する。インタフェース206は、例えば、CPU201が処理した各種データを入出力装置3に送る。
 入出力装置3は、インタフェース206を介して各種データを受け、各種データを表示する装置である。また、入出力装置3は、各種データの入力を受け付けてインタフェース206を介して各種データをCPU201に送る。入出力装置3は、LCD(Liquid Crystal Display)などのディスプレイ、キーボード、およびマウスなどを含む。入出力装置3は、タッチパネルであってもよい。
 軸制御回路207は、サーボモータ5を制御する回路である。軸制御回路207は、CPU201からの制御指令を受けてサーボモータ5を駆動させるための指令をサーボアンプ4に出力する。軸制御回路207は、例えば、サーボモータ5のトルクを制御するトルクコマンドをサーボアンプ4に送る。
 サーボアンプ4は、軸制御回路207からの指令を受けて、サーボモータ5に電流を供給する。
 サーボモータ5は、サーボアンプ4から電流の供給を受けて駆動する。サーボモータ5は、例えば、刃物台を駆動させるボールねじに連結される。サーボモータ5が駆動することにより、刃物台などの工作機械1の構造物は、例えば、X軸方向、Y軸方向、またはZ軸方向に移動する。なお、サーボモータ5は、各制御軸の送り速度を検出する速度検出器(不図示)を内蔵していてもよい。
 スピンドル制御回路208は、スピンドルモータ7を制御するための回路である。スピンドル制御回路208は、CPU201からの制御指令を受けてスピンドルモータ7を駆動させるための指令をスピンドルアンプ6に出力する。スピンドル制御回路208は、例えば、スピンドルモータ7のトルクを制御するトルクコマンドをスピンドルアンプ6に送る。
 スピンドルアンプ6は、スピンドル制御回路208からの指令を受けて、スピンドルモータ7に電流を供給する。スピンドルアンプ6はスピンドルモータ7に供給される電流の電流値を測定する電流計61を内蔵している。
 電流計61は、スピンドルモータ7に供給される電流の電流値を検出する。電流計61は、検出した電流値を示すデータをCPU201に送る。
 スピンドルモータ7は、スピンドルアンプ6から電流の供給を受けて駆動する。スピンドルモータ7は、主軸に連結され、主軸を回転させる。
 PLC209は、ラダープログラムを実行して補助機器8を制御する装置である。PLC209は、I/Oユニット210を介して補助機器8に対して指令を送る。
 I/Oユニット210は、PLC209と補助機器8とを接続するインタフェースである。I/Oユニット210は、PLC209から受けた指令を補助機器8に送る。
 補助機器8は、工作機械1に設置され、工作機械1において補助的な動作を行う機器である。補助機器8は、工作機械1の周辺に設置される機器であってもよい。補助機器8は、I/Oユニット210から受けた指令に基づいて動作する。補助機器8は、例えば、工具交換装置、切削液噴射装置、または開閉ドア駆動装置である。
 次に、数値制御装置2の機能の一例について説明する。数値制御装置2は、加工プログラムに基づいて、工作機械1の各部を制御する装置である。
 図2は、数値制御装置2の機能の一例を示すブロック図である。数値制御装置2は、プログラム記憶部211と、プログラム解析部212と、しきい値記憶部213と、制御情報記憶部214と、制御情報決定部215と、制御情報設定部216と、制御部217とを備える。
 プログラム記憶部211は、入出力装置3などから入力された加工プログラムが、RAM204、または不揮発性メモリ205に記憶されることにより実現される。しきい値記憶部213、および制御情報記憶部214は、入出力装置3などから入力されたパラメータおよび制御情報などがRAM204、または不揮発性メモリ205に記憶されることにより実現される。
 プログラム解析部212、制御情報決定部215、制御情報設定部216および制御部217は、CPU201が、ROM203に記憶されているシステムプログラムならびに不揮発性メモリ205に記憶されている各種データを用いて演算処理することにより実現される。
 プログラム記憶部211は、加工プログラムを記憶する。加工プログラムは、工作機械1の各部を動作させてワークの加工を行うためのプログラムである。加工プログラムでは、工具の移動経路、主軸の回転速度、および切込量などがGコード、およびSコードなどを用いて指定される。また、加工プログラムでは、Fコードを用いて送り速度が指定される。つまり、加工プログラムにおいて送り速度を指定するFコードは、速度指令である。
 プログラム解析部212は、プログラム記憶部211に記憶された加工プログラムを読み込んで、加工プログラムを解析する。プログラム解析部212が加工プログラムを解析することによって、数値制御装置2は、加工プログラムに記載された各指令を認識する。
 しきい値記憶部213は、1または複数のしきい値を記憶する。しきい値記憶部213に記憶されたしきい値は、制御情報決定部215が一の制御情報を決定するために用いられる。制御情報決定部215の機能については、次に詳しく説明する。
 制御情報記憶部214は、工作機械1の制御軸を制御するための複数の制御情報を記憶する。制御情報とは、工作機械1の制御軸を移動させるために設定される情報である。工作機械1の制御軸とは、工具または主軸を移動または回転させるための軸である。制御軸は、例えば、X軸、Y軸、Z軸からなる直交3軸を含む。また、制御軸は、例えば、X軸方向に平行な軸、Y軸方向に平行な軸、Z軸方向に平行な軸をそれぞれ回転軸とするA軸、B軸、C軸を含んでもよい。
 なお、しきい値記憶部213、および制御情報記憶部214は、外部媒体(例えば、USB(Universal Serial Bus)メモリ)に設けられてもよい。この場合、制御情報決定部215は、外部媒体に記憶された情報に基づいて、後述する制御情報の決定を行う。
 複数の制御情報は、例えば、第1の制御情報と、第2の制御情報とを含む。複数の制御情報は、3つ以上の制御情報を含んでいてもよい。第1の制御情報、および第2の制御情報はそれぞれ、例えば、ポジションゲイン、フィードフォワード係数、加減速時定数、および機能のオン/オフを示す情報の少なくともいずれかを含む。ここで、機能とは、制御軸の移動に係る機能である。制御軸の移動に係る機能は、例えば、ワークの加工時に実行される。本実施例では機能の一例として揺動切削機能を提示する。また、第1の制御情報、および第2の制御情報には、それぞれ、制御軸の上限速度、加速度、高精度切削機能のオン/オフ、早送り中信号や切削送り中信号の出力のオン/オフ、インポジション幅、工具の内回り許容誤差を示す情報の少なくともいずれかが含まれていてもよい。
 ポジションゲインとは、制御軸の位置を指定する位置指令と位置指令に基づいて制御された制御軸の位置を示す位置フィードバック値との差である位置偏差に乗算される数値である。位置偏差にポジションゲインが乗算されることによって制御軸の速度を指令する指令値が算出される。ポジションゲインは、ポジションループゲインとも称される。
 フィードフォワード係数は、制御軸の位置を指定する位置指令の微分値に乗算される数値である。位置指令の微分値にフィードフォワード係数を乗じた値を速度指令に加算することによって制御軸の速度指令を補償し、指令追従性を向上させる。
 加減速時定数は、制御軸が速度指令によって指定された速度から停止状態に移行するまで、あるいは、停止状態から速度指令によって指定された速度に到達するまでの時間を示す数値である。
 揺動切削とは、ワークの切削時に工具を揺動動作、または振動動作させることである。揺動切削を行うことによって、切屑を細かく分断することができる。振動による機械への悪影響を防ぐため、一般に、位置決め指令の実行時などの非切削時は、揺動切削機能はオフにされる。また、揺動切削機能は切屑細断のために制御軸の送り速度に比例した揺動振幅で動作させる場合が多い。送り速度が特に大きい場合に送り速度に比例した揺動振幅で動作させると揺動振幅が大きくなり、その結果、振動も過度に大きくなる。そのため、送り速度が特に大きい場合は、揺動切削機能はオフにするほうが望ましい場合がある。
 図3は、制御情報記憶部214に記憶される制御情報の一例を説明する図である。制御情報記憶部214は、例えば、第1の制御情報と、第2の制御情報とを記憶する。
 第1の制御情報のポジションゲインは、第2の制御情報のポジションゲインよりも小さい。第1の制御情報のフィードフォワード係数は、第2の制御情報のフィードフォワード係数よりも小さい。第1の制御情報の加減速時定数は、第2の制御情報の加減速時定数よりも小さい。第1の制御情報における揺動切削のオン/オフを示す情報には、オフを示す情報が設定されている。また、第2の制御情報における揺動切削のオン/オフを示す情報には、オンを示す情報が設定されている。
 第1の制御情報は、例えば、従来の数値制御装置2において位置決め指令が指定された場合に設定される制御情報に相当する。第2の制御情報は、例えば、従来の数値制御装置2において切削送り指令が指定された場合に設定される制御情報に相当する。
 制御情報決定部215は、制御軸の送り速度を指定する速度指令に基づいて、制御情報記憶部214に記憶された複数の制御情報のうち一の制御情報を決定する。制御軸の送り速度を指定する速度指令は、例えば、加工プログラムにおいてFコードによって指定である。
 制御情報決定部215は、速度指令によって指定された制御軸の送り速度と、しきい値記憶部213に記憶されたしきい値に基づいて、制御情報記憶部214に記憶された複数の制御情報のうちいずれの制御情報を設定するかを決定する。
 制御情報決定部215は、まず、しきい値記憶部213に記憶されたしきい値と、速度指令によって指定された制御軸の送り速度とを比較する。制御情報決定部215は、送り速度がしきい値よりも大きい場合、制御情報を第1の制御情報に決定する。一方、制御情報決定部215は、送り速度がしきい値以下である場合、制御情報を第2の制御情報に決定する。ここで、図4を用いて、制御情報決定部215が制御軸の制御に用いる一の制御情報を決定する具体例について説明する。
 図4は、加工プログラムの一部を示す図である。加工プログラムのシーケンス番号N100の行においてX100F5800が指定されている。また、シーケンス番号N200の行においてX80F4800が指定されている。また、しきい値記憶部213には、しきい値5000が記憶されているものとする。
 制御情報決定部215は、シーケンス番号N100の行で指定された速度指令が示す値5800としきい値5000とを比較する。この場合、シーケンス番号N100の行において指定された速度指令が示す送り速度は、しきい値よりも大きい。したがって、制御情報決定部215は、シーケンス番号N100の行が実行される場合、制御情報を第1の制御情報に決定する。
 制御情報決定部215は、シーケンス番号N200の行で指定された速度指令が示す値4800としきい値5000とを比較する。この場合、シーケンス番号N200の行において指定された速度指令が示す送り速度は、しきい値以下である。したがって、制御情報決定部215は、シーケンス番号N200の行が実行される場合、制御情報を第2の制御情報に決定する。
 制御情報決定部215は、制御軸の送り速度を指定する速度指令から導出される移動指令に基づいて、制御情報記憶部214に記憶された複数の制御情報のうち一の制御情報を決定してもよい。つまり、制御情報決定部215は、速度指令から移動指令を導出する場合、しきい値記憶部213に記憶されたしきい値と、速度指令によって指定された送り速度とを比較し、比較結果に基づいて移動指令を導出する。導出される移動指令に、例えば、位置決め指令、および切削送り指令が含まれる。
 送り速度がしきい値よりも大きい場合、制御情報決定部215は、移動指令が位置決め指令であると判別する。つまり、制御情報決定部215は、加工プログラムで指定された速度指令から移動指令として位置決め指令を導出する。制御情報決定部215は、導出された移動指令が位置決め指令である場合、制御情報を位置決め指令に対応する第1の制御情報に決定する。
 一方、送り速度がしきい値以下である場合、制御情報決定部215は、移動指令が切削送り指令であると判別する。つまり、制御情報決定部215は、加工プログラムで指定された速度指令から移動指令として切削送り指令を導出する。制御情報決定部215は、導出された移動指令が切削送り指令である場合、制御情報を切削送り指令に対応する第2の制御情報に決定する。
 なお、速度指令から導出される移動指令は、第1の切削送り指令、および第1の切削送り指令とは異なる第2の切削送り指令を含んでいてもよい。導出された移動指令が第1の切削送り指令である場合、制御情報決定部215は第1の切削送り指令に対応する一の制御情報を決定し、導出された移動指令が第2の切削送り指令である場合、制御情報決定部215は第2の切削送り指令に対応する他の制御情報を決定するようにしてもよい。
 また、速度指令から導出される移動指令は、第1の位置決め指令、および第1の位置決め指令とは異なる第2の位置決め指令を含んでいてもよい。導出された移動指令が第1の位置決め指令である場合、制御情報決定部215は第1の位置決め指令に対応する一の制御情報を決定し、導出された移動指令が第2の位置決め指令である場合、制御情報決定部215は第2の位置決め指令に対応する他の制御情報を決定するようにしてもよい。
 制御情報設定部216は、制御情報決定部215によって決定された一の制御情報を制御軸の制御に用いる制御情報に設定する。制御情報設定部216は、制御情報として第1の制御情報が決定された場合、ポジションゲイン、フィードフォワード係数、加減速時定数、および揺動切削のオン/オフを示す情報をそれぞれ、例えば、「小さい」値、「小さい」値、「小さい」値、および「オフ」に設定する。制御情報設定部216は、制御情報として第2の制御情報が決定された場合、ポジションゲイン、フィードフォワード係数、加減速時定数、および揺動切削のオン/オフを示す情報をそれぞれ、例えば、「大きい」値、「大きい」値、「大きい」値、および「オン」に設定する。ここで、「小さい」値、および「大きい」値とは、それぞれ、第1の制御情報と、第2の制御情報とを比較した場合において相対的に「小さい」値、および相対的に「大きい」値を意味する。
 制御部217は、制御情報決定部215によって決定された一の制御情報に基づいて制御軸を制御する。制御情報決定部215によって第1の制御情報が決定された場合、制御部217は第1の制御情報に基づいて制御軸を制御する。また、制御情報決定部215によって第2の制御情報が決定された場合、制御部217は第2の制御情報に基づいて制御軸を制御する。
 次に、数値制御装置2が実行する処理の流れについて説明する。
 図5は、数値制御装置2が実行する処理の流れの一例を示すフローチャートである。
 数値制御装置2では、まず、プログラム解析部212が、プログラム記憶部211から加工プログラムを読み込み、読み込んだ加工プログラムを解析する(ステップS1)。
 次に、制御情報決定部215が、制御軸の送り速度を指定する速度指令、または、速度指令から導出される移動指令に基づいて、制御情報記憶部214に記憶された複数の制御情報のうち一の制御情報を決定する(ステップS2)。
 次に、制御情報設定部216が、制御情報決定部215によって決定された一の制御情報を、制御軸を制御するための制御情報に設定する(ステップS3)。
 次に、制御部217が、制御情報決定部215によって設定された一の制御情報に基づいて制御軸を制御し(ステップS4)、処理を終了する。なお、数値制御装置2は、ステップS1~S4の処理を、加工プログラムの各行の実行するごとに、あるいは、所定の周期で繰り返し行うようにしてもよい。
 以上説明したように、数値制御装置2は、工作機械1の制御軸を制御するための複数の制御情報を記憶する制御情報記憶部214と、制御軸の送り速度を指定する速度指令、または、速度指令から導出される移動指令に基づいて、制御情報記憶部214に記憶された複数の制御情報のうち一の制御情報を決定する制御情報決定部215と、制御情報決定部215によって決定された一の制御情報に基づいて制御軸を制御する制御部217と、を備える。
 したがって、数値制御装置は、適切な制御情報に基づいて制御軸の制御を実行することが可能になる。つまり、加工プログラムにおいて位置決め指令G00、および切削送り指令G01を指定する必要がなくなるため、加工プログラムの作成者が意図していた制御情報とは異なる制御情報が設定された状態で加工が行われることを防ぐことができる。また、加工プログラムで指定するコード量を削減することができる。
 上述した実施形態において、移動指令は、位置決め指令、および切削送り指令を含み、導出された移動指令が位置決め指令である場合、制御情報決定部215は位置決め指令に対応する一の制御情報を決定し、導出された移動指令が切削送り指令である場合、制御情報決定部215は切削送り指令に対応する一の制御情報を決定する。したがって、位置決め指令が導出された場合、および切削送り指令が導出された場合のそれぞれにおいて、適切な制御情報が設定される。
 また、複数の制御情報は、それぞれ、ポジションゲイン、フィードフォワード係数、加減速時定数、および、揺動切削のオン/オフを示す情報の少なくともいずれかを含む。したがって、加工精度、およびサイクルタイムなどを考慮して、制御情報に含まれる各情報を設定することができる。
 上述した実施形態では、速度指令は、加工プログラムにおいて指定される。しかし、速度指令は、加工プログラムで指定されるものに限られず、例えば、パラメータ、外部信号、および外部媒体のいずれかによって指定されてもよい。ここで、パラメータとは、数値制御装置2に設定されるパラメータである。外部信号とは、例えば、数値制御装置2に接続されるPLC209、PC(Personal Computer)から入力される信号である。外部媒体とは、例えば、USB(Universal Serial Bus)メモリである。また、制御情報決定部215は、しきい値記憶部213に記憶されたしきい値に代えて、パラメータ、外部信号、および外部媒体に記憶された値のいずれかに基づいて制御情報を決定してもよい。
 上述した実施形態では、制御情報決定部215が、加工プログラムで指定された速度指令としきい値とを比較して、比較結果に基づいて一の制御情報を決定する例について説明した。しかし、制御情報決定部215は、速度指令が切り替えられるときの切替前の速度指令と切替後の速度指令との比、すなわち、速度比としきい値とを比較して制御情報を決定するようにしてもよい。
[規則91に基づく訂正 14.06.2023]
 例えば、加工プログラム中の一の行における速度指令値とそれに続く次の行における速度指令値とが異なる場合、制御情報決定部215は速度比としきい値とを比較する。速度比がしきい値よりも大きい場合、制御情報決定部215は、設定される制御情報として、例えば、図3に示す第1の制御情報を決定する。速度比がしきい値以下である場合、制御情報決定部215は、設定される制御情報として、図3に示す第2の制御情報を決定する。次に、図6を用いて、制御情報決定部215が、速度比としきい値とを比較して制御軸の制御に用いる一の制御情報を決定する具体例について説明する。
 図6は、加工プログラムの一部を示す図である。加工プログラムのシーケンス番号N100の行においてX100F100が指定されている。また、シーケンス番号N200の行においてX80F1500が指定されている。また、しきい値記憶部213には、しきい値1000が記憶されているものとする。
 制御情報決定部215は、シーケンス番号N100の行で指定された速度指令が示す値100とシーケンス番号N200の行で指定された速度指令が示す値1500との比、すなわち、速度比1500/100×100=1500[%]と、しきい値1000[%]とを比較する。この場合、速度比は、しきい値よりも大きい。したがって、制御情報決定部215は、シーケンス番号N100の行からシーケンス番号N200の行に移行するタイミングにおいて制御軸の制御に用いる制御情報を第1の制御情報に決定する。
 上述した実施形態では、第1の制御情報と第2の制御情報に揺動切削機能のオン/オフを示す情報が含まれている。しかし、これは揺動切削機能に限らず、速度指令や速度指令から導出される移動指令によってオン/オフを切り替えるべき機能であればどのような機能であってもよい。例えば、高品位に加工するための補間機能であってもよい。前記補間機能は切削移動指令に対して移動指令点を滑らかに繋ぐように移動経路を補間する機能である。前記補間機能を有効にすると多くの制御コストが必要になる。そのため、送り速度が大きい場合、CPUに大きな負荷がかかる。この場合、前記補間機能が正常に働かなくなる可能性がある。このような場合には、この機能をオフにした方がよい。このように、送り速度に基づいて機能のオン/オフを切り替えるべき機能であればどのような機能であってもよい。
 上述した実施形態では、制御情報決定部215が、制御軸の送り速度を指定する速度指令、または、速度指令から導出される移動指令に基づいて、制御情報記憶部214に記憶された複数の制御情報のうち一の制御情報を決定する。しかし、制御情報決定部215は、さらに、速度指令が切り替えられたときの制御軸の加速時間に基づいて、決定した制御情報を変更してもよい。図7~図9を用いて、制御情報決定部215が、速度指令が切り替えられたときの制御軸の加速時間に基づいて、決定した制御情報を変更する例について説明する。
 図7は、制御情報記憶部214に記憶される制御情報の一例について説明する図である。図8は、加工プログラムの一部を示す図である。図9は、制御軸の加速時間を説明する図である。
 制御情報記憶部214は、第1の制御情報、および第2の制御情報を記憶している。第1の制御情報には、ポジションゲイン、フィードフォワード係数、および加減速時定数が含まれている。第1の制御情報のポジションゲインは、第2の制御情報のポジションゲインよりも小さい値が設定されている。また、第1の制御情報のフィードフォワード係数は、第2の制御情報のフィードフォワード係数よりも小さい値が設定されている。
 第2の制御情報には、ポジションゲイン、フィードフォワード係数、および加減速時定数が含まれている。第2の制御情報のポジションゲインは、第1の制御情報のポジションゲインよりも大きい値が設定されている。また、第2の制御情報のフィードフォワード係数は、第1の制御情報のフィードフォワード係数よりも大きい値が設定されている。
 従来の数値制御装置では、工作機械の機械構成、および制御軸の動作の安全性などを考慮して、制御軸の上限速度がパラメータなどに予め設定される。例えば、位置決め指令G00では最大位置決め速度までの速度指定が可能である。切削送り指令G01では、最大切削送り速度までの速度指定が可能である。また、加減速時定数、また、加速度も予めパラメータなどに設定される。例えば、位置決め指令G00が指定されると、位置決め動作時の加減速時定数または加速度で指定速度まで加速または減速する。また、切削送り指令G01が指定されると、切削送り動作時の加減速時定数または加速度で指定速度まで加速または減速する。
 第1の制御情報では制御軸はF8000までの速度指定を可能とし、第2の制御情報では制御軸はF3000までの速度指定が可能であるものとする。また、第1の制御情報では加減速時定数としてτ1[s]が指定されており、第2の制御情報では加減速時定数としてτ2[s]が指定されているものとする。
 図8に示す例では、加工プログラムにおけるシーケンス番号N100の行においてX100F6000が指定されている。また、シーケンス番号N200の行においてX80F2800が指定されている。また、シーケンス番号N300の行においてX50F1500が指定されている。しきい値記憶部213には、しきい値2500が記憶されているものとする。
 制御情報決定部215は、シーケンス番号N100の行で指定された指令が実行される際に、Fコードで指定された値6000としきい値2500とを比較する。この行においてFコードで指定された送り速度は、しきい値よりも大きい。したがって、制御情報決定部215は、N100の行が実行される場合、制御情報として第1の制御情報を決定する。また、N100の行が実行される場合の加速時間は、τ1[s]となる(図9参照)。
 制御情報決定部215は、シーケンス番号N200の行で指定された指令が実行される際に、Fコードで指定された値2800としきい値2500とを比較する。この行においてFコードで指定された送り速度は、しきい値よりも大きい。したがって、制御情報決定部215は、N200の行が実行される場合、制御情報として第1の制御情報を決定する。
 ここで、Fコードで指定された値2800は、しきい値を越えているため、制御情報決定部215は、制御情報として第1の制御情報を決定した。しかし、第2の制御情報の制御軸の上限速度3000の範囲内に含まれているため、機械構成や制御軸の動作上は第2の制御情報を選択しても問題はない。したがって、制御情報決定部215は、第1の制御情報に基づいて制御軸を制御した場合における制御軸の加速時間と、第2の制御情報に基づいて制御軸を制御した場合における制御軸の加速時間とを比較する。第1の制御情報が設定されている場合、送り速度F2800まで到達するまでの加速時間は、τ1である。一方、第2の制御情報が設定されていると仮定した場合において、制御軸の送り速度がF2800まで到達する時間は、τ1[s]よりも短いτ2[s]となる。
 したがって、制御情報決定部215は、N200の行が実行される場合、一旦決定された第1の制御情報を第2の制御情報に変更する。これにより、加工のサイクルタイムを(τ1-τ2)[s]だけ短縮することができる。
 制御情報決定部215は、シーケンス番号N300の行で指定された指令が実行される際に、Fコードで指定された値1500としきい値2500とを比較する。この行においてFコードで指定された送り速度は、しきい値以下である。したがって、制御情報決定部215は、N300の行が実行される場合、制御情報として第2の制御情報を決定する。
 なお、この具体例では、N200の行が実行される場合に、第1の制御情報に基づいて制御軸を制御した場合における制御軸の加速時間と、第2の制御情報に基づいて制御軸を制御した場合における制御軸の加速時間とを比較する。しかし、この比較は、N100の行が実行される場合、およびN300の行が実行される場合にも行ってもよい。
 また、本実施形態では、第1の制御情報と第2の制御情報に加減速時定数が含まれている。しかし、例えば、切削送り指令G01のように、直線補間において、加減速時定数または加速度の設定によらず、制御軸の移動経路が一意に定まるような場合がある。こういった場合の制御情報は、第1の制御情報、または、第2の制御情報に加速度を含み、加速時間の比較に加速度αを用いてもよい。
 また、この具体例では、第1の制御情報に加減速時定数が含まれ、加速度が含まれないのに対し、第2の制御情報には加減速時定数が含まれず、加速度が含まれる。しかし、第1の制御情報に加減速時定数が含まれず、加速度が含まれるのに対し、第2の制御情報には加減速時定数が含まれ、加速度が含まれないように各制御情報が設定されてもよい。
 また、この具体例では、制御情報決定部215が、加工プログラムで指定された速度指令としきい値とを比較して、比較結果に基づいて制御情報を決定し、その後、制御軸の加速時間に基づいて、決定した制御情報を変更する。しかし、制御情報決定部215は、速度指令が切り替えられるときの切替前の速度指令と切替後の速度指令との比、すなわち、速度比としきい値とを比較して制御情報を決定し、その後、制御軸の加速時間に基づいて、決定した制御情報を変更するようにしてもよい。
 上述した実施形態では、制御軸の送り速度を指定する速度指令、または、速度指令から導出される移動指令に基づいて、制御情報記憶部214に記憶された複数の制御情報のうち一の制御情報を決定する。しかし、数値制御装置2は、従来どおり、制御情報決定部215が、位置決め指令G00が指定された場合に制御情報として第1の制御情報を決定し、切削送り指令G01が指定された場合に制御情報として第2の制御情報を決定するモードを備えていてもよい。すなわち、数値制御装置2は、複数の制御モードを備え、第1のモードでは、制御情報決定部215が、制御軸の送り速度を指定する速度指令、または、速度指令から導出される移動指令に基づいて、制御情報記憶部214に記憶された複数の制御情報のうち一の制御情報を決定するようにしてもよい。また、数値制御装置2は、第2のモードでは、加工プログラムで指定された位置決め指令G00、または切削送り指令G01に基づいて、位置決め指令に対応する一の制御指令、または切削送り指令に対応する一の制御指令を決定するようにしてもよい。
 なお、本開示は上記実施の形態に限られたものではなく、趣旨を逸脱しない範囲で適宜変更することが可能である。本開示では、実施の形態の任意の構成要素の変形、もしくは実施の形態の任意の構成要素の省略が可能である。
  1     工作機械
  2     数値制御装置
  201   CPU
  202   バス
  203   ROM
  204   RAM
  205   不揮発性メモリ
  206   インタフェース
  207   軸制御回路
  208   スピンドル制御回路
  209   PLC
  210   I/Oユニット
  211   プログラム記憶部
  212   プログラム解析部
  213   しきい値記憶部
  214   制御情報記憶部
  215   制御情報決定部
  216   制御情報設定部
  217   制御部
  3     入出力装置
  4     サーボアンプ
  5     サーボモータ
  6     スピンドルアンプ
  61    電流計
  7     スピンドルモータ
  8     補助機器

Claims (8)

  1.  工作機械の制御軸を制御するための複数の制御情報を記憶する制御情報記憶部と、
     前記制御軸の送り速度を指定する速度指令、または、前記速度指令から導出される移動指令に基づいて、前記制御情報記憶部に記憶された前記複数の制御情報のうち一の制御情報を決定する制御情報決定部と、
     前記制御情報決定部によって決定された前記一の制御情報に基づいて前記制御軸を制御する制御部と、
    を備える数値制御装置。
  2.  導出される前記移動指令は、位置決め指令、および切削送り指令を含み、
     導出される前記移動指令が前記位置決め指令である場合、前記制御情報決定部は前記位置決め指令に対応する前記一の制御情報を決定し、
     導出される前記移動指令が前記切削送り指令である場合、前記制御情報決定部は前記切削送り指令に対応する前記一の制御情報を決定する請求項1に記載の数値制御装置。
  3.  導出される前記移動指令は、第1の切削送り指令、および第1の切削送り指令とは異なる第2の切削送り指令を含み、
     導出される前記移動指令が前記第1の切削送り指令である場合、前記制御情報決定部は前記第1の切削送り指令に対応する前記一の制御情報を決定し、
     導出される前記移動指令が前記第2の切削送り指令である場合、前記制御情報決定部は前記第2の切削送り指令に対応する前記一の制御情報を決定する請求項1に記載の数値制御装置。
  4.  導出される前記移動指令は、第1の位置決め指令、および第1の位置決め指令とは異なる第2の位置決め指令を含み、
     導出される前記移動指令が前記第1の位置決め指令である場合、前記制御情報決定部は前記第1の位置決め指令に対応する前記一の制御情報を決定し、
     導出される前記移動指令が前記第2の位置決め指令である場合、前記制御情報決定部は前記第2の位置決め指令に対応する前記一の制御情報を決定する請求項1に記載の数値制御装置。
  5.  前記複数の制御情報は、それぞれ、ポジションゲイン、フィードフォワード係数、加減速時定数、および、機能のオン/オフを示す情報の少なくともいずれかを含む請求項1~4のいずれか1項に記載の数値制御装置。
  6.  前記速度指令は、加工プログラム、パラメータ、外部信号、および外部媒体のいずれかによって指定される請求項1~5のいずれか1項に記載の数値制御装置。
  7.  前記制御情報決定部は、前記速度指令から導出される前記制御軸の加速時間に基づいて、決定した前記一の制御情報を他の制御情報に変更する請求項1~6のいずれか1項に記載の数値制御装置。
  8.  工作機械の制御軸の送り速度を指定する速度指令、または、前記速度指令から導出される移動指令に基づいて、工作機械の制御軸を制御するための複数の制御情報のうち一の制御情報を決定することと、
     決定された前記一の制御情報に基づいて前記制御軸を制御することと、
    をコンピュータに実行させる命令を記憶するコンピュータ読み取り可能な記憶媒体。
PCT/JP2021/018083 2021-05-12 2021-05-12 数値制御装置、およびコンピュータ読み取り可能な記憶媒体 WO2022239155A1 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2023520658A JPWO2022239155A1 (ja) 2021-05-12 2021-05-12
PCT/JP2021/018083 WO2022239155A1 (ja) 2021-05-12 2021-05-12 数値制御装置、およびコンピュータ読み取り可能な記憶媒体
CN202180097798.4A CN117242410A (zh) 2021-05-12 2021-05-12 数值控制装置以及计算机可读取的存储介质
DE112021007207.2T DE112021007207T5 (de) 2021-05-12 2021-05-12 Numerische Steuerung und ein computerlesbares Speichermedium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2021/018083 WO2022239155A1 (ja) 2021-05-12 2021-05-12 数値制御装置、およびコンピュータ読み取り可能な記憶媒体

Publications (2)

Publication Number Publication Date
WO2022239155A1 WO2022239155A1 (ja) 2022-11-17
WO2022239155A9 true WO2022239155A9 (ja) 2023-09-21

Family

ID=84028038

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2021/018083 WO2022239155A1 (ja) 2021-05-12 2021-05-12 数値制御装置、およびコンピュータ読み取り可能な記憶媒体

Country Status (4)

Country Link
JP (1) JPWO2022239155A1 (ja)
CN (1) CN117242410A (ja)
DE (1) DE112021007207T5 (ja)
WO (1) WO2022239155A1 (ja)

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001309678A (ja) * 2000-04-21 2001-11-02 Dyadic Systems Co Ltd サーボモータの駆動制御方法と制御装置
DE112012004962T5 (de) * 2012-02-08 2014-09-25 Mitsubishi Electric Corporation Numerische Steuervorrichtung
JP2019037081A (ja) * 2017-08-18 2019-03-07 株式会社シブヤ 電動工具用発電機
US11131979B2 (en) * 2018-11-29 2021-09-28 Mitsubishi Electric Corporation Numerical control device and numerical control method
JP7405537B2 (ja) * 2019-09-05 2023-12-26 ファナック株式会社 機械学習装置、サーボ制御装置、サーボ制御システム及び機械学習方法

Also Published As

Publication number Publication date
WO2022239155A1 (ja) 2022-11-17
JPWO2022239155A1 (ja) 2022-11-17
DE112021007207T5 (de) 2024-01-11
CN117242410A (zh) 2023-12-15

Similar Documents

Publication Publication Date Title
US7973509B2 (en) Numerical controller having control mode switching function
JP5813058B2 (ja) 複合形固定サイクルの開始点経路短縮機能を有する数値制御装置
US9804583B2 (en) Numerical control device
JP7035875B2 (ja) 数値制御装置、数値制御方法、及び数値制御プログラム
WO2022239155A9 (ja) 数値制御装置、およびコンピュータ読み取り可能な記憶媒体
JP2014026430A (ja) 加工中断時と再開時の状態の違いを表示する機能を有する数値制御装置
US11003161B2 (en) Numerical controller
JPH07136906A (ja) 数値制御装置
US20240012389A1 (en) Numerical controller
JP6298010B2 (ja) 加減速設定自動切換機能を備えた数値制御装置
JP6464135B2 (ja) 数値制御装置
JP4233559B2 (ja) 数値制御工作機械
WO2023058085A1 (ja) 数値制御装置
US20180364681A1 (en) Numerical controller
US20240126241A1 (en) Numerical controller
WO2023203724A1 (ja) 表示装置およびコンピュータ読み取り可能な記憶媒体
WO2023162001A1 (ja) 加工面推定装置およびコンピュータ読み取り可能な記憶媒体
JP6640822B2 (ja) 数値制御装置
JP7448738B1 (ja) 産業機械の制御装置及び制御方法
WO2022186135A1 (ja) 数値制御装置、およびコンピュータ読み取り可能な記憶媒体
WO2023148986A9 (ja) 制御装置、およびコンピュータ読み取り可能な記憶媒体
WO2022186140A1 (ja) 数値制御装置、およびコンピュータ読み取り可能な記憶媒体
US11112774B2 (en) Numerical controller
WO2023276121A1 (ja) 数値制御装置
WO2023199408A1 (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: 21941889

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 2023520658

Country of ref document: JP

WWE Wipo information: entry into national phase

Ref document number: 18289019

Country of ref document: US

WWE Wipo information: entry into national phase

Ref document number: 112021007207

Country of ref document: DE

WWE Wipo information: entry into national phase

Ref document number: 202180097798.4

Country of ref document: CN

122 Ep: pct application non-entry in european phase

Ref document number: 21941889

Country of ref document: EP

Kind code of ref document: A1