Control device and control method

By extracting and calculating the position relationship between the tool and the workpiece in the machining program, the problem of difficulty in effectively judging the position of the tool and the workpiece in the prior art is solved, and a safe and convenient machine tool stop operation is achieved.

CN115398363BActive Publication Date: 2025-04-25FANUC LTD
View PDF 3 Cites 0 Cited by

Patent Information

Application Number
CN202180027843.9
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Priority Date
2020-04-21
Filing Date
2021-04-14
Publication Date
2025-04-25
Estimated Expiration
2041-04-14

AI Technical Summary

Technical Problem

The prior art is difficult to effectively judge the positional relationship between the tool and the workpiece in the processing procedure, resulting in damage to the tool and/or the workpiece when adjusting the diameter of the drilling tool, applying paste or removing chips, and bringing operational burden to the operator.

Method used

The extraction unit extracts the program blocks that make the tool and the workpiece become a predetermined state according to the purpose of the stopping machine tool from the processing program as a candidate for the stop position, and calculates the distance and degree of separation between the tool and the workpiece by the calculation unit to determine the appropriate pause command insertion position.

Benefits of technology

It is possible to easily grasp the positional relationship between tools and workpieces in machining procedures, reduce the complexity and risks of operator operations, and ensure the safety of tools and workpieces.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115398363B_ABST
    Figure CN115398363B_ABST
Patent Text Reader

Abstract

In order to stop a machine tool according to the purpose, the positional relationship between the tool and the workpiece should be easily grasped in the machining program. A control device is a control device for controlling a machine tool according to the machining program, and comprises: an extraction unit, which extracts, from the program blocks included in the machining program, the program blocks of the machining program that make the tool and the workpiece in the machine tool reach a predetermined state according to the purpose of stopping the machine tool, as stop position candidates.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The invention relates to a control device and a control method. Background Art

[0002] In a factory, in order to adjust the diameter of a drilling tool, apply paste to a tool, or remove chips for a machine tool that is performing a machining operation, it is necessary to stop the machining program being executed midway.

[0003] As a method for stopping a machining program midway, there is known a method of inserting a pause command of “program stop (M00)” or “selective stop (M01)” into the machining program.

[0004] In this regard, the following technology is known: when a command block that is considered safe is executed from an unprocessed block of a machining program, or when the operation state of a machine tool is in a non-cutting state, when it is necessary to pause the automatic operation, the automatic operation is paused without inserting a pause instruction into the machining program. For example, refer to Patent Document 1.

[0005] Prior art literature

[0006] Patent Literature

[0007] Patent Document 1: Japanese Patent Application Publication No. 2015-79384 Summary of the invention

[0008] Problems to be solved by the invention

[0009] If the tool is stopped when it is in contact with the workpiece, it will cause damage to the tool and / or the workpiece. However, in order to adjust the diameter of the drilling tool, apply paste to the tool, and remove chips, the processing program portion where the pause command is recorded is not simply stopped in the gap between cutting and positioning. For example, adjusting the diameter of the drilling tool requires that the tool and the workpiece are fully separated. In addition, applying paste to the tool requires that the tool and the workpiece are separated to a certain extent, but they do not need to be separated as in the case of adjusting the diameter of the drilling tool. In addition, removing chips only requires that at least the tool and the workpiece are not in contact.

[0010] However, it is a burden for the operator to determine the positional relationship between the tool and the workpiece and where to record the pause command in the machining program according to the purpose of stopping the machine tool.

[0011] Therefore, in order to stop a machine tool according to the application, it is desired to easily grasp the positional relationship between the tool and the workpiece in a machining program.

[0012] Means for solving problems

[0013] (1) One aspect of the control device disclosed herein is a control device that controls a machine tool based on a machining program, the control device comprising: an extraction unit that extracts, from program blocks included in the machining program, a program block of the machining program that causes a tool and a workpiece in the machine tool to be in a specified state based on the purpose of stopping the machine tool, as a stop position candidate.

[0014] (2) One aspect of the control method disclosed herein is a control method, which is a control method for a control device for controlling a machine tool based on a machining program, the control method comprising: an extraction step of extracting, from program blocks included in the machining program, a program block of the machining program that causes a tool and a workpiece in the machine tool to be in a specified state based on the purpose of stopping the machine tool, as a stop position candidate.

[0015] Effects of the Invention

[0016] According to one aspect, since the machine tool is stopped according to the purpose, the positional relationship between the tool and the workpiece can be easily grasped in the machining program. BRIEF DESCRIPTION OF THE DRAWINGS

[0017] Figure 1 This is a functional block diagram showing an example of the functional configuration of the control system according to the first embodiment.

[0018] Figure 2 This is a diagram showing an example of a machining program.

[0019] Figure 3A Yes means Figure 2 An example of a tool path on the XY plane in contour machining of a machining program.

[0020] Figure 3B Yes means Figure 2 An example of a tool path on the XZ plane during contour machining of a machining program.

[0021] Figure 4A Yes means Figure 2 An example of the tool path on the XY plane in the drilling process of the machining program.

[0022] Figure 4B Yes means Figure 2 An example of the tool end trajectory on the XZ plane in the drilling process of the machining program.

[0023] Figure 5 This is a diagram showing an example of a distance table.

[0024] Figure 6 This is a diagram showing an example of the degree of separation.

[0025] Figure 7This is a diagram showing an example of emphasized display of a processing program when applying paste to a tool is selected.

[0026] Figure 8 This is a diagram showing an example of emphasized display of a processing program according to the degree of separation.

[0027] Fig. 9 This is a flowchart for explaining the display processing of the control device.

[0028] Fig.10 It is a functional block diagram showing an example of the functional configuration of a control system according to the second embodiment.

[0029] Fig.11 This is a flowchart for explaining the operation control processing of the control device. DETAILED DESCRIPTION

[0030] Hereinafter, the first embodiment will be described using the accompanying drawings. Here, a processing program including outer shape processing and hole processing is exemplified. In addition, the present invention is not limited to these outer shape processing and hole processing, and can also be applied to a processing program including processing other than the above.

[0031] <First embodiment>

[0032] Figure 1 1 is a functional block diagram showing an example of the functional configuration of the control system of the first embodiment. Figure 1 As shown, control system 1 has a machine tool 10 and a control device 20 .

[0033] The machine tool 10 and the control device 20 may be directly connected to each other via a connection interface not shown. In addition, the machine tool 10 and the control device 20 may be connected to each other via a network such as a LAN (Local Area Network). In this case, the machine tool 10 and the control device 20 may have a communication unit not shown for communicating with each other through such a connection.

[0034] Furthermore, the control device 20 may also be included in the machine tool 10 .

[0035] The machine tool 10 is a well-known machine tool to those skilled in the art, and operates according to an operation command from the control device 20 .

[0036] <Control device 20>

[0037] The control device 20 is a numerical control device known to those skilled in the art. The control device 20 generates an operation command based on an instruction from an operator or a machining program to be executed received via an input device (not shown) such as a touch panel included in the control device 20, and sends the generated operation command to the machine tool 10. Thus, the control device 20 controls the operation of the machine tool 10.

[0038] like Figure 1 As shown in FIG. 1 , the control device 20 includes a control unit 210, a display unit 220, and a storage unit 230. In addition, the control unit 210 includes a program editing unit 211, a calculation unit 212, an extraction unit 213, and a display control unit 214. In addition, the storage unit 230 stores a processing program 231 and a distance table DT. Here, as the processing program 231, as described later, an example Figure 2 The processing procedures described are explained.

[0039] The display unit 220 is a display device such as an LCD (Liquid Crystal Display), and displays a machining program 231 edited by a program editing unit 211 described later and a machining program 231 executed by the control device 20 .

[0040] The storage unit 230 is a ROM (Read Only Memory), a HDD (Hard Disk Drive), or the like, and can store a machining program 231 and a distance table DT together with various control programs.

[0041] The machining program 231 may be acquired from an external device (not shown) such as a CAD / CAM device, or may be created by an operator in the control device 20 .

[0042] Figure 2 This is a diagram showing an example of the processing program 231.

[0043] Figure 2 The machining program 231 performs the outer shape machining with the blocks of the initial sequence numbers (1) to (11). In addition, a dressing tool (for example, tool number T01) is mounted on a spindle (not shown) included in the machine tool 10 .

[0044] Figure 3A Yes means Figure 2 FIG. 23 is a diagram showing an example of a tool trajectory on the XY plane during contour machining of the machining program 231. Figure 3B Yes means Figure 2 FIG. 231 is a diagram showing an example of a tool trajectory on the XZ plane in the contour machining of the machining program 231. Figure 3A as well as Figure 3BThe numbers in brackets represent serial numbers in the machining program 231, and indicate the order in which the tool is moved. The machining target workpiece W has a size of, for example, 120 mm in length, 80 mm in width, and 25 mm in height.

[0045] The machining program 231, after the outer shape machining, switches from the trimming tool to the drilling tool (for example, tool number T02) in sequence numbers (12) and (13), and performs the hole drilling machining in sequence numbers (14) to (20).

[0046] Figure 4A Yes means Figure 2 FIG. 2 is a diagram showing an example of a tool trajectory on the XY plane in a hole drilling process of a machining program 231. Figure 4B Yes means Figure 2 FIG. 231 is a diagram showing an example of a tool end trajectory on the XZ plane in the drilling process of the machining program 231. Figure 4A as well as Figure 4B The numbers in brackets represent the serial numbers in the machining program 231, indicating the order in which the tools are moved.

[0047] The distance table DT stores Figure 2 The machining program 231 includes the distance between the tool and the workpiece W in a block including a sequence number of a predetermined code G00, for example, calculated by a calculation unit 212 described later. The distance table DT will be described later.

[0048] <Control Unit 210>

[0049] The control unit 210 includes a CPU (Central Processing Unit), ROM, RAM (Random Access Memory), CMOS (Complementary Metal-Oxide-Semiconductor) memory, etc., which are configured to communicate with each other via a bus, which is well known to those skilled in the art.

[0050] The CPU is a processor that controls the control device 20 as a whole. The CPU reads the system program and the application program stored in the ROM via the bus, and controls the control device 20 as a whole according to the system program and the application program. Figure 1 As shown, the control unit 210 is configured to realize the functions of a program editing unit 211, a calculation unit 212, an extraction unit 213, and a display control unit 214. Various data such as temporary calculation data and display data are stored in the RAM. In addition, the CMOS memory is configured as a non-volatile memory that is backed up by a battery (not shown) and maintains the storage state even if the power supply of the control device 20 is turned off.

[0051] The program editing unit 211 edits the processing program 231 displayed on the display unit 220 , for example, based on an input operation of an operator accepted via an input device (not shown) such as a keyboard or a touch panel included in the control device 20 .

[0052] Specifically, the program editing unit 211 inserts a pause command of “M00” or “M01” into the machining program 231 according to the operator's input operation, for example, depending on the purpose of adjusting the diameter of a drilling tool, applying paste to a tool, or removing chips.

[0053] The calculation unit 212 calculates the distance between the tool and the workpiece W for each block of the predetermined code G00 included in the machining program 231 , and determines the degree of separation between the tool and the workpiece by comparing the calculated distance with a preset threshold value.

[0054] For example, in Figure 2 In the machining program 231, the program blocks with sequence numbers (1) to (3) include the fast forward code G00. Furthermore, the coordinates of the fast forward end time point based on G00 in the program block with sequence number (3) are the start coordinates of the cutting process based on G01 in the program block with sequence number (4) for starting the contour machining. That is, in the program blocks with sequence numbers (4) to (8), the tool is brought into contact with the workpiece W by contour machining.

[0055] Therefore, the calculation unit 212, for example, uses the coordinates (x, y, z) (= (60, 30, 5)) of the end time point of the program block with serial number (3) as the approximate value of the position of the workpiece W, and calculates the distance between the coordinates of the end time points of each of the program blocks with serial numbers (1) to (3) relative to the coordinates of the end time point of the program block with serial number (3) as the distance between the tool and the workpiece W.

[0056] Specifically, if Figure 3A and Figure 3B As shown, for example, the coordinates (x, y, z) of the end time point in the program block with sequence number (1) are (0, 0, 700), so the calculation unit 212 calculates the distance sqrt((60-0)) between the coordinates of the end time point of the program block with sequence number (1) and the coordinates of the end time point of the program block with sequence number (3) 2 +(30-0) 2 +(5-700) 2 )=698.2(mm) as the distance D between the tool and the workpiece W. In addition, the coordinates (x, y, z) of the end time point of the program block with serial number (2) are (0, 0, 5), so the calculation unit 212 calculates the distance sqrt((60-0)) between the coordinates of the end time point of the program block with serial number (2) and the coordinates of the end time point of the program block with serial number (3). 2+(30-0) 2 +(5-5) 2 )=67.1(mm) as the distance D between the tool and the workpiece W. In addition, the calculation unit 212 calculates the distance sqrt((60-60)) between the coordinates of the end time point of the program block with serial number (3) and the coordinates of the end time point of the program block with serial number (3) 2 +(30-30) 2 +(5-5) 2 )=0(mm) as the distance D between the tool and the workpiece W.

[0057] Then, in Figure 2 In the machining program 231, the coordinates (x, y, z) (= (50, 40, -27)) of the end time point of the program block with serial number (8) are the coordinates of the start of the movement of the fast forward G00 of the program block with serial number (9). Therefore, the calculation unit 212 uses the coordinates of the end time point of the program block with serial number (8) as the approximate value of the position of the workpiece W, and calculates the distance between the coordinates of the end time point of each of the program blocks with serial numbers (8) to (11) relative to the coordinates of the end time point of the program block with serial number (8) as the distance between the tool and the workpiece W.

[0058] That is, the calculation unit 212 calculates the distance sqrt((50-50)) between the coordinates of the end time point of the program block with sequence number (8) and the coordinates of the end time point of the program block with sequence number (8). 2 +(40-40) 2 +(-27-(-27)) 2 )=0(mm) as the distance D between the tool and the workpiece W. In addition, the coordinates (x, y, z) of the end time point of the program block with serial number (9) are (50, 40, 5), so the calculation unit 212 calculates the distance sqrt((50-50)) between the coordinates of the end time point of the program block with serial number (9) and the coordinates of the end time point of the program block with serial number (8) 2 +(40-40) 2 +(-27-5) 2 )=32(mm) as the distance D between the tool and the workpiece W. In addition, the coordinates (x, y, z) of the end time point of the program block with serial number (10) are (0, 0, 5), so the calculation unit 212 calculates the distance sqrt((50-0)) between the coordinates of the end time point of the program block with serial number (10) and the coordinates of the end time point of the program block with serial number (8) 2 +(40-0) 2 +(-27-5) 2)=71.6(mm) as the distance D between the tool and the workpiece W. In addition, the coordinates (x, y, z) of the end time point of the program block with serial number (11) are (0, 0, 70), so the calculation unit 212 calculates the distance sqrt((50-0)) between the coordinates of the end time point of the program block with serial number (11) and the coordinates of the end time point of the program block with serial number (8) 2 +(40-0) 2 +(-27-70) 2 )=116.2(mm) as the distance D between the tool and the workpiece W.

[0059] In addition, Figure 2 In the machining program 231, the coordinates (x, y, z) (= (120, 80, 5)) of the end time point of the fast forward based on G00 of the program block with serial number (16) are the start coordinates of the hole drilling based on G01 of the program block with serial number (17). Therefore, the calculation unit 212 uses the coordinates of the end time point of the program block with serial number (16) as the approximate value of the position of the workpiece W, and calculates the distance between the coordinates of the end time point of each program block with serial number (14) to (16) relative to the coordinates of the end time point of the program block with serial number (16) as the distance between the tool and the workpiece W.

