CN111103845B - Numerical controller, and control method for numerical controller - Google Patents

Numerical controller, and control method for numerical controller Download PDF

Info

Publication number
CN111103845B
CN111103845B CN201911024534.7A CN201911024534A CN111103845B CN 111103845 B CN111103845 B CN 111103845B CN 201911024534 A CN201911024534 A CN 201911024534A CN 111103845 B CN111103845 B CN 111103845B
Authority
CN
China
Prior art keywords
tool
feed motor
movement control
axis
movement
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201911024534.7A
Other languages
Chinese (zh)
Other versions
CN111103845A (en
Inventor
久留美贤祐
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Brother Industries Ltd
Original Assignee
Brother Industries Ltd
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 Brother Industries Ltd filed Critical Brother Industries Ltd
Publication of CN111103845A publication Critical patent/CN111103845A/en
Application granted granted Critical
Publication of CN111103845B publication Critical patent/CN111103845B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/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
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/35Nc in input of data, input till input file format
    • G05B2219/35349Display part, programmed locus and tool path, traject, dynamic locus

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

The present invention relates to a numerical controller and a control method for the numerical controller. The CPU of the numerical control device executes: rapidly moving the tool which has finished cutting processing upwards along the Z axis; a Z-axis deceleration process for decelerating and stopping the tool moving rapidly; a Z-axis reverse movement process for moving the stopped tool in a reverse direction; and an XY-axis movement process for retracting the table in which the cutting process has been completed. The CPU determines whether a predetermined condition that the first time is longer than the second time is satisfied. The first time is a time required from the start timing of the Z-axis deceleration processing to the end timing of the Z-axis reverse movement processing. The second time is a time required from the start timing of the Z-axis deceleration processing to the end timing of the XY-axis movement processing. When a predetermined condition is satisfied, the CPU starts the Z-axis deceleration processing before the XY-axis movement processing.

Description

Numerical controller, and control method for numerical controller
Technical Field
The present invention relates to a numerical controller and a control method for the numerical controller.
Background
There is known a numerical controller that performs inertial movement (i.e., coasting) by moving a moving spindle head over a return position that is a target position for stopping. The numerical controller disclosed in japanese patent laid-open No. 2009-237929 drives a Z-axis motor to rapidly move a spindle head from each cutting operation completion position to a return position. When the spindle head reaches a position within a home position (in-position) width with reference to the return position, the numerical controller decelerates the Z-axis motor and controls at least one of the X-axis motor and the Y-axis motor to start the positioning operation of the table. The main spindle head moves beyond the return position and stops in accordance with the deceleration operation of the Z-axis motor. After the spindle head stops, the numerical controller obtains an inertial movement distance of the inertial movement of the spindle head after the spindle head passes the return position. The numerical controller controls the Z-axis motor to move the main spindle head in the reverse direction by the acquired inertial movement distance.
However, when the execution positions of the respective cutting operations are close, the moving distance of the table at the time of the positioning operation is short. Therefore, the timing of completion of the backward movement of the spindle head is later than the timing of completion of the positioning operation of the table. When the distance from the completion position of the cutting operation to the return position in the Z-axis direction is long, the acceleration time becomes long and the speed of passing over the return position becomes fast when the acceleration is fixed. When the speed of passing the return position is fast, the inertial movement distance becomes long, and the timing of completion of the reverse movement of the spindle head becomes late. Therefore, the cycle time for processing the workpiece may be lengthened.
Disclosure of Invention
The invention aims to provide a numerical controller and a control method of the numerical controller, which can inhibit the increase of the cycle time of workpiece processing.
The numerical controller according to claim 1 is characterized by comprising: a control unit that instructs a first feed motor and a second feed motor different from the first feed motor, which are provided in a machine tool, respectively, to machine a workpiece with a tool that is moved by the first feed motor, based on a machining program that includes a first positioning command including a return position of the tool and a second positioning command for positioning the tool or the workpiece to a commanded position by the second feed motor; and a position information output unit that outputs information indicating a position of the tool, wherein the control unit includes: a first movement control unit that controls the first feed motor to move the tool toward the return position at a speed based on the first positioning command; a second movement control unit that, when receiving arrival information from the position information output unit, the arrival information indicating that the tool moved by the first movement control unit has reached a first position on the workpiece side relative to the return position, controls the second feed motor based on the second positioning command so as to start movement of the tool or the workpiece, and controls the first feed motor so as to stop the tool at a position beyond the return position; and a reverse movement control unit that controls the first feed motor to reversely move the tool stopped after having passed the return position by the second movement control unit, from the stopped position to the return position, the numerical controller further including: a first time calculation unit that calculates a first time required from a start timing at which the second movement control unit starts decelerating the first feed motor to a time at which the reverse movement control unit stops the tool at the return position; a second time calculation unit that calculates a second time required from when the second movement control unit starts movement of the tool or the workpiece by the second feed motor to when the tool or the workpiece stops at the command position; a determination unit that determines whether or not a predetermined condition is satisfied while the first movement control unit controls the first feed motor, the predetermined condition being that the first time calculated by the first time calculation unit is equal to or longer than the second time calculated by the second time calculation unit; and a third movement control unit that decelerates the first feed motor at a predetermined deceleration when the determination unit determines that the predetermined condition is satisfied. According to the above configuration, when the predetermined condition is satisfied, the third movement control unit starts decelerating the tool. The timing of completion of the control by the third movement control section is not likely to be later than the timing of stopping the tool or the workpiece that is moved by driving the second feed motor based on the second positioning command. Therefore, the numerical controller can suppress an increase in cycle time of workpiece machining.
The numerical controller according to claim 2 may further include a fourth movement control unit that controls the first feed motor not to be decelerated when the determination unit determines that the predetermined condition is not satisfied. When the predetermined condition is not satisfied, the fourth movement control unit controls the first feed motor so as not to decelerate the first feed motor, so that the reverse movement control unit increases the movement distance of the tool, the first time easily increases, and the timing of satisfaction of the predetermined condition is advanced. Therefore, the numerical controller can suppress an increase in cycle time of workpiece machining.
The first position of the numerical controller according to claim 3 can be regarded as the same position as the return position. Since the first position is closer to the workpiece than the return position and can be regarded as the same as the return position, the second movement control unit advances the timing of receiving the arrival information, and the third movement control unit advances the control start timing of the first feed motor. Also, the following problems do not exist: the tool or the workpiece moved by the second feed motor strikes against a component of the machine tool or the like.
A method of controlling a numerical controller according to claim 4, the numerical controller being configured to instruct a first feed motor and a second feed motor different from the first feed motor, which are provided in a machine tool, respectively, to machine a workpiece with a tool moved by the first feed motor, based on a machining program including a first positioning command including a return position of the tool and a second positioning command for positioning the tool or the workpiece to a command position by the second feed motor, the numerical controller including a position information output unit that outputs information indicating a position of the tool, the method comprising: a first movement control step of controlling the first feed motor of the numerical controller to move the tool toward the return position at a speed based on the first positioning command; a second movement control step of controlling the second feed motor based on the second positioning command so as to start movement of the tool or the workpiece and controlling the first feed motor so as to stop the tool at a position beyond the return position when arrival information, which is information indicating that the tool moved by the first movement control step has reached a first position on the workpiece side of the return position, is received from the position information output unit; and a reverse movement control step of controlling the first feed motor to reversely move the tool stopped after passing the return position by the second movement control step from the stopped position to the return position, the control method of the numerical controller further including the steps of: a first time calculation step of calculating a first time which is a time required from a start timing at which the first feed motor starts decelerating in the second movement control step to a time at which the tool is stopped at the return position by the reverse movement control step; a second time calculation step of calculating a second time required from start of movement of the tool or the workpiece by the second movement control step using the second feed motor to stop at the command position; a determination step of determining whether or not a predetermined condition is satisfied while the first feed motor is controlled by the first movement control step, the predetermined condition being that the first time calculated by the first time calculation step is equal to or longer than the second time calculated by the second time calculation step; and a third movement control step of decelerating the first feed motor at a predetermined deceleration when it is determined in the determination step that the predetermined condition is satisfied. The control method of the numerical controller achieves the same effects as those of the numerical controller described above.
Drawings
Fig. 1 is a block diagram showing the electrical configurations of the numerical controller 1 and the machine tool 5.
Fig. 2 is an explanatory diagram of the cutting feed operation and the positioning operation of the tool.
Fig. 3 is a velocity waveform diagram of fig. 2.
Fig. 4 is a flowchart of the main process.
Fig. 5 is a flowchart of the main process following fig. 4.
Fig. 6 is a velocity waveform chart when a predetermined condition is satisfied.
Fig. 7 is a velocity waveform diagram when the predetermined condition is not satisfied.
Detailed Description
A numerical controller 1 as an example of an embodiment of the present invention will be described. The numerical controller 1 is housed in a control box provided in the machine tool 5, for example. The numerical controller 1 is a device that controls the operation of the machine tool 5. The numerical controller 1 reads an NC program (machining program) and outputs various control commands to the machine tool 5. Based on a control command output from the numerical controller 1, the machine tool 5 rotates a tool to perform cutting processing on a workpiece. As an example, the cutting process is a drilling process in which a tool is moved in the vertical direction.
As shown in fig. 1, the machine tool 5 includes an X-axis motor 51, an X-axis drive unit 61, a Y-axis motor 52, a Y-axis drive unit 62, a Z-axis motor 53, a spindle head, a Z-axis drive unit 63, a spindle motor 54, a spindle 64, a tool magazine motor 55, a tool magazine 65, and the like.
The X-axis motor 51 drives the X-axis driving unit 61. The Y-axis motor 52 drives a Y-axis drive section 62. The Z-axis motor 53 drives the Z-axis drive section 63. A spindle 64 is provided in the spindle head. Spindle 64 is used to mount a tool. The X-axis drive unit 61, the Y-axis drive unit 62, and the Z-axis drive unit 63 are ball screw shafts. The table on which the workpiece is placed is moved in the X-direction and the Y-direction by the drive of the X-axis drive unit 61 and the Y-axis drive unit 62. The X direction and the Y direction are horizontal directions orthogonal to each other. Hereinafter, the X direction and the Y direction are collectively referred to as the XY direction. The Z-axis drive unit 63 drives the main spindle head to move in the Z direction integrally with the main spindle 64. The Z direction is the up-down direction. The X-axis motor 51, the Y-axis motor 52, and the Z-axis motor 53 are driven, and the tool moves relative to the workpiece in the X direction, the Y direction, and the Z direction integrally with the spindle 64 and the spindle head. Therefore, the machine tool 5 performs cutting processing on the workpiece.
The X-axis motor 51, the Y-axis motor 52, and the Z-axis motor 53 include encoders 51A to 53A. The encoders 51A to 53A detect the positions of the respective driving units in the X direction, the Y direction, and the Z direction. Hereinafter, the X-axis motor 51 and the Y-axis motor 52 are collectively referred to as an XY motor, the X-axis motor 51, the Y-axis motor 52, and the Z-axis motor 53 are collectively referred to as a motor 50, and the encoders 51A to 53A are collectively referred to as an encoder 50A.
The spindle motor 54 drives a spindle 64. When the spindle 64 is driven, the tool rotates. The spindle motor 54 includes an encoder 54A. The encoder 54A detects the rotational position of the spindle 64. The tool magazine motor 55 drives the tool magazine 65. The tool magazine motor 55 includes an encoder 55A. The encoder 55A detects the drive position of the tool magazine 65.
The configuration of the numerical controller 1 will be described. The numerical controller 1 includes a CPU 31. The CPU 31 manages the operation of the numerical controller 1. The CPU 31 is electrically connected to the ROM 32, the RAM 33, the storage device 34, the servo amplifiers 41 to 45, and the input/output interface 46. The ROM 32 stores various programs such as a program for executing a main process (see fig. 4 and 5) described later. Various programs may be stored in a nonvolatile storage device or the like as a computer-readable storage medium. The storage device 34 is nonvolatile and stores various information.
The RAM 33 temporarily stores various information along with execution of various programs. The RAM 33 stores control commands and the like included in the machining program. The machining program describes the operation of the machine tool 5 as control commands in a predetermined program language in the order of operation. The control instructions of the machining program comprise a first positioning instruction and a second positioning instruction. The first positioning command is a command for retracting the tool after the drilling process is performed in the Z direction and positioning the tool at the return position. The return position is a position above the position where the hole forming process is performed. The second positioning command is a command for positioning the stage, which has performed the hole drilling process, to a commanded position. The commanded position may be an XY-direction position at which other drilling is performed, or an XY-direction position retracted from the position at which drilling is performed.
The servo amplifier 41 is electrically connected to the X-axis motor 51. The servo amplifier 42 is electrically connected to the Y-axis motor 52. The servo amplifier 43 is electrically connected to the Z-axis motor 53. Hereinafter, the servo amplifiers 41 to 43 will be collectively referred to as a servo amplifier 40. The servo amplifier 40 outputs the detection result of the encoder 50A to the CPU 31. The CPU 31 outputs a current command based on the control command to the servo amplifier 40, and the servo amplifier 40 acquires the detection result of the encoder 50A to drive and control the motor 50. The servo amplifier 44 is electrically connected to the spindle motor 54. The servo amplifier 45 is electrically connected to the tool magazine motor 55. The CPU 31 outputs a current command based on the control command to the servo amplifiers 44 and 45, and the servo amplifiers 44 and 45 acquire the detection results of the encoders 54A and 55A to drive and control the spindle motor 54 and the tool magazine motor 55.
The input/output interface 46 is electrically connected to the power switching unit 71, the operation unit 73, and the display unit 77. The power switching unit 71 and the operation unit 73 can be operated by an operator, and are provided on an outer wall of the machine tool 5. The power switching unit 71 detects an instruction for switching the power of the machine tool 5 between on and off, and the operation unit 73 detects various instructions. The CPU 31 acquires the detection results of the power switching unit 71 and the operation unit 73 via the input/output interface 46. The display unit 77 displays various information. The CPU 31 displays the information on the display section 77 via the input-output interface 46.
The positioning operation of the tool and the table will be described in brief with reference to fig. 2 and 3. After the drilling is performed, the CPU 31 controls the driving of the motor 50 based on the first positioning command and the second positioning command, and the machine tool 5 performs the positioning operation of the tool and the table. After the positioning operation is completed, the machine tool 5 may execute the next drilling operation or may execute other operations such as an operation of returning to a standby state before the machining operation.
When the positioning operation is performed, the CPU 31 performs a Z-axis elevation fast movement process, a Z-axis deceleration process, a Z-axis reverse movement process, and an XY-axis movement process. In fig. 2 and 3, an arrow (see fig. 2) and a line (see fig. 3) indicated by a symbol b correspond to the Z-axis fast-moving process and the Z-axis decelerating process, an arrow and a line indicated by a symbol d correspond to the Z-axis reverse-moving process, and an arrow and a line indicated by a symbol c correspond to the XY-direction axis moving process.
The Z-axis up fast movement process will be described. After the tool is driven by the Z-axis motor 53 to perform the cutting feed in the Z direction (arrow and line segment shown by symbol a in fig. 2 and 3), the CPU 31 executes the Z-axis ascent fast movement process to drive and control the Z-axis motor 53. In the Z-axis raising fast movement process, the machine tool 5 moves the tool upward fast from the cutting feed completion position (point R in fig. 2). The speed of the tool at the time of the fast movement is based on the command speed of the first positioning command. Based on the first positioning command, the tool is raised at an increased speed up to t1 in fig. 3. the speed of the tool at t1 is a speed V m . Velocity V m According to the distance from the completion position of the cutting feed to the return position. When the distance is sufficiently long, the speed V m For commanding speed, the tool maintains speed V m And rises to ground (i.e., without slowing down). t1 represents the deceleration start timing when stopping at the return position without performing inertial movement (described later) based on the control command (the same applies to fig. 6 and 7).
The Z-axis deceleration processing will be described. Maintaining the speed V during the execution of the fast movement process of the tool along with the Z-axis elevation m After ground rise, CPUThe Z-axis deceleration process is executed by the controller 31, and the drive of the Z-axis motor 53 is controlled. In the Z-axis deceleration process, the tool starts decelerating at a predetermined deceleration (hereinafter, referred to as a predetermined acceleration a). When the tool is stopped after inertial movement beyond the return position, the deceleration start timing (t 2 in fig. 3) which is the start timing of deceleration of the tool changes depending on whether or not a predetermined condition described later is satisfied (see fig. 6 and 7). When the speed of the tool becomes 0, the Z-axis deceleration processing is ended. The stop position (point V in fig. 2) of the tool is located above the return position (P1). That is, the tool moves over the return position and stops after inertia. The area of the hatched triangle indicated by reference Q in fig. 3 is the moving distance from the position where the tool starts decelerating at t1 to the return position. The area of the hatched parallelogram indicated by the symbol S is the moving distance (inertial moving distance, L in fig. 2) from the return position to the position where the tool has stopped after passing the return position.
The Z-axis reverse movement process will be described. After the tool is stopped in association with the execution of the Z-axis deceleration process, the CPU 31 executes the Z-axis backward movement process to drive and control the Z-axis motor 53. Specifically, the CPU 31 controls the Z-axis motor 53 to move the tool downward in the reverse direction by the inertial movement distance. At the timing when the tool reaches the return position, the CPU 31 stops driving the Z-axis motor 53. Thus, the machine tool 5 positions the tool in the return position (point q of fig. 2).
The XY axis movement process will be described. The CPU 31 executes the XY-axis movement process based on the second positioning command and controls the driving of the XY motor in accordance with the execution of the Z-axis deceleration process. At the timing when the speed of the table becomes 0, the CPU 31 stops driving the XY motor, and the table stops at the next processing position.
The arrow (see fig. 2) and the line (see fig. 3) indicated by the mark e indicate the positioning operation of the tool (the positioning command after the second positioning command) after the positioning operation of the tool and the table is completed. The arrow and the line segment indicated by the symbol f indicate the boring operation (cutting feed) by the cutter, and are the same as the arrow and the line segment indicated by the symbol a.
Various relationships established when the machine tool 5 performs the positioning operation of the tool and the table will be described with reference to fig. 3Is represented by the following formula. The first time T shown in FIG. 3 1 Is the time required from the start timing of the Z-axis deceleration process to the end timing of the Z-axis reverse movement process. First time T 1 Is obtained by the formula (A).
[ equation 1 ]
Figure BDA0002248255930000081
A in the formula (A) is a predetermined acceleration, P m Is the current position of the tool in the Z direction, and Ps is the return position of the tool in the Z direction. The predetermined acceleration a is stored in the storage device 34 in advance. V m The speed at the start timing of deceleration is changed according to the distance from the completion position to the return position of the cutting feed.
A second time T 2 Is the time required from the start timing of the Z-axis deceleration process to the end timing of the XY-axis movement process. A second time T 2 Is obtained by the formula (B).
T 2 =T A +T xy … type (B)
T of the formula (B) A Is the time required from the start timing of the Z-axis deceleration processing to the start timing of the XY-axis movement processing. T is xy The time required for the XY-axis movement process (the time from the start of movement of the table to the stop thereof) is shown. T is A Is obtained by the formula (C).
[ equation 2 ]
Figure BDA0002248255930000091
I in formula (C) represents the seating width. The seating width of this example is a range that can be tolerated to be the same as the return position, which is the positioning target of the tool in the Z direction. The bit width indicates the precision required to position the tool in the return position. The seating width in this example is located below (i.e., on the workpiece side) the return position. W shown in fig. 2 corresponds to the seating width. Hereinafter, the Z-direction position that is the lower end of the seating width is referred to as a first position (point P2 in fig. 2). The first position can be considered to be the same as the return position. The seating width is a prescribed value and is stored in the storage device 34 in advance.
T xy Is obtained by the formula (D).
T xy =(L xy /a xy ) 1/2 … type (D)
L of the formula (D) xy Is the moving distance of the table in the XY direction, a xy Representing the acceleration of the table in the XY direction. L is a radical of an alcohol xy Is determined based on the machining program, a xy Is a predetermined value and is stored in the storage device 34 in advance.
Illustrating a first time T 1 Is a second time T 2 When the above condition (hereinafter referred to as a predetermined condition) is satisfied. At T1 of FIG. 3, a first time T 1 Less than the second time T 2 When the time (i.e., when the predetermined condition is not satisfied), the inertia movement distance becomes long and the tool holding speed V becomes high m Further continues the amount of movement, thereby a first time T 1 And is increased. P is m Increasing the amount of tool further on, thus the time T A And (4) reducing. Thus, during the continued movement of the tool, a first time T 1 And a second time T 2 The magnitude relationship therebetween is reversed, and the predetermined condition is satisfied. In the present embodiment, the numerical controller 1 determines whether or not the predetermined condition is satisfied at a predetermined cycle, when the arrival of the timing (t 1 in fig. 3) at which the tool stops without exceeding the return position to start deceleration is triggered. For example, the predetermined period is a very short period of about 2ms once. Therefore, immediately following the first time T 1 And a second time T 2 After the magnitude relation between the two is reversed, the CPU 31 determines that the predetermined condition is satisfied. I.e. at a first time T 1 And a second time T 2 At the same timing, the CPU 31 determines that the predetermined condition is satisfied.
When the predetermined condition is satisfied, the timing of ending the Z-axis backward movement processing is after the timing of ending the XY-axis movement processing. That is, the timing of ending the positioning operation of the tool may be later than the timing of ending the positioning operation of the table. Therefore, in the main process described later,when a predetermined condition is satisfied in the quick movement process with the Z-axis elevation of the tool, the Z-axis deceleration process is started before the XY-direction axis movement process. Furthermore, if the first time T is 1 And a second time T 2 Similarly, the timing of ending the positioning operation of the tool is substantially the same as the timing of ending the positioning operation of the table.
The main processing is described with reference to fig. 4 to 7. The flow chart of fig. 4 is an illustration after the (n-1) th control command has been executed in accordance with the cut movement command. The CPU 31 rewrites n, which is a count value not shown in the drawing, to 1 (S10). The CPU 31 reads and interprets the nth control command, the (n + 1) th control command, and the (n + 2) th control command included in the machining program (S11). The CPU 31 determines whether or not the nth control command is a control command indicating the end of the program (S13). When the nth control command is a control command indicating the end of the program (S13: YES), the CPU 31 ends the main processing. When the nth control command is not a control command indicating the end of the program (S13: NO), the CPU 31 determines whether the (n + 1) th control command is an XY-axis movement command and the (n + 2) th control command is a Z-axis positioning command (S15). When the determination result of S15 is negative (S15: no), the CPU 31 shifts the process to S19. If the determination result at S15 is yes (S15: yes), the CPU 31 determines whether the nth control command (i.e., the present control command) indicates the Z-axis up fast movement command (S17). When the nth control command is not the Z-axis ascent fast movement command (S17: NO), the CPU 31 executes the nth control command (S19). Specifically, the CPU 31 controls the driving of any one of the motor 50, the spindle motor 54, and the tool magazine motor 55 based on the nth control command. The CPU 31 increments n by 1(S21), and proceeds to S11.
When the nth control command is the Z-axis fast-movement-up command (S17: yes), the CPU 31 starts the Z-axis fast-movement-up process (S31). The CPU 31 controls the driving of the Z-axis motor 53, and moves the tool upward at an increased speed from the finish position of the cutting feed.
The CPU 31 determines whether the deceleration start timing based on the first positioning instruction has come based on the detection result of the encoder 53A (S33). The deceleration start timing is a timing for starting deceleration in order to stop the tool without exceeding the return position, and is determined by the CPU 31 based on the moving distance of the first positioning command and the detection result of the encoder 53A. When determining that the deceleration start timing has not come (S33: NO), the CPU 31 shifts the process to S35.
When determining that the deceleration start time has come (S33: yes), the CPU 31 calculates the first time T based on the predetermined value stored in the storage device 34, the formula (a), and the detection result of the encoder 53A 1 (S36), and calculates the second time T based on the predetermined value stored in the storage device 34, the expressions (B) to (D), and the detection result of the encoder 50A 2 (S37). The CPU 31 determines whether the prescribed condition is established based on the first time calculated through S36 and the second time calculated through S37 (S38). When the predetermined condition is not satisfied (S38: "NO"), the CPU 31 controls the driving of the Z-axis motor 53 to maintain the speed V m The cutter is rapidly moved upward (S39).
The CPU 31 determines whether the tool has entered the seating width based on the detection result of the encoder 53A (S41). The CPU 31 determines whether the current position of the tool is between the first position and the return position based on the detection result of the encoder 53A. When the tool has not entered the seating width (S41: NO), the CPU 31 shifts the process to S36. In this example, when the predetermined condition is not satisfied (NO in S38), the CPU 31 repeats S36 to S41 at a very short cycle (cycle of once every 2 ms). At the moment when the tool reaches the first position, the encoder 53A outputs the arrival information to the servo amplifier 43, and the CPU 31 receives the arrival information. The arrival information is information indicating that the tool has reached the first position. The first position can be regarded as the same as the return position, and therefore the arrival information is also information indicating that the tool has arrived at the return position. At the moment when the tool reaches the first position, the CPU 31 judges that the tool has reached the return position (S41: YES). The CPU 31 transfers the process to S43.
The CPU 31 ends the Z-axis ascent fast movement process to start the Z-axis deceleration process, and starts the XY-axis movement process corresponding to the (n + 1) th control command (S43). The CPU 31 controls the driving of the Z-axis motor 53 to decelerate the tool at a predetermined acceleration a and applies XY electric powerThe motor performs drive control to move the table toward the command position. The movement start timing of the table is the same as the deceleration start timing of the tool (see fig. 6). Namely, T defined by the formula (B) A Is 0.
The CPU 31 determines whether to end the Z-axis deceleration process based on the detection result of the encoder 53A (S51). The CPU 31 waits until the speed of the tool becomes 0 based on the detection result of the encoder 53A (S51: NO). When the speed of the tool is 0, the CPU 31 judges that the Z-axis deceleration processing is ended (S51: YES). The CPU 31 acquires the inertial movement distance based on the detection result of the encoder 53A (S53). The CPU 31 controls the driving of the Z-axis motor 53 to execute the Z-axis reverse movement process (S55). The CPU 31 moves the tool in the reverse direction by the inertial movement distance acquired in S53 (S55). Therefore, the tool is positioned at the return position before the XY-axis movement process is ended.
The CPU 31 determines whether to end the XY-axis movement processing based on the detection results of the encoders 51A, 52A (S57). Before the timing to end the XY-axis movement processing (S57: no), the CPU 31 waits. When the speed of the table is 0 based on the detection results of the encoders 51A, 52A, the CPU 31 determines that the XY-axis movement processing is ended (S57: yes). The CPU 31 increments n by 2(S61), and proceeds to S11.
The main process when the predetermined condition is satisfied will be described with reference to fig. 4, 5, and 7. Further, with respect to the processing overlapping with the above description, the description will be omitted or simplified.
When the predetermined condition is satisfied (yes in S38), the CPU 31 starts the Z-axis deceleration process and controls the driving of the Z-axis motor 53 (S45). The deceleration start timing of the tool (time t2 in fig. 7) is earlier than the movement start timing of the table. The CPU 31 determines whether the tool has entered the seating width (S47). S47 is the same process as S41, and the CPU 31 stands by until it receives arrival information from the encoder 53A (S47: NO). When the tool reaches the first position (S47: YES), the CPU 31 starts the XY-axis movement process corresponding to the (n + 1) th control command (S49).
The CPU 31 executes S51 to S55, and the tool is positioned at the return position by the Z-axis reverse movement process (S55). Then, CThe PU 31 determines whether the XY axis movement processing has ended (S57). As described above, at a first time T 1 Is a second time T 2 In the above (S38: YES), the CPU 31 executes S45, and when the tool reaches the first position (S47: YES), the XY-axis moving process is executed (S49). Therefore, at S57 immediately after S55 is executed, the speed of the table is 0, and the CPU 31 determines that the XY-axis moving process is ended (S57: YES). Therefore, the positioning completion timing of the return position of the tool is substantially the same as the positioning completion timing of the commanded position of the table (see fig. 7). The CPU 31 transfers the process to S61.
As described above, the numerical controller 1 instructs the Z-axis motor 53, the X-axis motor 51, and the Y-axis motor 52 based on the machining program including the first positioning command and the second positioning command, and machines the workpiece with the tool. The tool is inertially moved beyond the return position and then stopped regardless of whether or not a predetermined condition is satisfied (S53). When the predetermined condition is satisfied (yes in S38), the CPU 31 starts the Z-axis deceleration process (S45) before the XY-axis movement process (S49) is started. The timing (S51: yes) at which the speed of the tool becomes 0 with the execution of S45 is not likely to be later than the timing (S59) at which the speed of the table becomes 0 and stops with the execution of the XY-axis movement process (S43) based on the second positioning command. Therefore, the numerical controller 1 can suppress an increase in the cycle time of workpiece machining.
When the predetermined condition is not satisfied, the CPU 31 controls the Z-axis motor 53 not to be decelerated, and maintains the speed V m Since the tool is rapidly moved (S37), the moving distance, i.e., the inertial moving distance of the tool in S55 becomes longer, and the first time T becomes longer 1 The number of the predetermined conditions is likely to increase, and the timing of establishment of the predetermined condition is advanced. Therefore, the numerical controller 1 can suppress an increase in the cycle time of workpiece machining.
When the deceleration start timing of the tool comes (S33: "YES"), the CPU 31 judges whether or not a predetermined condition is satisfied (S38). If the predetermined condition is not satisfied (S38: "NO"), the CPU 31 repeats S36 to S41 at a cycle of once every 2 ms. Thus, at a first time T 1 And a second time T 2 At the same timing (S38: YES), the CPU31 transfers the process to S45. Therefore, the timing of completion of the Z-axis reverse movement process (S55) is substantially the same as the timing of completion of the XY-axis movement process (S59). That is, the CPU 31 determines whether or not the predetermined condition is satisfied in a very short cycle when the deceleration start timing of the tool arrives, and starts the XY-axis movement process so that the table stops at the commanded position at the completion timing of the Z-axis deceleration process (S49). The timing of ending the Z-axis deceleration process and the timing of ending the XY-axis movement process do not appear to be later on the one hand than the other. Therefore, the numerical controller 1 can further suppress an increase in the cycle time of workpiece machining.
Since the first position is closer to the workpiece than the return position and can be regarded as the same as the return position, the timing at which the CPU 31 receives the arrival information (S41: YES) is advanced. Therefore, the timing at which the CPU 31 starts the next process is advanced. Therefore, the execution of S43, S45 is advanced. Also, the following problems do not exist: the workpiece moved by the XY motor by the XY axis movement processing strikes a component of the machine tool 5 or the like.
In the above description, the Z-axis motor 53 is an example of the first feed motor of the present invention. The X-axis motor 51 and the Y-axis motor 52 are examples of the second feed motor of the present invention. The encoder 50A is an example of the position information output unit of the present invention. The CPU 31 executing S31 and S39 is an example of the first movement control unit of the present invention. The CPU 31 executing S43 is an example of the second movement control unit of the present invention. The CPU 31 executing S55 is an example of the reverse movement control section of the present invention. The CPU 31 executing S36 exemplifies the first time calculating unit of the present invention. The CPU 31 executing S37 exemplifies the second time calculating unit of the present invention. The CPU 31 executing S38 exemplifies the determination unit of the present invention. The CPU 31 executing S45 exemplifies the third movement control unit of the present invention. The CPU 31 executing S39 is an example of the fourth movement control unit of the present invention.
S31 and S39 exemplify a first movement control step of the present invention. S43 is an example of the second movement control step of the present invention. S55 is an example of the reverse movement control procedure of the present invention. S36 exemplifies the first time calculation step of the present invention. S37 exemplifies the second time calculation step of the present invention. S38 exemplifies the determination step of the present invention. S45 is an example of the third movement control step of the present invention.
The present invention is not limited to the above-described embodiments. The table may be fixed to the base, and the XY motor may move the spindle head in the XY direction. Instead of determining whether the tool has entered the seating width, the CPU 31 may determine whether the tool has reached the return position (S41, S47). That is, the seating width may also be 0.

Claims (4)

1. A numerical controller (1) is characterized by comprising:
a control unit (31) that instructs a first feed motor (53) provided in a machine tool (5) and second feed motors (51, 52) different from the first feed motor, respectively, to machine a workpiece with a tool moved by the first feed motor, based on a machining program including a first positioning command including a return position of the tool and a second positioning command for positioning the tool or the workpiece to a commanded position by the second feed motor; and
a position information output unit (50A) that outputs information indicating the position of the tool,
wherein the control unit includes:
a first movement control unit that controls the first feed motor to move the tool toward the return position at a speed based on the first positioning command;
a second movement control unit that, when receiving arrival information from the position information output unit, the arrival information indicating that the tool moved by the first movement control unit has reached a first position on the workpiece side relative to the return position, controls the second feed motor based on the second positioning command so as to start movement of the tool or the workpiece, and controls the first feed motor so as to stop the tool at a position beyond the return position; and
a reverse movement control unit that controls the first feed motor to reversely move the tool stopped after passing the return position by the second movement control unit from the stopped position to the return position,
the numerical controller further includes:
a first time calculation unit that calculates a first time required from a start timing at which the second movement control unit starts decelerating the first feed motor to a time at which the reverse movement control unit stops the tool at the return position;
a second time calculation unit that calculates a second time required from the start of movement of the tool or the workpiece by the second movement control unit using the second feed motor to the stop at the command position;
a determination unit that determines whether or not a predetermined condition is satisfied while the first movement control unit controls the first feed motor, the predetermined condition being that the first time calculated by the first time calculation unit is equal to or longer than the second time calculated by the second time calculation unit; and
and a third movement control unit that decelerates the first feed motor at a predetermined deceleration when the determination unit determines that the predetermined condition is satisfied.
2. The numerical control apparatus according to claim 1,
the fourth movement control unit controls the first feed motor not to be decelerated when the determination unit determines that the predetermined condition is not satisfied.
3. Numerical control apparatus according to claim 1 or 2,
the first position is a position that can be regarded as the same as the return position.
4. A control method for a numerical controller (1) that instructs a first feed motor (53) provided in a machine tool (5) and second feed motors (51, 52) different from the first feed motor, respectively, to machine a workpiece with a tool moved by the first feed motor, based on a machining program including a first positioning command including a return position of the tool and a second positioning command for positioning the tool or the workpiece to a command position by the second feed motor, the numerical controller including a position information output unit (50A) that outputs information indicating a position of the tool, the control method comprising:
a first movement control step of controlling the first feed motor of the numerical controller to move the tool toward the return position at a speed based on the first positioning command;
a second movement control step of controlling the second feed motor based on the second positioning command so as to start movement of the tool or the workpiece and controlling the first feed motor so as to stop the tool at a position beyond the return position when arrival information, which is information indicating that the tool moved by the first movement control step has reached a first position on the workpiece side of the return position, is received from the position information output unit; and
a reverse movement control step of controlling the first feed motor to reversely move the tool stopped after passing the return position by the second movement control step from the stopped position to the return position,
the control method of the numerical controller further includes the steps of:
a first time calculation step of calculating a first time which is a time required from a start timing at which the first feed motor starts decelerating in the second movement control step to a time at which the tool is stopped at the return position by the reverse movement control step;
a second time calculation step of calculating a second time required from start of movement of the tool or the workpiece by the second movement control step using the second feed motor to stop at the command position;
a determination step of determining whether or not a predetermined condition is satisfied while the first feed motor is controlled by the first movement control step, the predetermined condition being that the first time calculated by the first time calculation step is equal to or longer than the second time calculated by the second time calculation step; and
a third movement control step of decelerating the first feed motor at a predetermined deceleration when the determination step determines that the predetermined condition is satisfied.
CN201911024534.7A 2018-10-26 2019-10-25 Numerical controller, and control method for numerical controller Active CN111103845B (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2018-201370 2018-10-26
JP2018201370A JP7020367B2 (en) 2018-10-26 2018-10-26 Numerical control device

Publications (2)

Publication Number Publication Date
CN111103845A CN111103845A (en) 2020-05-05
CN111103845B true CN111103845B (en) 2022-09-23

Family

ID=70390451

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911024534.7A Active CN111103845B (en) 2018-10-26 2019-10-25 Numerical controller, and control method for numerical controller

Country Status (2)

Country Link
JP (1) JP7020367B2 (en)
CN (1) CN111103845B (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20230236574A1 (en) * 2020-08-28 2023-07-27 Fanuc Corporation Numerical value controller

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09120310A (en) * 1995-10-24 1997-05-06 Fanuc Ltd Method and system for moving axis
DE29712266U1 (en) * 1997-07-11 1997-09-11 Siemens AG, 80333 München Numerical control for machine tools, robots or the like.
JP2002166396A (en) 2000-11-30 2002-06-11 Hitachi Via Mechanics Ltd Printed board punching method and printed board punching machine
JP2004139253A (en) 2002-10-16 2004-05-13 Fanuc Ltd Numerical controller
JP2006024174A (en) 2004-06-09 2006-01-26 Citizen Watch Co Ltd Movement controller for controlling movement of mobile body of machine tool, machine tool provided with movement controller and mobile body moving method
JP2009237929A (en) 2008-03-27 2009-10-15 Brother Ind Ltd Numerical controller, control program for numerical controller, and recording medium for numerical controller
JP5482639B2 (en) * 2010-12-13 2014-05-07 ブラザー工業株式会社 Numerical control device, control program, and storage medium
JP5496419B1 (en) * 2012-05-15 2014-05-21 三菱電機株式会社 Numerical controller
DE112012000332B4 (en) * 2012-05-28 2015-05-07 Mitsubishi Electric Corporation Numerical control device
JP6088581B2 (en) * 2015-06-04 2017-03-01 ファナック株式会社 Machine tool control apparatus and control method for controlling synchronous operation of main shaft and feed shaft
JP6696386B2 (en) * 2016-09-29 2020-05-20 ブラザー工業株式会社 Numerical control device and control method
JP6444969B2 (en) * 2016-12-21 2018-12-26 ファナック株式会社 Numerical controller
JP6693409B2 (en) * 2016-12-26 2020-05-13 ブラザー工業株式会社 Numerical control device and control method
JP6819414B2 (en) * 2017-03-31 2021-01-27 ブラザー工業株式会社 Numerical control device and control method

Also Published As

Publication number Publication date
JP2020067921A (en) 2020-04-30
JP7020367B2 (en) 2022-02-16
CN111103845A (en) 2020-05-05

Similar Documents

Publication Publication Date Title
CN102554668B (en) Numerical control device and method for controlling numerical control device
US20060041325A1 (en) Numerical control unit
US20160059351A1 (en) Laser beam machining apparatus with high-speed positioning function
JP6398254B2 (en) Numerical control device and control method of numerical control device
CN111103845B (en) Numerical controller, and control method for numerical controller
JP3529010B2 (en) Mobile unit collision detection device
CN115812182A (en) Numerical controller and control method
US11086287B2 (en) Machine tool and control method of machine tool
US10725456B2 (en) Numerical controller
JP2009237929A (en) Numerical controller, control program for numerical controller, and recording medium for numerical controller
US20180173190A1 (en) Numerical controller
JP7376329B2 (en) Electric motor control device and electric motor control method
US20210132589A1 (en) Controller for machining device and control method for machining device
JPH09262742A (en) Method and device for feed control of machine tool
TWI409601B (en) Numerical control device and system of controlling corner motion and method of controlling the corner motion
JP7517028B2 (en) Numerical control device and control method
KR101987478B1 (en) Method for controlling automatic workpiece discharge device of machine tool
CN110170883B (en) Tapping control device
US20230236566A1 (en) Numerical value controller
CN111198537B (en) Parameter setting device, system and parameter setting method
CN112650150A (en) Numerical controller and control method
US20230381968A1 (en) Workpiece processing apparatus
CN112650151A (en) Numerical controller and control method
CN116056835A (en) Numerical controller
JP2021064362A (en) Numerical value control unit and control method

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant