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

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

Info

Publication number
WO2022239155A1
WO2022239155A1 PCT/JP2021/018083 JP2021018083W WO2022239155A1 WO 2022239155 A1 WO2022239155 A1 WO 2022239155A1 JP 2021018083 W JP2021018083 W JP 2021018083W WO 2022239155 A1 WO2022239155 A1 WO 2022239155A1
Authority
WO
WIPO (PCT)
Prior art keywords
control information
command
control
determination unit
speed
Prior art date
Application number
PCT/JP2021/018083
Other languages
English (en)
French (fr)
Other versions
WO2022239155A9 (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 US18/289,019 priority Critical patent/US20240219893A1/en
Priority to PCT/JP2021/018083 priority patent/WO2022239155A1/ja
Priority to JP2023520658A priority patent/JPWO2022239155A1/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
    • 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/416Numerical 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 of velocity, acceleration or deceleration
    • G05B19/4166Controlling feed or in-feed
    • 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/402Numerical 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 positioning, e.g. centring a tool relative to a hole in the workpiece, additional detection means to correct position
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/49Nc machine tool, till multiple
    • G05B2219/49077Control of feed and spindle, cutting speed

Definitions

  • the present disclosure relates to numerical controllers and computer-readable storage media.
  • the numerical controller controls each part of the machine tool based on the machining program.
  • control information for controlling the control axis is set based on a code called G code.
  • G code a code that specifies a position gain, feedforward coefficient, and acceleration/deceleration time constant corresponding to the positioning command.
  • a position gain, a feedforward coefficient, and an acceleration/deceleration time constant corresponding to the cutting feed command are set as control information.
  • An object of the present disclosure is to provide a numerical controller capable of executing control of a control axis with appropriate control information set.
  • a numerical control device has a control information storage unit that stores a plurality of pieces of control information for controlling a control axis of a machine tool, a speed command that specifies the feed speed of the control axis, or a movement command derived from the speed command.
  • a control information determination unit that determines one of the plurality of control information stored in the control information storage unit based on the control information; and controls the control axis based on the one control information determined by the control information determination unit. and a control unit.
  • a computer-readable storage medium stores a plurality of pieces of control information for controlling a control axis of a machine tool based on a speed command specifying a feed rate of a control axis of the machine tool or a movement command derived from the speed command. It stores an instruction for causing a computer to determine one of the control information and to control the control axis based on the determined one of the control information.
  • control the control axis with appropriate control information set.
  • FIG. 3 is a block diagram showing an example of functions of a numerical control device;
  • FIG. It is a figure explaining an example of the control information memorize
  • 4 is a flow chart showing an example of the flow of processing executed by a numerical control device; It is a figure which shows a part of machining program. It is a figure explaining an example of the control information memorize
  • FIG. 5 is a diagram illustrating 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.
  • 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 controller 2 is a device that controls the machine tool 1 as a whole.
  • the numerical controller 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 .
  • a CPU Central Processing Unit
  • ROM Read Only Memory
  • RAM Random Access Memory
  • the CPU 201 is a processor that controls the entire numerical controller 2 according to the system program.
  • the CPU 201 reads a system program or the like stored in the ROM 203 via the bus 202 and performs various processes based on the system program. Also, the CPU 201 controls the servo motor 5 and the spindle motor 7 based on the machining program.
  • the CPU 201 analyzes the machining program and outputs control commands to the servo motor 5 and the spindle motor 7 for each control cycle.
  • a bus 202 is a communication path that connects each piece of hardware in the numerical controller 2 to each other. Each piece of hardware within the numerical controller 2 exchanges data via the bus 202 .
  • the ROM 203 is a storage device that stores system programs and the like for controlling the numerical controller 2 as a whole.
  • a ROM 203 is a computer-readable storage medium.
  • the RAM 204 is a storage device that temporarily stores various data.
  • a 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 power is not supplied to the numerical controller 2 .
  • 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 composed of, for example, an SSD (Solid State Drive).
  • the numerical controller 2 further comprises 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 .
  • 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 various data.
  • the input/output device 3 also accepts 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 being supplied with current from the servo amplifier 4 .
  • the servomotor 5 is connected to, for example, a ball screw that drives the tool post.
  • a structure of the machine tool 1 such as the tool post moves in, for example, the X-axis direction, the Y-axis direction, or the Z-axis direction.
  • the servomotor 5 may incorporate a speed detector (not shown) for detecting the feed speed of each control axis.
  • a spindle control circuit 208 is a circuit for controlling the spindle motor 7 .
  • a spindle control circuit 208 receives a control command from the CPU 201 and outputs a command for driving the spindle motor 7 to the spindle amplifier 6 .
  • the spindle control circuit 208 for example, sends a torque command for controlling the torque of the spindle motor 7 to the spindle amplifier 6 .
  • the spindle amplifier 6 receives a command from the spindle control circuit 208 and supplies current to the spindle motor 7 .
  • the spindle amplifier 6 incorporates an ammeter 61 for measuring 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 being supplied with current from the spindle amplifier 6 .
  • a spindle motor 7 is connected to the main shaft and rotates the main shaft.
  • the PLC 209 is a device that executes the ladder program and controls 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 device 8.
  • the I/O unit 210 sends commands received from the PLC 209 to the auxiliary equipment 8 .
  • the auxiliary device 8 is a device that is installed in the machine tool 1 and performs an auxiliary operation in the machine tool 1.
  • the auxiliary equipment 8 may be equipment installed around the machine tool 1 .
  • the auxiliary equipment 8 operates based on commands received from the I/O unit 210 .
  • the auxiliary device 8 is, for example, a tool changer, a cutting fluid injection device, or an opening/closing door drive.
  • 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 functions of the numerical controller 2.
  • the numerical controller 2 includes a program storage unit 211, a program analysis unit 212, a threshold value storage unit 213, a control information storage unit 214, a control information determination unit 215, a control information setting unit 216, and a control unit 217. and
  • the program storage unit 211 is implemented by storing a machining program input from the input/output device 3 or the like in the RAM 204 or the nonvolatile memory 205 .
  • Threshold storage unit 213 and control information storage unit 214 are realized by storing parameters, control information, etc. input from input/output device 3 or the like in RAM 204 or nonvolatile memory 205 .
  • the program analysis unit 212, the control information determination unit 215, the control information setting unit 216, and the control unit 217 are operated by the CPU 201 using the system program stored in the ROM 203 and various data stored in the nonvolatile memory 205. It is realized 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 machine a workpiece.
  • the movement path of the tool, the rotational speed of the spindle, the depth of cut, and the like are specified using G codes, S codes, and the like.
  • the feed rate is specified using an F code. That is, the F code that specifies the feed rate in the machining program is the speed command.
  • the program analysis unit 212 reads the machining program stored in the program storage unit 211 and analyzes the machining program.
  • the program analysis unit 212 analyzes the machining program so that the numerical controller 2 recognizes each command written in the machining program.
  • the threshold storage unit 213 stores one or more thresholds.
  • the threshold stored in threshold storage section 213 is used by control information determination section 215 to determine one piece of control information.
  • the functions of the control information determination unit 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.
  • Control information is information set to move the control axis of the machine tool 1 .
  • a control axis of the machine tool 1 is an axis for moving or rotating a tool or a spindle.
  • Control axes include, for example, three orthogonal axes consisting of 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 having rotation axes 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 (eg, USB (Universal Serial Bus) memory).
  • the control information determination 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 multiple 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 position gain, feedforward coefficient, acceleration/deceleration time constant, and information indicating ON/OFF of the function.
  • the function is a function related to movement of the control axis.
  • a function related to movement of the control axis is executed, for example, during machining of a workpiece.
  • an oscillation cutting function is presented as an example of the function.
  • the first control information and the second control information include the upper limit speed of the control axis, acceleration, on/off of the high-precision cutting function, on/off of the output of the rapid feed signal and the cutting feed signal, respectively. , in-position width, and/or information indicative of the inner radius tolerance of the tool.
  • the position gain is a numerical value that is multiplied by the position deviation, which is the difference between the position command that specifies the position of the control axis and the position feedback value that indicates 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 that indicates the time required for the control axis to transition from the speed specified by the speed command to the stopped state, or from the stopped state to reach the speed specified by the speed command.
  • Oscillation cutting is to make the tool oscillate or vibrate when cutting the workpiece.
  • chips can be finely divided.
  • the swing cutting function is generally turned off during non-cutting times such as when a positioning command is executed.
  • the swing cutting function is often operated with a swing amplitude proportional to the feed speed of the control shaft in order to shred chips.
  • the feed speed is particularly high, if it is operated with a swing amplitude proportional to the feed speed, the swing amplitude becomes large, and as a result, the vibration becomes excessively large. Therefore, when the feed rate is particularly high, it may be desirable to turn off the swing cutting function.
  • FIG. 3 is a diagram illustrating an example of control information stored in the control information storage unit 214. As shown in FIG.
  • 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 ON/OFF of the swing cutting in the first control information is set to OFF.
  • Information indicating ON/OFF of the swing cutting in the second control information is set to ON.
  • the first control information corresponds to, for example, control information that is set when a positioning command is specified in the conventional numerical controller 2 .
  • the second control information corresponds to, for example, control information set when a cutting feed command is specified in the conventional numerical controller 2 .
  • the control information determination unit 215 determines one piece of control information among the plurality of pieces of control information stored in the control information storage unit 214 based on a speed command specifying the feed speed of the control axis.
  • a speed command specifying the feed speed of the control axis is specified by, for example, an F code in the machining program.
  • control information determination unit 215 determines a plurality of pieces of control information stored in the control information storage unit 214. determines which control information to set.
  • the control information determination unit 215 first compares the threshold stored in the threshold storage unit 213 with the feed speed of the control axis specified by the speed command. The control information determination unit 215 determines the control information to be the first control information when the feed speed is greater than the threshold value. On the other hand, the control information determination unit 215 determines the control information to be the second control information when the feed speed is equal to or less than the threshold value.
  • the control information determination unit 215 determines one piece of control information to be used for controlling the control axis will be described with reference to FIG. 4 .
  • FIG. 4 is a diagram showing part of the machining program.
  • X100F5800 is specified in the line of sequence number N100 in the machining program.
  • X80F4800 is specified in the row of sequence number N200. It is also assumed that the threshold value storage unit 213 stores a threshold value of 5000.
  • the control information determination unit 215 compares the value 5800 indicated by the speed command specified in the row of the sequence number N100 with the threshold value 5000. In this case, the feed speed indicated by the speed command specified in the row of sequence number N100 is greater than the threshold value. Therefore, the control information determination unit 215 determines the control information to be the first control information when the line with the sequence number N100 is executed.
  • the control information determination unit 215 compares the value 4800 indicated by the speed command specified in the row of sequence number N200 with the threshold value 5000. In this case, the feed speed indicated by the speed command specified in the row of sequence number N200 is below the threshold value. Therefore, the control information determination unit 215 determines the control information to be the second control information when the line with the sequence number N200 is executed.
  • the control information determination unit 215 determines one of the plurality of control information stored in the control information storage unit 214 based on the movement command derived from the speed command specifying the feed speed of the control axis. good too. That is, when deriving the movement command from the speed command, the control information determination unit 215 compares the threshold value stored in the threshold storage unit 213 with the feed speed specified by the speed command, and the comparison result is Based on this, the movement command is derived.
  • the derived movement commands include, for example, positioning commands and cutting feed commands.
  • the control information determination unit 215 determines that the movement command is the positioning command. That is, the control information determination unit 215 derives the positioning command as the movement command from the speed command designated by the machining program. When the derived movement command is a positioning command, the control information determination unit 215 determines the control information to be the first control information corresponding to the positioning command.
  • the control information determination unit 215 determines that the movement command is the cutting feed command. In other words, the control information determination unit 215 derives the cutting feed command as the movement command from the speed command specified by the machining program. When the derived movement command is a cutting feed command, the control information determination unit 215 determines the control information to be the 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 determination unit 215 determines one piece of control information corresponding to the first cutting feed command, and the derived movement command becomes the second cutting feed command. If it is a command, the control information determination 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. If the derived movement command is the first positioning command, the control information determination 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 determination 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, the feedforward coefficient, the acceleration/deceleration time constant, and the information indicating ON/OFF of the oscillating cutting to, for example, " Set to small value, small value, small value, and off.
  • the control information setting unit 216 sets the position gain, the feedforward coefficient, the acceleration/deceleration time constant, and the information indicating ON/OFF of the oscillating cutting to, for example, " Set to a value greater than, a value greater than a value greater than a value greater than, and on.
  • the “small” value and the “large” value refer to a relatively “small” value and a relatively “large” value when comparing the first control information and the second control information, respectively. ' means the value.
  • the control unit 217 controls the control axis based on 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 unit 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 controller 2.
  • the program analysis unit 212 reads the machining program from the program storage unit 211 and analyzes the read machining program (step S1).
  • control information determination 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 speed 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 one piece of 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 one piece of control information set by the control information determination unit 215 (step S4), and ends the process.
  • the numerical control device 2 may repeat the processing of steps S1 to S4 each time each line of the machining program is executed, or at a predetermined cycle.
  • the numerical controller 2 includes the control information storage unit 214 that stores a plurality of pieces of control information for controlling the control axes of the machine tool 1, the speed command that specifies the feed speed of the control axes, or Based on the movement command derived from the speed command, a control information determination unit 215 that determines one piece of control information among a plurality of pieces of control information stored in the control information storage unit 214; and a control unit 217 that controls the control axis based on one piece of control information.
  • the numerical controller can control the control axis based on the appropriate control information.
  • machining is performed in a state in which control information different from the control information intended by the creator of the machining program is set. can be prevented. Also, the amount of code specified by the machining program can be reduced.
  • the movement command includes a positioning command and a cutting feed command
  • the control information determination unit 215 determines one piece of control information corresponding to the positioning command. If the derived movement command is a cutting feed command, the control information determination unit 215 determines one piece of control information corresponding to the cutting feed command. Therefore, appropriate control information is set when the positioning command is derived and when the cutting feed command is derived.
  • each of the plurality of pieces of control information includes at least one of position gain, feedforward coefficient, acceleration/deceleration time constant, and information indicating ON/OFF of oscillating 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 being specified by the machining program, and may be specified by any one of parameters, external signals, and external media, for example.
  • a parameter is a parameter set in the numerical control device 2 .
  • An external signal is, for example, a signal input from a PLC 209 or PC (Personal Computer) connected to the numerical controller 2 .
  • An external medium is, for example, a USB (Universal Serial Bus) memory.
  • control information determination section 215 determines control information based on one of a parameter, an external signal, and a value stored in an external medium instead of the threshold stored in threshold storage section 213. may
  • control information determination unit 215 compares the speed command specified by the machining program with the threshold value and determines one piece of control information based on the comparison result.
  • 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 the threshold value.
  • control information determination unit 215 compares the speed ratio with a threshold value. If the speed ratio is greater than the threshold, control information determining section 215 determines, for example, the first control information shown in FIG. 3 as the control information to be set. If the speed ratio is equal to or less than the threshold, control information determining section 215 determines the second control information shown in FIG. 3 as the control information to be set.
  • control information determination unit 215 determines one piece of control information to be used for controlling the control axis by comparing the speed ratio and the threshold.
  • FIG. 6 is a diagram showing part of the machining program.
  • X100F100 is specified in the line of sequence number N100 in the machining program.
  • X80F1500 is specified in the row of sequence number N200. It is also assumed that the threshold value storage unit 213 stores a threshold value of 1000.
  • the first control information and the second control information contain information indicating ON/OFF of the swing cutting function.
  • this is not limited to the oscillating cutting function, and may be any function that should be switched on/off by 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 with respect to a cutting movement command. Enabling the interpolation function requires a lot of control cost. Therefore, when the feed speed is high, a large load is applied to 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 switched on/off based on the feed speed.
  • the control information determination unit 215 selects a plurality of control signals stored in the control information storage unit 214 based on a speed command specifying the feed speed of the control axis or a movement command derived from the speed command. One piece of control information is determined from the information. However, the control information determination 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.
  • FIG. 7 is a diagram illustrating an example of control information stored in the control information storage unit 214. As shown in FIG. FIG. 8 is a diagram showing part of the machining program. FIG. 9 is a diagram for explaining 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 position gain, feedforward coefficient, and 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 position gain, feedforward coefficient, and 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 parameters in advance, taking into consideration the mechanical configuration of the machine tool and the safety of the operation of the control axis.
  • the positioning command G00 can specify a speed up to the maximum positioning speed.
  • the cutting feed command G01 can specify a speed up to the maximum cutting feed speed.
  • the acceleration/deceleration time constant and acceleration are also set as parameters in advance. For example, when a positioning command G00 is designated, the motor is accelerated or decelerated to a designated speed with the acceleration/deceleration time constant or acceleration during the positioning operation. Also, when the cutting feed command G01 is specified, the cutting feed operation is accelerated or decelerated to the specified speed by the acceleration/deceleration time constant or acceleration.
  • the first control information allows the control axis to specify a speed up to F8000
  • the second control information allows the control axis to specify a speed up to F3000. It is also assumed that the first control information designates ⁇ 1 [s] as the acceleration/deceleration time constant, and the second control information designates ⁇ 2 [s] as the acceleration/deceleration time constant.
  • X100F6000 is specified in the line of sequence number N100 in the machining program.
  • X80F2800 is specified in the row of sequence number N200.
  • X50F1500 is specified in the row of sequence number N300. It is assumed that threshold 2500 is stored in threshold storage unit 213 .
  • the control information determination unit 215 compares the value 6000 specified by the F code with the threshold value 2500 when the command specified in the row of sequence number N100 is executed. The feedrate specified by the F code in this line is greater than the threshold. Therefore, the control information determination unit 215 determines the first control information as the control information when the line N100 is executed. Also, the acceleration time when line N100 is executed is ⁇ 1 [s] (see FIG. 9).
  • the control information determination unit 215 compares the value 2800 specified by the F code with the threshold value 2500 when the command specified in the row of 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 the line N200 is executed.
  • the control information determination unit 215 since the value 2800 specified by the F code exceeds the threshold value, the control information determination unit 215 has determined the first control information as the control information. However, since it is within the range of the upper limit speed 3000 of the control axis of the second control information, there is no problem even if the second control information is selected in terms of the machine configuration and the operation of the control axis. Therefore, the control information determination 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 to reach the feed speed F2800 is ⁇ 1. On the other hand, assuming that the second control information is set, the time required for the feed speed of the control axis to reach F2800 is ⁇ 2 [s], which is shorter than ⁇ 1 [s].
  • the control information determination 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 determination unit 215 compares the value 1500 specified by the F code with the threshold value 2500 when the command specified in the row of sequence number N300 is executed. The feedrate specified by the F code in this line is below the threshold. Therefore, the control information determination unit 215 determines the second control information as the control information when the 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 control axis based on the second control information are Compare with the acceleration time of the control axis under control.
  • this comparison may also be made when N100 lines are executed and when N300 lines are executed.
  • the acceleration/deceleration time constant is included in the first control information and the second control information.
  • the control information may include the acceleration in the first control information or the second control information, and use the acceleration ⁇ to compare the 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 the acceleration/deceleration time constant and includes the acceleration
  • the second control information includes the acceleration/deceleration time constant and does not include the acceleration. may be set.
  • control information determination 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 between the speed command before switching and the speed command after switching when the speed command is switched, that is, the speed ratio and the threshold value. , the determined control information may be changed based on the acceleration time of the control axis.
  • one of the plurality of pieces of control information stored in the control information storage unit 214 is based on a speed command specifying the feed speed of the control axis or a movement command derived from the speed command. to decide.
  • the control information determination unit 215 determines the first control information as control information when the positioning command G00 is specified, and controls when the cutting feed command G01 is specified, as in the conventional case.
  • a mode for determining the second control information may be provided as the information. That is, the numerical control device 2 has a plurality of control modes. In the first mode, the control information determination unit 215 determines the speed command specifying the feed speed of the control axis or the 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.
  • the numerical controller 2 responds to one control command or cutting feed command corresponding to the positioning command based on the positioning command G00 or the cutting feed command G01 specified by the machining program.
  • One control command may be determined.
  • machine tool 2 numerical controller 201 CPU 202 bus 203 ROM 204 RAMs 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は、速度指令が切り替えられるときの切替前の速度指令と切替後の速度指令との比、すなわち、速度比としきい値とを比較して制御情報を決定するようにしてもよい。
 例えば、加工プログラム中の一の行における速度指令値とそれに続く次の行における速度指令値とが異なる、制御情報決定部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 (5)

Application Number Priority Date Filing Date Title
US18/289,019 US20240219893A1 (en) 2021-05-12 2021-05-12 Numerical control device and computer-readable storage medium
PCT/JP2021/018083 WO2022239155A1 (ja) 2021-05-12 2021-05-12 数値制御装置、およびコンピュータ読み取り可能な記憶媒体
JP2023520658A JPWO2022239155A1 (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 true WO2022239155A1 (ja) 2022-11-17
WO2022239155A9 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 (5)

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

Citations (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 サーボモータの駆動制御方法と制御装置
JP5240412B1 (ja) * 2012-02-08 2013-07-17 三菱電機株式会社 数値制御装置
JP2019037081A (ja) * 2017-08-18 2019-03-07 株式会社シブヤ 電動工具用発電機
JP6740483B1 (ja) * 2018-11-29 2020-08-12 三菱電機株式会社 数値制御装置および数値制御方法
JP2021039648A (ja) * 2019-09-05 2021-03-11 ファナック株式会社 機械学習装置、サーボ制御装置、サーボ制御システム及び機械学習方法

Patent Citations (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 サーボモータの駆動制御方法と制御装置
JP5240412B1 (ja) * 2012-02-08 2013-07-17 三菱電機株式会社 数値制御装置
JP2019037081A (ja) * 2017-08-18 2019-03-07 株式会社シブヤ 電動工具用発電機
JP6740483B1 (ja) * 2018-11-29 2020-08-12 三菱電機株式会社 数値制御装置および数値制御方法
JP2021039648A (ja) * 2019-09-05 2021-03-11 ファナック株式会社 機械学習装置、サーボ制御装置、サーボ制御システム及び機械学習方法

Also Published As

Publication number Publication date
DE112021007207T5 (de) 2024-01-11
JPWO2022239155A1 (ja) 2022-11-17
WO2022239155A9 (ja) 2023-09-21
US20240219893A1 (en) 2024-07-04
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
WO2022239155A1 (ja) 数値制御装置、およびコンピュータ読み取り可能な記憶媒体
JP2020013433A (ja) 数値制御装置、数値制御方法、及び数値制御プログラム
JP2014026430A (ja) 加工中断時と再開時の状態の違いを表示する機能を有する数値制御装置
JP7518212B2 (ja) 数値制御装置
JP6464135B2 (ja) 数値制御装置
JP2020064359A (ja) 数値制御装置
US10564630B2 (en) Numerical controller
JPS62246408A (ja) 深穴ドリルサイクル制御方式
JP7534526B2 (ja) 数値制御装置、およびコンピュータ読み取り可能な記憶媒体
WO2024189813A1 (ja) 数値制御装置およびコンピュータ読み取り可能な記憶媒体
WO2023058085A1 (ja) 数値制御装置
WO2023162001A1 (ja) 加工面推定装置およびコンピュータ読み取り可能な記憶媒体
WO2022186135A1 (ja) 数値制御装置、およびコンピュータ読み取り可能な記憶媒体
CN109884982B (zh) 数值控制装置
US20240126241A1 (en) Numerical controller
WO2024214301A1 (ja) 指令生成装置およびコンピュータ読み取り可能な記憶媒体
US20240272619A1 (en) Numerical control device
WO2023148986A1 (ja) 制御装置、およびコンピュータ読み取り可能な記憶媒体
WO2023228356A1 (ja) 数値制御装置およびコンピュータ読み取り可能な記憶媒体
WO2023079589A1 (ja) 制御装置及びコンピュータ読み取り可能な記録媒体
WO2022244072A1 (ja) 数値制御装置及びコンピュータ読み取り可能な記憶媒体
JPH044405A (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