[0060] That is, the coordinates (x, y, z) of the end time point of the program block with sequence number (14) are (0, 0, 700), so the calculation unit 212 calculates the distance sqrt((120-0)) between the coordinates of the end time point of the program block with sequence number (14) and the coordinates of the end time point of the program block with sequence number (16) 2 +(80-0) 2 +(5-700) 2 )=709.8(mm) as the distance D between the tool and the workpiece W. In addition, the coordinates (x, y, z) of the end time point of the program block with serial number (15) are (120, 80, 700), so the calculation unit 212 calculates the distance sqrt((120-120)) between the coordinates of the end time point of the program block with serial number (15) and the coordinates of the end time point of the program block with serial number (16) 2 +(80-80) 2 +(5-700) 2 )=695(mm) as the distance D between the tool and the workpiece W. In addition, the calculation unit 212 calculates the distance sqrt((120-120)) between the coordinates of the end time point of the program block with serial number (16) and the coordinates of the end time point of the program block with serial number (16) 2 +(80-80) 2 +(5-5) 2 )=0(mm) as the distance D between the tool and the workpiece W.

[0061] In addition, Figure 2 In the machining program 231, the coordinates (x, y, z) (= (120, 80, 5)) of the end time point of the program block with serial number (18) are the coordinates of the start of the fast forward movement of G00 of the program block with serial number (19). Therefore, the calculation unit 212 uses the coordinates of the end time point of the program block with serial number (18) as the approximate value of the position of the workpiece W, and calculates the distance between the coordinates of the end time point of each of the program blocks with serial numbers (18) to (20) relative to the coordinates of the end time point of the program block with serial number (18) as the distance between the tool and the workpiece W.

[0062] That is, the calculation unit 212 calculates the distance sqrt((120-120)) between the coordinates of the end time point of the program block with the sequence number (18) and the coordinates of the end time point of the program block with the sequence number (18). 2 +(80-80) 2 +(5-5) 2 )=0(mm), as the distance D between the tool and the workpiece W. In addition, the coordinates (x, y, z) of the end time point of the program block with serial number (19) are (120, 80, 70), so the calculation unit 212 calculates the distance sqrt((120-120)) between the coordinates of the end time point of the program block with serial number (19) and the coordinates of the end time point of the program block with serial number (18) 2 +(80-80) 2 +(5-70) 2 )=65(mm) as the distance D between the tool and the workpiece W. In addition, the coordinates (x, y, z) of the end time point of the program block with serial number (20) are (0, 0, 70), so the calculation unit 212 calculates the distance sqrt((120-0)) between the coordinates of the end time point of the program block with serial number (20) and the coordinates of the end time point of the program block with serial number (18). 2 +(80-0) 2 +(5-70) 2 )=158.2(mm), as the distance D between the tool and the workpiece W.

[0063] The calculation unit 212 stores the calculated distance D between the tool and the workpiece W and the like in the distance table DT of the storage unit 230 .

[0064] Figure 5 It is a diagram showing an example of the distance table DT.

[0065] like Figure 5 As shown, the distance table DT includes the coordinates "x", "y", "z", and the square value "D" of the distance between the tool and the workpiece W at the end time point for each program block of the serial number.2 ”, the distance “D” between the tool and the workpiece W, and the “degree of separation”. In addition, Figure 5 In the example, the program blocks with serial numbers during which the tool and the workpiece W are in contact are indicated by shadows. When the tool and the workpiece W are in contact at the end time of the program blocks with serial numbers, "x", "y", "z", "D" are set. 2 " and "D" are set to blank.

[0066] In addition, the program blocks of serial numbers (12) and (13) are program blocks for tool replacement, which are codes different from the specified code G00. Therefore, the "x", "y", "z", "D" of serial numbers (12) and (13) are replaced. 2 " and "D" are set to blank.

[0067] The coordinates "x", "y", and "z" in the distance table DT respectively store the values ​​of the x-coordinate, y-coordinate, and z-coordinate at the end time point of the program block of each serial number.

[0068] In the distance table DT, "D 2 " stores the square value of the distance D between the tool and the workpiece W calculated by the calculation unit 212 in the program block of each serial number.

[0069] In "D" in the distance table DT, the distance D between the tool and the workpiece W calculated by the calculation unit 212 in the program block of each serial number is stored.

[0070] Regarding the “degree of separation” in the distance table DT, “contact”, “near”, “middle” or “far” is stored according to the comparison between the calculated distance D between the tool and the workpiece W and a preset threshold value.

[0071] Figure 6 This is a diagram showing an example of the degree of separation.

[0072] like Figure 6 As shown, when the calculated distance D between the tool and the workpiece W is less than the threshold value Th1 (for example, 0 mm), the tool and the workpiece W are in contact, and therefore, the tool and the workpiece W are determined as "contact" as the "degree of separation" and stored in the distance table DT. In addition, as described above, when the tool and the workpiece W are in contact at the end time point of the program block, the calculation unit 212 does not calculate the distance D between the tool and the workpiece W. At this time, if the contact between the tool and the workpiece W is detected at the end time point of the program block, the calculation unit 212 can determine it as "contact".

[0073] In addition, when the calculated distance D between the tool and the workpiece W is greater than or equal to the threshold value Th1 and less than the threshold value Th2 (for example, 50 mm), the distance between the tool and the workpiece W is close, and thus, the distance is determined as "close" as the "degree of separation" and stored in the distance table DT. In addition, when the calculated distance D between the tool and the workpiece W is greater than or equal to the threshold value Th2 and less than the threshold value Th3 (for example, 100 mm), the distance between the tool and the workpiece W is a medium distance, and thus, the distance is determined as "medium" as the "degree of separation" and stored in the distance table DT. In addition, when the calculated distance D between the tool and the workpiece W is greater than or equal to the threshold value Th3, the distance between the tool and the workpiece W is far, and thus, the distance is determined as "far" as the "degree of separation" and stored in the distance table DT.

