Numerical control with tool life control function taking into account changes in machining conditions
The numerical controller dynamically adjusts tool selection and operation based on real-time machining conditions to prevent unexpected tool life depletion, ensuring accurate and efficient machining by selecting tools with sufficient life and safely stopping operations when necessary.
Patent Information
- Application Number
- DE102016006955
- Authority / Receiving Office
- DE · DE
- Patent Type
- Patents
- Current Assignee / Owner
- Priority Date
- 2015-06-15
- Filing Date
- 2016-06-08
- Publication Date
- 2025-01-02
- Estimated Expiration
- 2036-06-08
AI Technical Summary
Existing numerical control systems fail to accurately account for changes in machining conditions, leading to unexpected tool life depletion during operations, which compromises machining accuracy and efficiency.
A numerical controller that dynamically adjusts tool selection and operation based on real-time machining conditions, using a tool data storage unit, machining condition data storage, and consumption factor determination to ensure tools with sufficient life are used, and can safely stop operations when tool life is about to end.
Ensures tools with sufficient life are used throughout machining, preventing unexpected tool failure and allowing safe completion of operations even with changing conditions.
Smart Images

Figure 00000000_0000_ABST
Abstract
Description
BACKGROUND OF THE INVENTION 1. Field of the Invention
[0001] The invention relates to a numerical control and, in particular, to one having a function for managing the service life of a tool based on machining conditions. 2. State of the art
[0002] Generally, the cutting edge of a tool used in a machine tool wears down, and the cutting resistance increases with increasing service life. Advanced wear reduces machining accuracy, and the specified machining accuracy for a workpiece cannot be maintained. Thus, a tool reaches the end of its service life (useful life).
[0003] As prior art regarding tool life, Japanese Patent Application Laid-Open No. 2003-308106 and International Publication No. WO 2000 / 012260 describe techniques in which, before machining, the lifetime consumption during execution of a machining program is estimated based on machining conditions and the like. By using this prior art, a machining operator can avoid the problem of a tool life unexpectedly ending during machining by pre-provisioning a tool in a tool magazine with a lifetime longer than the machining duration.
[0004] The rate of tool life consumption varies depending on machining conditions such as coolant concentration, pH value, temperature, and the internal temperature of the machine. Therefore, if the machining conditions at the time of estimation of tool life (i.e., before machining starts) are different from the machining conditions at the time of actual execution, or if the machining conditions change during operation, the tool life will be consumed faster than estimated, and the tool life may expire before the end of machining. This problem cannot be solved by the above-mentioned techniques according to Japanese Patent Application Laid-Open No. 2003-308106 and International Patent Publication No. WO 2000 / 012260.
[0005] DE 32 13 917 A1 discloses a numerical control device for controlling a machine tool and automatically selecting a tool. The device contains registers for storing the types and service lives of tools located in the respective magazine positions. Upon input of a tool selection command, the magazine position is selected by sequentially scanning the contents of the registers. An example of a register is shown in a table in which the magazine number is listed in the first column of a row, the tool group in the second column, and the service life in the third column. BRIEF DESCRIPTION OF THE INVENTION
[0006] Accordingly, it is an object of the present invention to provide a numerical controller which can perform machining control taking into account the tool life according to the machining conditions.
[0007] A numerical controller according to the invention machines a workpiece by controlling a machine tool with a tool based on a command of a block read from a machining program. The numerical controller includes: a tool data storage unit for storing tool data in which the tool and a tool life are linked; a machining condition data storage unit for storing machining condition data in which machining conditions at the time of machining and a consumption factor representing the extent of tool life consumption under the machining conditions are linked; a program operation unit for controlling the machine tool based on the machining program; a tool usage calculation unit for calculating the tool usage for each block of the machining program;a consumption factor determining unit for determining a consumption factor by referring to the machining condition data storage unit based on the machining conditions at the time of machining execution according to the machining program;and a tool life consumption amount calculation unit for calculating an accumulated tool life consumption as the tool life consumed before each block based on the tool usage for each block as calculated by the tool usage calculation unit and the consumption factor as determined by the consumption factor determination unit. The program operation unit is configured to, when a command of a block read from the machining program is a tool change command, select a tool whose life will not end before a next tool change command is issued from the tools stored in the tool data storage unit based on the accumulated tool life consumption.
[0008] The consumption factor determining unit may be configured to, when there is a change in machining conditions according to the machining program in an operation, determine a final consumption factor based on the changed machining conditions, and the lifetime consumption amount calculating unit may be configured to recalculate the accumulated lifetime consumption as the consumed tool life before each block based on the final consumption factor.The numerical controller may further comprise a life exhaustion block determining unit for determining a block of the machining program at which the tool life of a currently used tool will end when it is estimated, based on the newly calculated accumulated life consumption, that the tool life of the currently used tool will end before the next tool change command, and an operation stop block determining unit for determining a block at which a machining operation can be safely stopped in a range from the block of the machining program currently being executed by the program operation unit to a block of the machining program which is determined by the life exhaustion block determining unit as the block at which the life of the currently used tool will end.
[0009] With the invention, the problem of a tool life ending during machining can be solved by changing to a tool with a sufficient tool life depending on the machining conditions, which change in real time.
[0010] In addition, even if a tool life ends due to a sharp change in machining conditions, the machining operation can be safely terminated with the longest possible service life on a block. BRIEF DESCRIPTION OF THE CHARACTERS
[0011] The above and other objects and features of the invention will become even clearer from the following description of preferred embodiments with reference to the figures: Fig. 1A illustrates an overview of a selection function of a numerical control according to the invention for optimum tool life; Fig. 1B is an overview illustrating a stop block detection function of the numerical controller according to the invention; Fig. 2 is a functional block diagram of a numerical controller according to a first embodiment of the invention; Fig. 3 shows an explanation of a tool insert of an end mill according to the invention; Fig. 4 illustrates a tool insert of a tapping tool according to the invention; Fig. 5 shows an example of a machining condition data storage unit according to the invention; Fig. 6 illustrates the accumulated lifetime consumption according to the invention; Fig. 7 shows an example of a tool data storage unit according to the invention; Fig. 8 is a functional block diagram of a numerical controller according to a second embodiment of the invention; and Fig. 9 explains the operation of the numerical controller according to the second embodiment. DESCRIPTION OF PREFERRED EMBODIMENTS IN DETAIL
[0012] First, a function (selection function for optimal tool life) of a numerical control according to the invention is described with regard to Fig. 1A is described in more detail.
[0013] Various machining conditions, such as coolant concentration, pH value, temperature, and internal machine temperature, as well as a consumption factor indicating a tool life consumption rate under the machining conditions, are stored in advance in the internal memory as a machining condition database. When a tool change command (T-code) is issued according to the machining program during a machining operation, the tool usages (cutting time, cutting length, number of inserts for drilling or tapping, etc.) are calculated in the background for blocks before the next tool change. At the same time, a consumption factor is calculated by determining (measuring) the machining conditions (coolant concentration, pH value, temperature, internal machine temperature, etc.) with reference to the above-mentioned machining condition database.The tool life to be consumed is then calculated from the calculated tool usages and the consumption factor. A tool with a tool life longer than the calculated tool life to be consumed is then searched for, and the currently used tool is replaced with the tool found during the search.
[0014] A further function (stop block detection function) of a numerical control according to the invention will now be described with reference to Fig. 1B is described in more detail.
[0015] Machining conditions changed by the command of a block, a signal, or the like are determined during the machining operation, and a consumption factor calculated based on the changed machining conditions is compared with a consumption factor calculated at the time of the last tool change (see <1> in Fig. 1B). If the consumption factor for the last determined machining conditions is greater than the consumption factor calculated at the time of the last tool change, a tool life (consumption time) consumed in the remaining blocks before the next tool change is calculated using the consumption factor for the last determined machining conditions. If it turns out that the tool life ends before the next tool change (see <2> in Fig. 1B), the processing operation continues until the last non-cutting block (such as fast forward or auxiliary function) between the currently executing block and a block at which the lifetime ends, and the processing operation is suspended at the non-cutting block (see <3> in Fig. 1B).
[0016] Now, a first embodiment of the numerical control according to the invention will be described with reference to the Fig. 2 to 7 are described in more detail. This numerical control has a selection function for optimal tool life based on the tool life to be consumed.
[0017] Fig. Figure 2 is a functional block diagram of the numerical controller according to this example. The numerical controller 1 includes a program operation unit 10, a tool usage calculation unit 11, a consumption factor determination unit 12, a lifetime consumption amount calculation unit 13, a tool data storage unit 20, and a machining condition data storage unit 21.
[0018] The program operation unit 10 reads a machining program stored in a memory (not shown) and controls a machine tool according to commands from blocks of the read machining program. When reading a block containing a tool change command (T-code command), the program operation unit 10 prefetches blocks from the read block to the block containing the next tool change command and instructs the tool usage calculation unit 11 (described in more detail below) to calculate a tool life consumed during workpiece machining based on the prefetched blocks.
[0019] Upon receiving corresponding commands from the program operation unit 10, the tool usage calculation unit 11 calculates a "tool usage" during workpiece machining based on the command of each of the blocks pre-called by the program operation unit 10. The "tool usage" is a measured value, such as a cutting time, a cutting length, or the number of inserts for drilling or tapping, depending on the tool types.
[0020] For example, if the tool is an end mill, the tool usage is determined (measured) based on cutting time, cutting depth, etc.
[0021] Fig. Figure 3 shows an example where the use of an end mill is measured based on the cutting time.
[0022] If the measurement is performed based on the cutting time, the cutting time is calculated from the coordinate values over which the tool moves and the feed rate for each cutting command (for example, G01).
[0023] If the tool is a tap, tool usage is measured (determined) based on the number of holes drilled.
[0024] Fig. Figure 4 shows an example where the use of a tap tool is determined based on the number of holes.
[0025] If the determination is based on the number of holes, the hole is counted each time a drilling command (such as G84) is executed.
[0026] The consumption factor determining unit 12 acquires machining conditions such as the current coolant concentration, pH value, temperature, and internal machine temperature from the numerical controller, peripheral devices or sensors of the machine, or the like, and determines a consumption factor with respect to the tool from the acquired machining conditions, the tool type selected by the tool change command, and the machining condition data stored in the machining condition data storage unit 21.
[0027] Fig. 5 shows an example of machining condition data stored in the machining condition data storage unit 21 of the numerical controller 1.
[0028] The machining condition data storage unit 21 stores a plurality of sets of machining condition data in which machining conditions such as coolant concentration, pH value, temperature, and internal machine temperature are associated with a “consumption factor” representing a tool life consumption rate of the tool when the tool is used under the respective machining conditions.
[0029] The "consumption factor" is 1.0 for a set of reference machining conditions, and it increases with increasing machining conditions (high coolant concentration, high temperature, etc.). The consumption factor for each machining condition can be a ratio of the tool life consumption rate under a machining condition to the consumption rate under the reference machining condition. The consumption factor can be determined in advance through experiments or the like, or it can be determined by statistical calculations based on information regarding the machining conditions, material, and shape for the particular machining operation, which are obtained from actual past tool use.The consumption factor determined in this way is stored in the machining condition data storage unit 21 in the form of machining data for each tool type in association with the machining conditions.
[0030] The lifetime consumption amount calculation unit 13 calculates a tool lifetime (consumption time) consumed in each of the blocks included in a range from the last tool change to the next tool change, based on the tool usage for the command of each block determined by the tool usage calculation unit 11 and the consumption factor determined by the consumption factor determination unit 12. The consumed lifetimes are accumulated to calculate an accumulated consumption time before each of the blocks. The lifetime consumption amount calculation unit 13 estimates a tool lifetime to be consumed when executing the blocks in the relevant section according to the following equation (1). The consumption time determined for each block is stored in an internal memory (such as RAM) not shown in detail. Tool life to be consumed (service life) = tool use × consumption factor
[0031] Fig. 6 shows an example in which a tool consumption time is calculated in a section between tool changes with a drilling tool.
[0032] According to Fig. 6, the life consumption amount calculation unit 13 calculates an accumulated tool usage for each block based on the tool usage for each command as determined by the tool usage calculation unit 11. If the usage factor determined by the usage factor determination unit 12 is 1.5, an estimation can be made that a tool life corresponding to 9 times one threaded hole will be consumed until the next tool change, namely by multiplying the accumulated tool usage as determined by the life consumption amount calculation unit 13 by 1.5.
[0033] The tool life consumption amount calculation unit 13 informs the program operation unit 10 of the estimated tool life to be consumed before the next tool change. The program operation unit 10, receiving notification of the tool life consumed before the next tool change, selects a tool with a life longer than the life to be consumed before the next tool change from among the tools stored in the tool data storage unit 20 and from among the tools of the same type according to the tool change command (T-code command). As a result, the machine tool controlled by the numerical control system can perform machining without the tool life expiring before the next tool change.If a tool with a tool life longer than the tool life to be used up before the next tool change is not included in the tool data storage unit 20 in this situation, this fact that no suitable tool is registered is given to the operator as a warning.
[0034] Fig. 7 shows an example of tool data stored in the tool data storage unit 20.
[0035] According to Fig. 7, tool data includes a tool type, data regarding tool dimensions, the remaining tool life corresponding to the tool type, a tool position (in the case of an automatic tool changer), and the like for each tool provided with a tool number.
[0036] If the program operation unit 10 is informed by the lifetime consumption amount calculation unit 13 that the consumption time (remaining tool life) in the section concerned at the time of changing to a tapping tool is 9 times the tapping time, as described with reference to Fig. 6, the program operation unit 10 accesses the tool data storage unit 20 and selects a tool (tool in tool position 4) that is a tapping tool and has a remaining tool life of 9 times or more. In such a tool selection, a tool can be selected according to a predetermined ratio or life amount.
[0037] Thus, in a numerical control system according to this embodiment, the tool life is estimated not before the start of machining, but each time a tool is changed, and a tool with a tool life longer than the estimated life is selected. This makes it possible to avoid the problem of the tool life suddenly ending during machining.
[0038] Now, a second embodiment of a numerical control according to the invention will be described with regard to the Fig. 8 and Fig. 9 described in more detail.
[0039] The numerical controller according to the above first embodiment has a function of estimating a tool life that will be consumed before the next tool change based on machining conditions at the time of a tool change and selecting a tool with a remaining tool life longer than the estimated consumption life. The numerical controller according to the second embodiment has a function of safely stopping at a block where the operation time is maximum, even if the tool life ends during machining due to a drastic change in machining conditions.
[0040] Fig. 8 is a functional block diagram of the numerical controller according to this embodiment.
[0041] The numerical controller 1 has a life exhaustion block determination unit 14, an operation stop block determination unit 15, and a display unit 16, in addition to the program operation unit 10, the tool usage calculation unit 11, the consumption factor determination unit 12, the life consumption amount calculation unit 13, the tool data storage unit 20, and the machining condition data storage unit 21, which are also components of the above first embodiment (see the functional block diagram according to Fig. 2).
[0042] The consumption factor determining unit 12 acquires machining conditions such as the coolant concentration, pH value, temperature, and internal temperature of the machine from the numerical controller, peripheral devices or sensors of the machine, or the like during a machining operation through the program operation unit 10, and monitors a change in the acquired machining conditions.If the machining conditions thus obtained change beyond a predetermined threshold value (tolerance value), the consumption factor determination unit 12 determines a consumption factor of the tool based on the changed current machining conditions, the tool type selected by a tool change command and the machining condition data stored in the machining condition data storage unit 21, and compares the thus determined consumption factor with the consumption factor obtained at the time of the last tool change.
[0043] If the consumption factor of the tool based on the current machining conditions is larger than the consumption factor obtained at the time of the last tool change, the consumption factor determination unit 12 instructs the lifetime consumption amount calculation unit 13 to calculate a consumption lifetime for each block based on the last consumption factor according to the current machining conditions.
[0044] For each block in the section between the currently executed block and the next tool change block, the lifetime consumption amount calculation unit 13 reads out the respective consumption period recorded by the tool usage calculation unit 11 in the internal memory at the time of a tool change, and recalculates a consumption period for the command of each block based on the last consumption factor determined by the consumption factor determination unit 12 according to the following equation (2). Consumption life for each remaining block = Consumption life for each block at the time of tool change × (last consumption factor ÷ consumption factor at the time of tool change)
[0045] The lifetime consumption amount calculation unit 13 adds the consumption duration for each block as recalculated with the above equation (2) to the accumulated consumption lifetime for a block one block before the currently executed block to recalculate an accumulated consumption lifetime consumed before each block after the currently executed block, and instructs the lifetime exhaustion block determination unit 14 to estimate a block at which the lifetime of the currently used tool ends.
[0046] Based on the accumulated wear life newly calculated by the wear life calculation unit 13, the wear life block determination unit 14 determines whether the accumulated wear life before the next tool change block is not longer than the tool life of the currently used tool. If the accumulated wear life before the next tool change block is not longer than the remaining life of the currently used tool, the life of the currently used tool will not expire before the next tool change. Accordingly, machining continues without any change.
[0047] If the accumulated consumption life before the block of the next tool change is longer than the tool life of the tool currently being used, ie the tool life of the tool currently being used ends before the next tool change, then the life exhaustion block determination unit 14 compares the accumulated consumption life with the tool life of the tool currently being used in the order from the block just executed according to Fig. 9 to determine a block at which the tool life of the tool currently being used ends, and instructs the operation stop block determination unit 15, in accordance with the block thus determined, to determine a block at which the operation is to be stopped.
[0048] The operation stop block determination unit 15 tracks the execution sequence of blocks from the block determined by the life-exhaustion block determination unit 14 as a block at which the tool life of the currently used tool ends, determines a non-cutting block, such as a rapid feed block, as an operation stop block, and instructs the program operation unit 10 to stop the machining operation at the thus determined operation stop block. The operation stop block determination unit 15 further highlights a warning message regarding the life-exhaustion block and the operation stop block on the display device 16 to provide the operator with appropriate information.
[0049] Fig. Figure 9 explains the operation of the numerical controller 1 when the consumption factor has changed from 1.5 to 3.0.
[0050] Accordingly Fig. 9, the consumption factor is determined to be 1.5 due to the machining conditions at the time of a tool change and a tool is selected with a tool life of 25.0 seconds because a tool life consumption before the next tool change is 20.0 seconds (see <1> in Fig. 9). Thereafter, the consumption factor determination unit 12 detects a change in the machining conditions and determines the final consumption factor to be 3.0 based on the changed operating conditions (see <2> in Fig. 9). Since the determined last consumption factor is larger than the consumption factor determined at the time of the last tool change, the tool life to be consumed is recalculated by the life consumption amount calculation unit 13.
[0051] Then, the lifetime exhaustion block determination unit 14 estimates that the tool lifetime (25 seconds) of the currently used tool will end before the next tool change and determines a block at which the lifetime of the currently used tool will end (see <3> in Fig. 9). Thereafter, the operation stop block determination unit 15 determines an operation stop block at which the machining operation can be safely stopped (see <4> in Fig. 9) and instructs the program operation unit 10 accordingly. In this way, the machining operation can be stopped safely at the operation stop block.
[0052] As described above, with the numerical controller according to this embodiment, even if the tool life ends unexpectedly during machining due to a sharp change in machining conditions, a machining operation can be safely stopped at a block such that the machining time is as long as possible.
[0053] Although embodiments of the invention have been described in more detail above, the invention is not limited to these described examples and can be embodied in different features by suitable modifications.
[0054] Although an end mill and a tapping tool were explained in more detail in the described embodiments, the invention can also be used with other tools by controlling the tool use according to the respective service lives of the tools.
Claims
[1] Numerical control for machining a workpiece by controlling a machine tool having a tool on the basis of commands from blocks read from a machining program, the numerical control comprising: a tool data storage unit for storing tool data in which the tool and a lifetime of the tool are linked; a machining condition data storage unit for storing machining condition data in which machining conditions at the time of machining and a consumption factor representing the extent of tool life consumption under the machining conditions are linked; a program operating unit for controlling the machine tool based on the machining program; a tool usage calculation unit for calculating the usage of the tool for each block of the machining program; a consumption factor determining unit for determining a consumption factor by referring to the machining condition data storage unit based on machining conditions at the time of machining executed according to the machining program; and a lifetime consumption amount calculation unit for calculating an accumulated consumption time as a tool lifetime consumed before each block based on the tool usage at each block as calculated by the tool usage calculation unit and the consumption factor as determined by the consumption factor determination unit, wherein the program operation unit is configured to, when a command of a block read from the machining program is a tool change command, select a tool from the tools stored in the tool data storage unit on the basis of the accumulated usage time, with a tool life that does not end before the next tool change command. [2] Numerical control according to claim 1, wherein the consumption factor determination unit is arranged to determine a last available consumption factor according to the changed machining conditions when the machining conditions change during machining according to the machining program, the lifetime consumption amount calculation unit is configured to recalculate an accumulated consumption time as a consumed tool lifetime before each block based on the last available consumption factor, and wherein the numerical control still has: a lifetime exhaustion block determination unit for determining a block of the machining program at which the lifetime of a tool currently being used will end if, based on the newly calculated accumulated consumption time, it is estimated that the lifetime of the tool currently being used will end before the next tool change command, and an operation stop block determining unit for determining a block at which a machining operation can be surely stopped in a section from the block of the machining program currently being executed by the program operation unit to a block of the machining program which has been determined by the life exhaustion block determining unit as a block at which the tool life of the tool currently being used ends.
Citation Information
Patent Citations
numerical control device for a machine tool
DE3213917A1
Cycle time calculation method and its program
JP2003308106A
Method of preparing tool wear data, estimating tool wear amount, and making decision on the use of the tool
WO2000012260A1
JP002003308106A