[0074] In addition, the threshold values ​​Th1 , Th2 , and Th3 may be appropriately determined according to the structure of the machine tool 10 or the shape and size of the workpiece W.

[0075] In addition, in the tool replacement blocks of sequence numbers (12) and (13), the tool replacement is performed at a predetermined position sufficiently away from the workpiece W using, for example, a tool magazine (not shown) included in the machine tool 10, and the coordinates do not change. Therefore, the calculation unit 212 can determine the "degree of separation" of the blocks of sequence numbers (12) and (13) as "far" and store it in the distance table DT.

[0076] The extraction unit 213 extracts, from among the program blocks included in the machining program 231, program blocks of the machining program 231 that are used to stop the machine tool 10 for purposes such as adjusting the diameter of a drilling tool, applying paste to the tool, or removing chips so as to bring the tool and the workpiece W in the machine tool 10 to a specified state, as stop position candidates.

[0077] Specifically, when the operator selects to adjust the diameter of the drilling tool via the input device (not shown) of the control device 20, the extraction unit 213 extracts a program block with a serial number having a degree of separation of the distance D between the tool and the workpiece W being "far" as a specified state, which can at least adjust the diameter of the drilling tool, as a candidate for the stop position.

[0078] In addition, when the operator selects to apply paste to the tool via the input device (not shown) of the control device 20, the extraction unit 213 may extract, as a candidate for the stop position, a program block with a serial number in which the separation degree of the distance D between the tool and the workpiece W is "medium" or "far" as a predetermined state and at least the degree of applying paste to the tool is possible, and the program block with a serial number in which the separation degree of the distance D between the tool and the workpiece W is "near", "medium", or "far" as a predetermined state and at least the degree of removing chips is possible, as a candidate for the stop position. In addition, when the operator selects to remove chips via the input device (not shown) of the control device 20, the extraction unit 213 may extract, as a candidate for the stop position, a program block with a serial number in which the separation degree of the distance D between the tool and the workpiece W is "near", "medium", or "far" as a predetermined state and at least the degree of removing chips is possible, and the program block with a serial number in which the separation degree of the distance D between the tool and the workpiece W is "near", "medium", or "far".

[0079] The display control unit 214 highlights and displays each program block of the machining program 231 extracted as the stop position candidate on the display unit 220 according to the purpose or the degree of separation.

[0080] Specifically, the display control unit 214 highlights the processing program 231 on the display unit 220 in a display manner that differentiates the display according to the purpose selected by the operator, such as adjusting the diameter of the drilling tool, applying paste to the tool, or removing chips, such as frame line color, type, thickness, background color, etc.

[0081] Figure 7 2 is a diagram showing an example of highlighting the processing program 231 when applying the paste to the tool is selected. Figure 7 As shown, when the application of paste to the tool is selected, the display control unit 214 displays the program blocks with the separation degree of "medium" and "far" in green (in Figure 7 The background color is emphasized.

[0082] Or, for example, Figure 8 As shown, the display control unit 214 highlights the processing program 231 on the display unit 220 in a display manner that distinguishes the degree of separation according to the frame color, type, thickness, background color, etc. Figure 8 In the program, blocks with a "close" separation are colored red (in Figure 8 In addition, blocks with a "medium" separation are highlighted in green (in Figure 8 In addition, blocks with a "far" separation are highlighted in blue (in Figure 8 The background color is emphasized by using the shadow of the dots in the middle.

[0083] Thus, the control device 20 can easily grasp the positional relationship between the tool and the workpiece W in the machining program 231, and can easily insert a pause command corresponding to the purpose without placing a burden on the operator.

[0084] <Display Processing by Control Device 20>

[0085] Next, refer to Fig. 9 , while explaining the flow of display processing by the control device 20.

[0086] Fig. 9 This is a flowchart for explaining the display processing of the control device 20. Every time the machining program 231 is edited by the program editing unit 211, the flowchart shown here is executed.

[0087] In step S11 , the calculation unit 212 calculates the distance D between the tool and the workpiece W for each predetermined code G00 included in the machining program 231 edited by the program editing unit 211 .

[0088] In step S12 , the calculation unit 212 determines the degree of separation based on comparison between the distance D between the tool and the workpiece W calculated in step S11 and the threshold values ​​Th1 , Th2 , and Th3 .

[0089] In step S13 , the extracting unit 213 extracts, as stop position candidates, a program block of the machining program 231 corresponding to the purpose or the degree of separation selected by the operator, based on the degree of separation determined in step S12 .

[0090] In step S14 , the display control unit 214 highlights and displays each program block of the machining program 231 extracted as the stop position candidate on the display unit 220 .

[0091] As described above, the control device 20 of the first embodiment calculates the distance D between the tool and the workpiece W for each predetermined code G00 included in the machining program 231 to be edited, and determines the degree of separation based on the calculated distance D. The control device 20 extracts the program blocks of the machining program 231 corresponding to the purpose or degree of separation selected by the operator as stop position candidates based on the degree of separation, and highlights each of the program blocks extracted as stop position candidates on the display unit 220.

[0092] Thus, the control device 20 can easily grasp the positional relationship between the tool and the workpiece W in the machining program 231, and can easily insert a pause command corresponding to the purpose without placing a burden on the operator.

[0093] Furthermore, the control device 20 can prevent the program from being stopped by inserting a pause command at an erroneous position by highlighting each program block extracted as a stop position candidate.

[0094] The first embodiment has been described above.

[0095] <Second embodiment>

[0096] Next, a second embodiment will be described. In the second embodiment, a control device 20A has a function of pre-reading a plurality of program blocks for a machining program in addition to the function of the first embodiment.

[0097] Thus, the control device 20A according to the second embodiment can easily grasp the positional relationship between the tool and the workpiece during the machining program and can stop the machine at an appropriate position even when the machining program is executed.

[0098] Hereinafter, a second embodiment will be described.

[0099] Fig.10 is a functional block diagram showing an example of the functional configuration of a control system according to the second embodiment. Figure 1 Elements having the same functions as those of the control system 1 are denoted by the same reference numerals, and detailed description thereof will be omitted.

[0100] like Fig.10 As shown, a control system 1 according to the second embodiment includes a machine tool 10 and a control device 20A.

[0101] <Control device 20A>

[0102] A control device 20A according to the second embodiment has the same configuration as the control device 20 according to the first embodiment.

[0103] That is, Fig. 9 As shown, the control device 20A includes a control unit 210a, a display unit 220, and a storage unit 230. In addition, the control unit 210a includes a program editing unit 211, a calculation unit 212a, an extraction unit 213a, a display control unit 214, a program pre-reading unit 215, and an operation control unit 216. In addition, the storage unit 230 stores a machining program 231 and a distance table DT.

[0104] The machine tool 10 has the same functions as those of the machine tool 10 in the first embodiment.

[0105] In addition, the display unit 220 and the storage unit 230 have the same functions as those of the display unit 220 and the storage unit 230 in the first embodiment.

[0106] In addition, the program editing unit 211 and the display control unit 214 have functions equivalent to those of the program editing unit 211 and the display control unit 214 in the first embodiment.

[0107] For example, when the machining program 231 is executed, the program pre-reading unit 215 pre-reads a plurality of program blocks of the machining program 231. The program pre-reading unit 215 outputs the pre-read plurality of program blocks to the calculation unit 212a.

[0108] The calculation unit 212a calculates the distance D between the tool and the workpiece W for each predetermined code G00 included in the pre-read plurality of program blocks, similarly to the calculation unit 212 of the first embodiment. The calculation unit 212a determines the separation degree by comparing the calculated distance D between the tool and the workpiece W with the threshold values ​​Th1, Th2, and Th3. Furthermore, the calculation unit 212a calculates the x-coordinate, y-coordinate, z-coordinate, and the square value D of the distance between the tool and the workpiece W for each calculated program block. 2 , the distance D between the tool and the workpiece W, and the degree of separation are stored in the distance table DT of the storage unit 230 .

[0109] For example, the extracting unit 213a extracts a program block corresponding to the purpose of adjusting the diameter of a drilling tool, applying paste to a tool, or removing chips from the pre-read program blocks based on the distance table DT and closest to the currently executed program block as a stop position candidate.

[0110] Specifically, when the operator selects to adjust the diameter of the drilling tool via the input device (not shown) of the control device 20, the extraction unit 213a extracts a program block with a separation degree of "far" as a specified state and closest to the currently executed program block as a stop position candidate.

[0111] In addition, when the operator selects to apply paste to the tool via the input device (not shown) of the control device 20, the extraction unit 213 may extract a program block with a separation degree of "middle" or "far" as a specified state and closest to the currently executed program block as a stop position candidate. In addition, when the operator selects to remove chips via the input device (not shown) of the control device 20, the extraction unit 213 may extract a program block with a separation degree of "near", "middle" or "far" as a specified state and closest to the currently executed program block as a stop position candidate.

[0112] In addition, the extraction unit 213a can extract the program block closest to the currently executed program block according to the separation degree according to the distance table DT as the stop position candidate. That is, when the operator selects the separation degree of "near", "middle" or "far" via the input device (not shown) of the control device 20, the extraction unit 213a can extract the program block of the selected separation degree closest to the currently executed program block as the stop position candidate.

[0113] The operation control unit 216 monitors and controls the operation state of the machine tool 10 .

[0114] Specifically, the operation control unit 216 automatically adds a pause command as a break point to the parking position candidate extracted by the extraction unit 213a.

[0115] Thus, even when the control device 20A is executing the machining program 231 , it is possible to stop the tool and the workpiece W at an appropriate position in the machining program 231 .

[0116] <Operation Control Processing of Control Device 20A>

[0117] Next, refer to Fig.11 , while explaining the flow of the action control processing of the control device 20A.

[0118] Fig.11 This is a flowchart for explaining the operation control process of the control device 20A.

[0119] In step S21 , the program pre-reading unit 215 pre-reads a plurality of program blocks of the machining program 231 being executed.

[0120] In step S22 , the calculation unit 212 a calculates the distance D between the tool and the workpiece W for each of the predetermined codes G00 included in the plurality of program blocks pre-read in step S21 .

[0121] In step S23 , the calculation unit 212 a performs the same processing as step 12 in the first embodiment, and determines the degree of separation based on comparison between the distance D between the tool and the workpiece W calculated in step S22 and the threshold values ​​Th1 , Th2 , and Th3 .

[0122] In step S24, the extracting unit 213a extracts a program block that corresponds to the purpose or separation degree selected by the operator and is closest to the currently executed program block from among the pre-read plurality of program blocks based on the separation degree determined in step S23 as a stop position candidate.

[0123] In step S25 , the operation control unit 216 automatically adds a pause command as a breakpoint to the parking position candidate extracted in step S24 .

[0124] As described above, the control device 20A of the second embodiment calculates the distance D between the tool and the workpiece W for each of the predetermined codes G00 included in the plurality of program blocks pre-read from the currently executed machining program, and determines the degree of separation based on the calculated distance D between the tool and the workpiece W. The control device 20A extracts a program block that corresponds to the purpose or degree of separation selected by the operator and is closest to the currently executed program block as a stop position candidate, and automatically adds a pause command to the extracted program block as a breakpoint.

[0125] Thus, the control device 20A can easily grasp the positional relationship between the tool and the workpiece W even when executing the machining program 231, and can stop the positional relationship between the tool and the workpiece at an appropriate program block according to the application.

[0126] Furthermore, the control device 20A automatically adds a pause command as a breakpoint to the extracted stop position candidate, thereby preventing the insertion of a pause command at an erroneous position to cause the vehicle to stop, and can reduce the burden on the operator.

[0127] The second embodiment has been described above.

[0128] As mentioned above, although the 1st embodiment and the 2nd embodiment were demonstrated, the control apparatus 20, 20A is not limited to the said embodiment, and also includes the deformation|transformation, improvement, etc. within the range which can achieve an objective.

[0129] <Modification>

[0130] In the first embodiment and the second embodiment described above, the predetermined code is G00, but the present invention is not limited thereto. For example, the predetermined code may be G28, M06, or the like.

[0131] Specifically, G28 is a G code for returning to a reference point (mechanical origin). That is, at the end time of a block including G28, the tool is reliably located away from the workpiece W, so that the drilling tool diameter can be adjusted, paste can be applied to the tool, and chips can be removed.

[0132] M06 is an M code for tool replacement. As described above, tool replacement is performed at a predetermined position away from the workpiece W using a tool magazine (not shown) included in the machine tool 10, so that the diameter of the drilling tool can be adjusted, paste can be applied to the tool, and chips can be removed.

[0133] In addition, when removing chips, as long as the tool and the workpiece W do not contact, the degree of separation does not need to be considered. Therefore, the control device 20, 20A can determine whether the tool and the workpiece W are separated by whether each program block contains a code such as G01 or G02 of group 01 in the G code, or whether it contains a code such as M05. That is, in a program block including G01, G02, etc. of group 01, the tool and the workpiece W are in contact, and the control device 20, 20A determines that the chips cannot be removed before the program block of G00 is detected. In addition, in a program block including the M05 code for spindle stop, at least the tool and the workpiece W are separated, so the control device 20, 20A can determine that the chips can be removed.

[0134] In addition, each function included in the control device 20, 20A in the first embodiment and the second embodiment can be realized by hardware, software, or a combination thereof. Here, realization by software means realization by a computer reading a program and executing it.

[0135] Various types of non-transitory computer-readable media (Non-transitory computerreadable medium) can be used to store the program and provide it to the computer. Non-transitory computer-readable media include various types of tangible recording media (Tangible storage medium). Examples of non-transitory computer-readable media include magnetic recording media (e.g., floppy disks, magnetic tapes, hard disk drives), optical magnetic recording media (e.g., optical magnetic disks), CD-ROMs (Read Only Memory), CD-Rs, CD-R / Ws, semiconductor memories (e.g., mask ROMs, PROMs (Programmable ROMs), EPROMs (Erasable PROMs), flash ROMs, RAMs). In addition, the program can also be provided to the computer via various types of transient computer-readable media (Transitory computerreadable medium). Examples of transient computer-readable media include electrical signals, optical signals, and electromagnetic waves. Transitory computer-readable media can provide the program to the computer via wired communication paths such as wires and optical fibers or wireless communication paths.

[0136] Furthermore, the steps describing the program recorded in the recording medium naturally include processes performed in time series according to the order, but also include processes not necessarily performed in time series, and processes executed in parallel or individually.

[0137] In other words, the control device and control method of the present disclosure can adopt various embodiments having the following structures.

[0138] (1) One mode of the control device 20 disclosed in the present invention is a control device for controlling a machine tool 10 according to a machining program 231, and comprises: an extraction unit 213, which extracts, from the program blocks included in the machining program 231, a program block of the machining program 231 that brings a tool and a workpiece W in the machine tool 10 into a specified state according to the purpose of stopping the machine tool 10, as a stop position candidate.

[0139] According to the control device 20 , the positional relationship between the tool and the workpiece W can be easily grasped in the machining program 231 .

[0140] (2) In the control device 20 described in (1), the control device may also include: a calculation unit 212, which calculates the distance D between the tool and the workpiece W for each program block containing a specified code, and determines the degree of separation between the tool and the workpiece W based on a comparison between the calculated distance D and pre-set thresholds Th1, Th2, and Th3; and an extraction unit 213 extracts stop position candidates based on the purpose or the degree of separation.

[0141] Thus, the control device 20 can grasp the positional relationship between the tool and the workpiece W in the machining program 231 with high accuracy.

[0142] (3) In the control device 20 described in (2), the control device may further include: a display control unit 214 that highlights and displays each program block of the processing program 231 extracted as a stop position candidate on the display unit 220 according to the purpose or the degree of separation.

[0143] Thus, the control device 20 can easily insert a pause command corresponding to the purpose without placing a burden on the operator.

[0144] (4) In the control device 20A described in (2) or (3), the control device may further include: a program pre-reading unit 215, which pre-reads multiple program blocks of the processing program 231 when executing the processing program 231; and an action control unit 216, which adds a pause command to the program block of the processing program extracted by the extraction unit 213a as a stop position candidate, and the extraction unit 213a extracts a program block corresponding to the purpose or separation degree and closest to the program block being executed from the multiple program blocks pre-read by the program pre-reading unit 215 as a stop position candidate.

[0145] Thus, even when the control device 20A is executing the machining program 231 , it is possible to stop the tool and the workpiece W at an appropriate position in the machining program 231 .

[0146] (5) One aspect of the control method disclosed in the present invention is a control method for a control device 20 for controlling a machine tool 10 based on a machining program 231, which comprises: an extraction step of extracting, from program blocks included in the machining program 231, a program block of the machining program 231 that causes a tool and a workpiece W in the machine tool 10 to be in a specified state according to the purpose of stopping the machine tool 10, as a stop position candidate.

[0147] According to this control method, the same effect as (1) can be obtained.

[0148] (6) In the control method described in (5), the control method may also include: a calculation step of calculating the distance D between the tool and the workpiece W for each program block containing a specified code, and determining the degree of separation between the tool and the workpiece W based on a comparison between the calculated distance D and pre-set thresholds Th1, Th2, and Th3; and an extraction step of extracting stop position candidates based on the purpose or the degree of separation.

[0149] Therefore, the control method can obtain the same effect as (2).

[0150] (7) In the control method described in (6), the control method may further include: a display control step of highlighting each program block of the processing program 231 extracted as a stop position candidate on the display unit 220 according to the purpose or separation degree.

[0151] Therefore, the control method can obtain the same effect as (3).

[0152] (8) In the control method described in (6) or (7), the control method may further include: a program pre-reading step, in which a plurality of program blocks of the processing program 231 are pre-read when the processing program 231 is executed; and an action control step, in which a pause command is added to the program block of the processing program 231 extracted as a stop position candidate by the extraction step, wherein in the extraction step, a program block corresponding to the purpose or separation degree and closest to the program block being executed is extracted from the plurality of program blocks pre-read as a stop position candidate.

[0153] Therefore, the control method can obtain the same effect as (4).

[0154] Explanation of symbols

[0155] 1 Control system

[0156] 10 Machine Tools 10

[0157] 20, 20A control device

[0158] 210, 210a Control unit

[0159] 211 Program Editing Department

[0160] 212, 212a Calculation Department

[0161] 213, 213a Extraction unit

[0162] 214 Display control unit

[0163] 215 Program Preview

[0164] 216 Motion Control Department

[0165] 220 Display unit

[0166] 230 Storage unit.

Claims

1. A control device for controlling a machine tool according to a machining program, characterized in that: The control device has: an extracting unit that extracts, from among the program blocks included in the machining program, a program block of the machining program that brings a tool and a workpiece in the machine tool into a predetermined state according to the purpose of stopping the machine tool, as a stop position candidate; a calculation unit that calculates the distance between the tool and the workpiece for each program block containing a prescribed code, and determines the degree of separation between the tool and the workpiece by comparing the calculated distance with a preset threshold value, The purpose of stopping the machine tool includes a plurality of purposes requiring different degrees of separation between the tool and the workpiece. The extracting unit extracts the stop position candidates based on the purpose and the degree of separation.

2. The control device according to claim 1, characterized in that: The control device further includes a display control unit configured to highlight and display, on a display unit, each of the program blocks of the machining program extracted as the stop position candidates, based on the application or the degree of separation.

3. The control device according to claim 1 or 2, characterized in that: The control device also has: a program pre-reading unit that pre-reads a plurality of program blocks of the machining program when executing the machining program; and an action control unit that adds a pause command to the program block of the machining program extracted by the extraction unit as the stop position candidate, The extracting unit extracts, as the stop position candidate, a program block that corresponds to the purpose or the degree of separation and is closest to the currently executed program block from among the plurality of program blocks pre-read by the program pre-reading unit.

4. A control method, which is a control method for controlling a control device of a machine tool according to a processing program, characterized in that: The control method has the following features: An extraction step of extracting, from among the program blocks included in the machining program, a program block of the machining program that brings the tool and the workpiece in the machine tool into a predetermined state according to the purpose of stopping the machine tool, as a stop position candidate; a calculation step of calculating the distance between the tool and the workpiece for each program block containing the specified code, and determining the degree of separation between the tool and the workpiece based on a comparison between the calculated distance and a preset threshold value, The purpose of stopping the machine tool includes a plurality of purposes requiring different degrees of separation between the tool and the workpiece. In the extracting step, the stop position candidates are extracted based on the application and the separation degree.

5. The control method according to claim 4, characterized in that: The control method further includes a display control step of highlighting and displaying, on a display unit, each of the program blocks of the machining program extracted as the stop position candidates, according to the application or the separation degree.

6. The control method according to claim 4 or 5, characterized in that: The control method also includes: a program pre-reading step of pre-reading a plurality of program blocks of the machining program when executing the machining program; and an action control step of adding a pause command to the program block of the machining program extracted as the stop position candidate by the extraction step, In the extracting step, a program block corresponding to the purpose or the degree of separation and closest to the currently executed program block is extracted from the plurality of pre-read program blocks as the stop position candidate.

Citation Information

Patent Citations

  • Numerical control device in which halting point can be specified

    JP2015079384A

  • Numerical controller capable of specifying halt point

    CN104551852A

  • Numerical control device with function to stop machine tool by earthquake information

    JP2009181174A