Machine tool

The machine tool's tool holder and simulation system address chatter vibrations by estimating cutting edges and simulating machining conditions, improving surface quality by reducing vibrations.

WO2025263470A1PCT designated stage Publication Date: 2025-12-26DMG MORI CO LTD
View PDF 5 Cites 0 Cited by

Patent Information

Application Number
PCT/JP2025/021633
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Priority Date
2024-06-17
Filing Date
2025-06-16
Publication Date
2025-12-26

AI Technical Summary

Technical Problem

Existing machine tools lack effective methods to support operators in addressing chatter vibrations, which are based on operator experience and can be inaccurate without stored tool information, leading to reduced machined surface quality.

Method used

A machine tool equipped with a tool holder, estimation unit, simulation unit, and tool information management system that estimates the number of cutting edges and performs simulations to determine recommended machining conditions, supporting vibration countermeasures.

Benefits of technology

The system provides accurate and effective support for reducing chatter vibrations by determining optimal machining conditions based on cutting edge information, enhancing the quality of machined surfaces.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure JP2025021633_26122025_PF_FP_ABST
    Figure JP2025021633_26122025_PF_FP_ABST
Patent Text Reader

Abstract

A machine tool includes a tool holder that detachably holds a tool, and a control device (4). The control device (4) includes an estimation unit (163) and a simulation unit (170). The estimation unit (163) estimates a number of cutting edges of a tool attached to the tool holder. The simulation unit (170) performs a simulation on behavior of the tool held by the tool holder.
Need to check novelty before this filing date? Find Prior Art

Description

MACHINE TOOL

[0001] The present invention relates to a technique for supporting a countermeasure taken against vibrations occurring in a machine tool.

[0002] In machine tools, the occurrence of chatter vibrations leads to a decrease in the quality of a machined surface of a workpiece. The known main chatter vibrations include regenerative chatter, which are caused by fluctuations in the cutting depth of a tool due to irregularities in the machined surface caused by vibrations, and forced chatter, which are caused by resonance based on a natural vibration frequency. Operators often address chatter vibrations based on their own experience. For example, an operator listens to the sound of vibrations, observes the machined surface of the workpiece to predict the cause of chatter vibrations, and adjusts machining conditions. If chatter vibrations persist, the operator will change the workpiece fixing method or change the tool. Such countermeasures are selected based on the operator's experience and knowledge. However, there are limitations on the countermeasures based on the operator's experience and knowledge. Japanese Patent Laying-Open No. 2023-4510 (PTL 1) discloses a machine tool that determines a recommended machining condition to suppress chatter vibrations.

[0003] [PTL 1] Japanese Patent Laying-Open No. 2023-4510

[0004] In the technique described in PTL 1 above, tool information is stored in advance in a control unit of the machine tool. The machine tool then uses the tool information to determine a recommended machining condition and displays the recommended machining condition to the user, thereby supporting a vibration countermeasure. However, if the tool information required by the control unit is not stored, the vibration countermeasure may not be supported, or the accuracy of calculation of the recommended machining condition may decrease.

[0005] An aspect of the present invention relates to a machine tool including a tool holder that detachably holds a tool, an estimation unit that estimates a number of cutting edges of a tool attached to the tool holder, and a simulation unit that performs a simulation on behavior of the tool held by the tool holder using the number of cutting edges.

[0006] Another aspect of the present invention relates to a machine tool including a tool holder that detachably holds a tool, an estimation unit that estimates a number of cutting edges of a tool attached to the tool holder, a simulation unit that performs a simulation on behavior of the tool held by the tool holder using the number of cutting edges, a setting unit that sets a number of cutting edges of a tool, and a tool information management unit that stores the number of cutting edges of the tool set in the setting unit. In change of the tool held by the tool holder, the estimation unit estimates a number of cutting edges of a changed tool when the number of cutting edges of the changed tool is not stored in the tool information management unit.

[0007] According to the aspect of the present invention, a machine tool can be provided that is capable of appropriately supporting a vibration countermeasure.

[0008] Fig. 1 schematically shows a general configuration of a machine tool according to an embodiment of the present invention.Fig. 2 is a perspective view showing a general configuration of a machining device according to the present embodiment.Fig. 3 is a functional block diagram showing a control unit according to the present embodiment.Fig. 4 shows an example home screen.Fig. 5 is a flowchart showing a process performed by a basic application in the machine tool according to the present embodiment.Fig. 6 is a flowchart showing a process for cutting edge number setting in the present embodiment.Fig. 7 shows an example first setting screen.Fig. 8 is a flowchart showing details of a vibration monitoring process according to the present embodiment.Fig. 9 shows an example first message screen.Fig. 10 is a flowchart showing the vibration monitoring process according to the present embodiment.Fig. 11 shows an example vibration monitoring screen.Fig. 12 shows an example tuning screen.Fig. 13 shows a first example of a status screen.Fig. 14 shows a second example of the status screen.Fig. 15 shows an example second setting screen.Fig. 16 is a flowchart showing details of an adjustment process according to the present embodiment.Fig. 17 is a flowchart showing a process for cutting edge number setting management of the present embodiment.Fig. 18 shows an example second message screen.Fig. 19 is a flowchart showing a first modification of a processing flow shown in Fig. 17.Fig. 20 is a flowchart showing a second modification of the processing flow shown in Fig. 17.Fig. 21 is a flowchart showing a third modification of the processing flow shown in Fig. 17.Fig. 22 is a flowchart showing a fourth modification of the processing flow shown in Fig. 17.Fig. 23 shows a modification of the machine tool shown in Fig. 1.Fig. 24 is a graph showing an example relationship between chipping and a cutting force of a tool in a machine tool according to a modification.Fig. 25 is a flowchart showing a modification of processing in S12 of Fig. 5.Fig. 26 is a functional block diagram showing a modification of a cutting edge number estimation function of a machine tool.Fig. 27 shows a database (table) in Fig. 26.Fig. 28 is a functional block diagram showing another form of the cutting edge number estimation function in Fig. 26.

[0009] An embodiment of the present invention will be described with reference to the drawings. In the drawings referred to below, the same or corresponding components have the same reference characters allotted.

[0010] Fig. 1 schematically shows a general configuration of a machine tool according to the present embodiment. A machine tool 1 according to the present embodiment is a horizontal machining center. Machine tool 1 includes a machining device 2, a control device 4, a signal processor 40, and a drive circuit 56. An operation panel 54 is provided in a housing of machining device 2. Operation panel 54 has an input device 541, a display device 542, and a speaker 543. Operation panel 54 according to the present embodiment has a touch panel display operable by an operator. The touch panel display functions as input device 541 and display device 542.

[0011] Machining device 2 is further provided with a camera 55 for photographing a tool T. Camera 55 is provided so as to photograph tool T transported from a tool magazine (not shown) toward a spindle 18 for automatic tool change in spindle 18. Camera 55 obtains image information indicating a state of tool T and outputs the image information to control device 4.

[0012] Machining device 2 is further provided with a reader 19 capable of reading tool information from tool T. Reader 19 is provided to be able to read tool information from tool T transported from the tool magazine (not shown) toward spindle 18 for automatic tool change in spindle 18. Specifically, when an information presentation unit is provided in tool T, the information presented by the information presentation unit is read by reader 19. The information presentation unit may be a label displaying at least one of a predetermined code (e.g., barcode, two-dimensional code, or color code), a string of characters, and a string of numbers, or may be an integrated circuit (IC) chip that stores information in a form readable by reader 19. The tool information obtained by reader 19 is output to control device 4.

[0013] Spindle 18 is provided with a rotation sensor 18a that detects a rotation state (e.g., rotation speed) of spindle 18, and a tool detection sensor 18b. Tool detection sensor 18b is configured to detect the attachment and detachment of the tool to and from spindle 18. The information obtained by each of rotation sensor 18a and tool detection sensor 18b is output to control device 4.

[0014] Fig. 2 is a perspective view showing a general configuration of machining device 2 with the housing removed. In Fig. 2, the right-left direction, the upward-downward direction, and the front-back direction of machining device 2 as viewed from the front are defined as an X-axis direction, a Y-axis direction, and a Z-axis direction, respectively.

[0015] Machining device 2 includes a bed 10, a column 12 erected on bed 10, a spindle head 14, a table 16, spindle 18, guide rails 22, 26, 32, and saddles 24, 34. Spindle head 14 has the Z-axis-direction axis and rotatably supports spindle 18 about the axis. Spindle head 14 is provided with a spindle motor for rotatably driving spindle 18. Spindle head 14 rotates spindle 18 in accordance with an instruction from control device 4. Spindle 18 detachably holds tool T. In use of machining device 2, a holder portion 20 of tool T is attached to spindle 18 such that tool T and spindle 18 are coaxially arranged. Consequently, tool T is held by spindle 18. Spindle 18 corresponds to an example of the "tool holder". The tool holder in the present invention may be a tool rest mounted in a lathe, a multitasking machine, or the like.

[0016] Spindle head 14 is movably provided on the front side of column 12. Specifically, guide rails 22 are provided on the front surface of column 12. Saddle 24 is supported by guide rails 22 so as to move in the X-axis direction. Guide rails 26 are provided on the front surface of saddle 24. Spindle head 14 is supported by guide rails 26 so as to move in the Y-axis direction. Machining device 2 includes, for example, a feed mechanism and a servo motor that drives the feed mechanism as an XY drive device for moving (displacing) saddle 24 and spindle head 14. The feed mechanism may be a screw feed mechanism using a ball screw. The XY drive device is controlled by control device 4. Spindle 18 is movable in the X-axis and Y-axis directions as saddle 24 and spindle head 14 are driven. Spindle head 14 has an acceleration sensor 30 built therein.

[0017] A workpiece W is fixed onto table 16 via a jig (not shown). Table 16 is provided to be movable on bed 10. Specifically, guide rails 32 are provided on the upper surface of bed 10. Saddle 34 is supported on guide rails 32 so as to move in the Z-axis direction. Table 16 is fixed onto saddle 34. Machining device 2 includes, for example, a feed mechanism and a servo motor that drives the feed mechanism as a Z drive device for moving (displacing) saddle 34. The feed mechanism may be a screw feed mechanism using a ball screw. The Z drive device is controlled by control device 4. Workpiece W is movable in the Z-axis direction as saddle 34 is driven. Machining device 2 can adjust the relative positions of workpiece W and tool T in three dimensions.

[0018] Control device 4 shown in Fig. 1 detects chatter vibrations of tool T held by spindle 18 based on an output signal from acceleration sensor 30 built in spindle head 14. Specifically, acceleration sensor 30 detects vibrations that occur in tool T during machining of workpiece W and outputs a signal corresponding to the vibrations. The acceleration data detected by acceleration sensor 30 is input to signal processor 40. Signal processor 40 includes an A / D converter 42 and a frequency analyzer 44. An analog signal output from acceleration sensor 30 is converted into a digital signal by A / D converter 42 and is then input to frequency analyzer 44. Frequency analyzer 44 performs fast Fourier transform (FFT) processing on the input digital signal. The vibration data subjected to FFT processing by frequency analyzer 44 is input to control device 4.

[0019] Control device 4 includes a controller 50 and a vibration processor 52. Vibration processor 52 obtains the vibration data from signal processor 40 (frequency analyzer 44). Vibration processor 52 receives information indicating a control state from controller 50 and transmits a control command to controller 50. Vibration processor 52 performs predetermined processing on the vibrations of tool T held by spindle 18 based on signals received from signal processor 40 and controller 50. Vibration processor 52, for example, displays a screen (status screen) indicating the vibration state of spindle 18 and determines the presence or absence of chatter vibrations, based on the signal input from signal processor 40.

[0020] Controller 50 controls an actuator (e.g., motor) in accordance with a machining program created manually or automatically. The machining program is, for example, a numerical control (NC) program. Controller 50 may feed-drive spindle head 14 by driving the servo motor via drive circuit 56 when, for example, performing turning on workpiece W. Additionally, controller 50 may rotate spindle 18 by driving the spindle motor via drive circuit 56.

[0021] Fig. 3 is a functional block diagram of control device 4. Control device 4 includes a processor such as a central processing unit (CPU), and a storage device including, for example, a memory and a storage. The storage device stores computer programs. In the present embodiment, each component of control device 4 shown in Fig. 3 is implemented by, for example, hardware such as a processor and computer programs (software) that supply an instruction to the processor. The computer programs may include a device driver, an operating system, various application programs located at higher levels than the operating system, and a library that provides common functions to these programs. The units shown in Fig. 3 respectively correspond to portions in units of functions (functional blocks) rather than portions in units of hardware.

[0022] Control device 4 includes a human machine interface (HMI) processing unit 110, a data processing unit 112, a data storage unit 114, and a detection unit 116. HMI processing unit 110 is responsible for processing for a user interface. Data processing unit 112 performs various processes based on information obtained by HMI processing unit 110, information stored in data storage unit 114, and information detected by detection unit 116. Data processing unit 112 also functions as an interface for each of HMI processing unit 110, data storage unit 114, and detection unit 116.

[0023] HMI processing unit 110 includes an input unit 120. When a user operation is input to input device 541 (Fig. 1), a signal corresponding to the user operation is output to input unit 120. Input unit 120 obtains information based on the signal input from input device 541. Input unit 120 includes a tool information reception unit 122 and a condition reception unit 124. Tool information reception unit 122 receives tool information (e.g., tool type, tool diameter, and number of cutting edges) about tool T. Condition reception unit 124 receives information about a machining condition, such as spindle rotation speed or feed rate. In the present embodiment, the touch panel display functions as input device 541. However, the configuration of input device 541 may be changed as appropriate. Input device 541 may be configured of a physical operation portion (e.g., button, handle, dial).

[0024] Information about tool T (e.g., identification information, model number, or any other tool information of tool T) read by reader 19 (Fig. 1) is also input to input unit 120. The information obtained by input unit 120 is converted into a format processable by data processing unit 112 and is then output to data processing unit 112.

[0025] HMI processing unit 110 further includes an output unit 128. Output unit 128 provides various types of information to the operator. Output unit 128 provides visible information (e.g., images) to the operator via display device 542 (Fig. 1). Additionally, output unit 128 provides audio information (including voice) to the operator through speaker 543 (Fig. 1). Output unit 128 may display, on display device 542, at least one of an information screen showing information about machine tool 1 and an operation screen (e.g., a keyboard and a machine operation panel) that receives user operations. In the present embodiment, the touch panel display functions as display device 542. However, display device 542 may include a lamp and / or a warning light.

[0026] Detection unit 116 includes a vibration detection unit 130 and a rotation speed detection unit 132. Vibration detection unit 130 detects vibrations of spindle 18 (and thus vibrations of tool T) based on a sensor output from acceleration sensor 30 (Fig. 1). Specifically, vibration detection unit 130 obtains vibration data output from signal processor 40. Rotation speed detection unit 132 detects the rotation speed of spindle 18 (and thus the rotation speed of tool T) based on an output from rotation sensor 18a (Fig. 1) provided in spindle 18. An example of rotation sensor 18a is a rotary encoder.

[0027] Data storage unit 114 includes a program storage unit 140, a tool data storage unit 142, a display data storage unit 144, and a history data storage unit 146. Program storage unit 140 stores a machining program (e.g., NC program). Tool data storage unit 142 stores information about a plurality of types of tools (tool information) usable in machine tool 1, in association with tool identification information (tool ID). The tool information includes, for example, a tool type, a tool diameter, and the number of cutting edges. Tool data storage unit 142 may manage tool information by tool type. The tool information may be distinguished according to the tool model number. The range of the machining condition adjustable (hereinafter also referred to as an "adjustment range") by vibration processor 52 (Fig. 1) may also be included in the tool information. Display data storage unit 144 stores screen data (e.g., a soft key and a dialog box to be displayed in the screen) to be displayed on display device 542.

[0028] History data storage unit 146 stores time-series data of status information indicating the state of machining device 2 (e.g., the control state and vibration state of spindle 18). The status information includes, for example, at least one of a vibration level, a spindle rotation speed, an adjustment instruction timing, a program line (program block number) where chatter vibrations have occurred, and a peak frequency. Each time new data (status information) is obtained, the obtained data is stored in history data storage unit 146 in association with a time at which the data is obtained. If the amount of accumulated data exceeds the storage capacity of history data storage unit 146, the data may be sequentially deleted in chronological order.

[0029] Data processing unit 112 includes a numerical control unit 150, a notification control unit 156, a display control unit 158, a tool information management unit 160, and a simulation unit 170. Numerical control unit 150 is embodied as, for example, a function of controller 50 (Fig. 1). Simulation unit 170 is embodied as, for example, a function of vibration processor 52 (Fig. 1). The configuration shown in Fig. 1 may be changed such that at least part of signal processor 40 is included in control device 4. For example, simulation unit 170 may have the function of frequency analyzer 44.

[0030] Numerical control unit 150 controls machining device 2 based on, for example, a command input from input unit 120, in accordance with the machining program in program storage unit 140. Additionally, numerical control unit 150 may control machining device 2 in response to a request from simulation unit 170. Numerical control unit 150 sequentially transmits information indicating a current control state (control information) to simulation unit 170. The control information includes, for example, a control value of the spindle rotation speed.

[0031] Tool information management unit 160 sets information about tool T held by spindle 18. Additionally, tool information management unit 160 stores the set information separately from any other information. Tool information management unit 160 is configured to be able to obtain tool information from HMI processing unit 110 (input unit 120). In the present embodiment, tool information management unit 160 includes a first setting unit 161, a second setting unit 162, and an estimation unit 163.

[0032] First setting unit 161 sets the parameters (tool information) of tool T held by spindle 18 using information input from the user. First setting unit 161 sets, for example, the number of cutting edges input to input device 541 by the operator as the number of cutting edges of tool T.

[0033] Second setting unit 162 sets the parameters (tool information) of tool T held by spindle 18 using information read by reader 19 (Fig. 1). For example, in automatic tool change in spindle 18, second setting unit 162 sets the number of cutting edges of tool T attached to spindle 18 using information (e.g., tool ID) presented by the information presentation unit provided in a changed tool T. Second setting unit 162 may obtain the number of cutting edges of tool T from the tool information stored in tool data storage unit 142 based on the tool ID of tool T, and set the obtained number of cutting edges of tool T.

[0034] Estimation unit 163 is configured to estimate the number of cutting edges of tool T attached to spindle 18. Estimation unit 163 estimates the number of cutting edges of tool T using, for example, at least one of the information obtained by acceleration sensor 30 and the information obtained by camera 55. As will be described later in detail, estimation unit 163 estimates the number of cutting edges when a predetermined estimation condition is satisfied, and sets the estimated number of cutting edges as the number of cutting edges of tool T.

[0035] Simulation unit 170 performs a simulation on the behavior (e.g., vibrations) of tool T using the number of cutting edges of tool T held by spindle 18. Specifically, simulation unit 170 includes a chatter detection unit 171, a recommended condition calculation unit 172, and a tuning management unit 173.

[0036] In the simulation, frequency analyzer 44 shown in Fig. 1 receives signals continuously output from acceleration sensor 30 and performs Fourier analysis (frequency analysis) on the signals at predetermined sampling intervals. Simulation unit 170 obtains vibration data subjected to FFT processing from frequency analyzer 44, and based on the vibration data, obtains the frequency (vibration frequency) and magnitude (vibration level) of the vibrations occurring in tool T. Vibration detection unit 171 determines that chatter vibrations have occurred when the vibration level exceeds a predetermined threshold. Recommended condition calculation unit 172 calculates a recommended machining condition for tool T by performing a simulation using the number of cutting edges of tool T held by spindle 18. In detail, recommended condition calculation unit 172 calculates the machining condition (recommended machining condition) that suppresses chatter vibrations when the chatter vibrations have occurred. An example of the recommended machining condition is a recommended value of the spindle rotation speed (hereinafter also referred to as a "recommended rotation speed").

[0037] Recommended condition calculation unit 172 may calculate a recommended rotation speed SS (recommended value) from a vibration frequency ω0 (chatter frequency) at that time and a number of cutting edges n of tool T according to the following equation (1) when regenerative chatter is detected as chatter vibrations. In equation (1), "k" is an integer greater than or equal to 1. In equation (1), "n" corresponds to the number of cutting edges of a tool (tool T) currently in use.

[0038] SS = (60 × ω0) / (n × k) … (1)

[0039] Recommended condition calculation unit 172 calculates recommended rotation speed SS according to equation (1) using the set number of cutting edges n of tool T. Recommended condition calculation unit 172 obtains the number of cutting edges n from tool information management unit 160. Recommended rotation speed SS is the rotation speed corresponding to the k-th order stable pocket in the stability limit diagram. Such recommended rotation speed SS corresponds to a spindle rotation speed that is less prone to occurrence of chatter vibrations. For example, when the spindle rotation speed at the occurrence of chatter vibrations is "S0" and k-th order (e.g., second order) recommended rotation speed SS obtained from equation (1) falls within the stable region, control device 4 can cause chatter vibrations to converge by changing the spindle rotation speed from S0 to recommended rotation speed SS. The recommended machining condition determined by recommended condition calculation unit 172 is not limited to the recommended rotation speed and may be a recommended value of feed rate.

[0040] Tuning management unit 173 sets a recommended machining condition for tool T, a vibration detection flag indicating the presence or absence of chatter vibration detection, an adjustment flag indicating whether the user is permitted to change (adjust) the machining condition, and a notification flag indicating whether notification control unit 156 described later is enabled. In the initial state, the vibration detection flag is set to "not detected (0)", the adjustment flag is set to "prohibited (0)", and the notification flag is set to "enabled (1)". However, the initial value of each flag may be set arbitrarily. Tuning management unit 173 stores the set information (hereinafter also referred to as "tuning information") separately from any other information. The process of updating tuning information will be described later.

[0041] Notification control unit 156 performs notification control of prompting a user operation (e.g., information input operation, screen switching operation, or application start operation). In the present embodiment, notification control unit 156 prompts the operator to input the number of cutting edges of tool T. Notification control unit 156 is configured to be able to control display device 542 and speaker 543 through output unit 128. Notification control unit 156 may control display device 542 and / or speaker 543 to perform a notification for operation panel 54 to prompt a user operation. As will be described later in detail, when a predetermined notification condition is satisfied, notification control unit 156 performs notification control of guiding the operator to input of the number of cutting edges of tool T.

[0042] Display control unit 158 is configured to perform display control of displaying information about machining device 2. Display control unit 158 is configured to be able to control display device 542 through output unit 128. Display control unit 158 may display, on display device 542, the recommended machining condition calculated by recommended condition calculation unit 172. As will be described later in detail, display control unit 158 may display, on display device 542, at least one of a status screen showing a control state of machining device 2, a tuning screen for monitoring vibrations, a program screen showing a control program of machining device 2, a first setting screen for setting tool information, and a second setting screen for switching the enable / disable setting of notification control unit 156, in response to a user operation.

[0043] For example, when a basic application for using machine tool 1 is started in response to a user operation, display control unit 158 displays a home screen on operation panel 54 (touch panel display). Fig. 4 shows an example of the home screen. A home screen Sc1 shown in Fig. 4, which is an operation screen with the touch panel function, displays a plurality of buttons (including buttons P1, P2) that can be selected by the operator. For example, a plurality of buttons for starting various programs are displayed. Button P1 is a start button for an application for managing tool T (hereinafter also referred to as a "tool management application"). Button P2 is a start button for an application for suppressing chatter vibrations (hereinafter also referred to as a "vibration control application").

[0044] When the basic application is started, control device 4 performs a processing flow F1 described below. Fig. 5 is a flowchart showing a process performed in the basic application. "S" in the flowchart refers to a step.

[0045] In processing flow F1 shown in Fig. 5, control device 4 determines in S11 whether the number of cutting edges of tool T held by spindle 18 has been set. Control device 4 determines whether the number of cutting edges of tool T has been set based on, for example, whether tool information management unit 160 is managing the number of cutting edges of tool T. When the number of cutting edges of tool T has been set (YES in S11), the process proceeds to S12. The processing of S12 will be described later. In contrast, while the number of cutting edges of tool T has not been set (NO in S11), the determination of S11 is repeated. When the number of cutting edges of tool T is set, processing of S12 is performed. In S12, a vibration monitoring process described later (see Fig. 8) is performed.

[0046] The operator can set the number of cutting edges of tool T through the tool management application. The operator can start the tool management application by operating button P1 on home screen Sc1 shown in Fig. 4. When a predetermined user operation (hereinafter also referred to as a "first setting operation") is performed in the tool management application, control device 4 performs a processing flow F2 described below. Fig. 6 is a flowchart showing the process for cutting edge number setting.

[0047] In processing flow F2 shown in Fig. 6, control device 4 (display control unit 158) displays the first setting screen on operation panel 54 (touch panel display) in S21. Fig. 7 shows an example of the first setting screen. The first setting operation is, for example, an operation of selecting the "Chatter Control" tab (see Fig. 7) in the tool management application.

[0048] A first setting screen Sc2 shown in Fig. 7 receives input of information about tool T (tool information). Specifically, first setting screen Sc2 includes an input unit P21 that receives input of the number of cutting edges, an input unit P22 that receives input of a minimum spindle override, an input unit P23 that receives input of a maximum spindle override, and an input unit P24 that receives input of a tool diameter. However, the contents displayed on the first setting screen may be changed as needed.

[0049] In S22 of Fig. 6, control device 4 (tool information reception unit 122) determines whether the operator has input tool information to the first setting screen. While no tool information has been input to the first setting screen (NO in S22), the process skips S23 and proceeds to S24. In contrast, when tool information has been input (YES in S22), control device 4 (tool information management unit 160) sets the input tool information in S23. Unset tool information is changed to set tool information by the setting in S23. In contrast, for the set tool information, a numerical value is updated by the new setting. The set tool information is managed by tool information management unit 160. For example, when the number of cutting edges is input, the number of cutting edges is set. As a result, determination is YES in S11 of Fig. 5. When at least one of the minimum spindle override and the maximum spindle override is input, the adjustment range of tool T is updated. When the tool diameter is input, the tool diameter is set. The set tool diameter may be used for calculating a peripheral speed.

[0050] When the setting of S23 is complete, the process proceeds to S24. In S24, control device 4 determines whether to end the display of the first setting screen. When neither the system nor the operator requests the end of display of the first setting screen, determination is NO in S24, and the process returns to the first step (S21). As a result, the display of the first setting screen continues. In contrast, when the display end operation is performed by, for example, the operator, determination is YES in S24, and processing flow F2 ends. The operation of ending display of the first setting screen is, for example, an operation of selecting a tab (such as the "GENERAL" tab shown in Fig. 7) other than the "Chatter Control" tab in the tool management application.

[0051] When the number of cutting edges of tool T held by spindle 18 has been set, a vibration monitoring process is performed in S12 of Fig. 5. Fig. 8 is a flowchart showing the details of the vibration monitoring process.

[0052] In a processing flow F3 shown in Fig. 8, control device 4 (detection unit 116) obtains vibration data and a rotation speed of spindle 18 in S31. In S32, control device 4 then determines whether machining device 2 is performing cutting based on the information obtained in S31. When machining device 2 is not performing cutting (NO in S32), the process proceeds to S361. In contrast, when machining device 2 is performing cutting (YES in S32), the process proceeds to S33.

[0053] In S33, control device 4 obtains current status information and adds the obtained status information to history data storage unit 146 in association with a current time. In S34, control device 4 then determines whether chatter vibrations have occurred in tool T held by spindle 18. Specifically, simulation unit 170 obtains the frequency (vibration frequency) and magnitude (vibration level) of the vibrations occurring in tool T based on the vibration data obtained in S31, and determines whether chatter vibrations have been detected by chatter detection unit 171. When chatter vibrations are not detected (NO in S34), the process proceeds to S361. In contrast, when chatter vibrations are detected (YES in S34), the process proceeds to S35.

[0054] In S361, control device 4 updates the tuning information. Specifically, tuning management unit 173 sets the vibration detection flag to "not detected (0)" and the adjustment flag to "prohibited (0)". The process then proceeds to S39.

[0055] In S35, control device 4 calculates a recommended machining condition for suppressing chatter vibrations that have occurred in tool T held by spindle 18. Specifically, recommended condition calculation unit 172 calculates the recommended machining condition for tool T by performing a simulation using the number of cutting edges of tool T held by spindle 18. Recommended condition calculation unit 172 may calculate a recommended rotation speed based on the above-described equation (1). Recommended condition calculation unit 172 may calculate a plurality of recommended values. Recommended condition calculation unit 172 may calculate a first recommended value higher than a control value of a current spindle rotation speed and a second recommended value lower than the control value of the current spindle rotation speed.

[0056] Subsequently, control device 4 updates the tuning information in S362. Specifically, tuning management unit 173 sets the recommended machining condition for tool T calculated by recommended condition calculation unit 172. In addition, tuning management unit 173 sets the vibration detection flag to "detected (1)".

[0057] In S371, control device 4 then determines whether a vibration monitoring screen (see Figs. 11 to 13), which will be described later, is displayed. When the vibration monitoring screen is displayed (YES in S371), the process proceeds to S39. In contrast, when the vibration monitoring screen is not displayed (NO in S371), the process proceeds to S372.

[0058] In S372, control device 4 determines whether notification control unit 156 is enabled. Specifically, when the notification flag is set to "disabled (0)", determination is NO in S372, and the process proceeds to S39. In contrast, when the notification flag is set to "enabled (1)", determination is YES in S372, and the process proceeds to S38.

[0059] In S38, control device 4 performs notification control of prompting the user to display the vibration monitoring screen. Specifically, notification control unit 156 displays, on operation panel 54 (display device 542), a first message screen including a message prompting, for example, display of the vibration monitoring screen. The first message screen may be displayed as pop-up. Fig. 9 shows an example of the first message screen. A message screen Sc3 shown in Fig. 9 includes a message indicating that vibrations have been detected (i.e., chatter vibrations have been detected) by simulation unit 170, a message prompting display of the vibration monitoring screen ("Chatter Control" screen), and a message instructing how to disable a notification (processing in S38). However, the contents displayed on the first message screen may be changed as needed.

[0060] When processing of S38 is performed, the process proceeds to S39 with the first message screen displayed. Control device 4 ends the display of the first message screen in accordance with a user operation. The operator can end the display of the first message screen at any timing.

[0061] In S39, control device 4 determines whether to end the system of machine tool 1. For example, when the operation of machine tool 1 is stopped in accordance with an instruction from the system or the operator, control device 4 determines that the system is to be ended (YES in S39), and processing flow F3 ends. In this case, control device 4 performs a system end process and ends the system. In contrast, when control device 4 determines that the system is not to be ended (NO in S39), the process returns to the first step (S31). During operation of the system, processing flow F3 is repeatedly performed.

[0062] Control device 4 performs display control of displaying a vibration monitoring screen in response to a predetermined user operation (hereinafter also referred to as a "vibration monitoring operation"). Specifically, the operator can start the vibration control application by operating button P2 on home screen Sc1 shown in Fig. 4. When the vibration control application is started, control device 4 performs a processing flow F4 described below. In the present embodiment, the user operation on button P2 corresponds to the vibration monitoring operation. Also during the execution of processing flow F4, processing flow F1 shown in Fig. 5 is repeatedly performed in the background.

[0063] Fig. 10 is a flowchart showing a process for vibration monitoring. In processing flow F4, control device 4 (display control unit 158) displays the vibration monitoring screen on operation panel 54 (touch panel display) in S41. Fig. 11 shows an example of the vibration monitoring screen.

[0064] A vibration monitoring screen Sc4 includes an operation unit M1 and tabs M2, M3. Operation unit M1 receives a user operation to instruct an end of the vibration control application. Tabs M2, M3 receive user operations to switch screens. The operator selects either of tabs M2, M3. In vibration monitoring screen Sc4 shown in Fig. 11, tab M2 is selected. Vibration monitoring screen Sc4 further includes a status screen Sc41, a tuning screen Sc42, and a program screen Sc43. Display control unit 158 performs display control for program screen Sc43 based on program information stored in program storage unit 140. Program screen Sc43 displays a machining program currently being performed.

[0065] Fig. 12 shows an example tuning screen. Tuning screen Sc42 shown in Fig. 12 includes an override bar M20, pieces of data D21 to D24, a determination result D25, markers M21 to M23, and operation units M24 to M27. Display control unit 158 performs display control for tuning screen Sc42 based on, for example, status information (including a vibration level) stored in history data storage unit 146 and tuning information (including a recommended machining condition and a vibration detection flag) managed by tuning management unit 173. The status information and tuning information are sequentially updated through processing flow F3 shown in Fig. 8.

[0066] Override bar M20, which is a scale object extending to the right and left of the screen, provides override scales. The override indicates the percentage of a change in the control value of the spindle rotation speed relative to the program command value of the current spindle rotation speed. The program command value is the spindle rotation speed specified by the machining program. The program command value does not change unless a new value is specified on the program. The control value of the spindle rotation speed is a control command value of the spindle rotation speed received by machining device 2, and may be, for example, a spindle rotation speed specified by a programmable logic controller (PLC). When normal control has been performed, the actual spindle rotation speed detected by rotation sensor 18a is generally consistent with the control value of the spindle rotation speed.

[0067] In override bar M20, the central position indicates 100% of the program command value, and the positions at both ends indicate the adjustment range of the spindle rotation speed. In the example shown in Fig. 12, the right-end position indicates 150% (change ratio: "+50%") of the program command value, and the left-end position indicates 50% (change ratio: "-50%") of the program command value. In other words, the adjustment range of the spindle rotation speed is set to the range of 50% to 150% of the program command value. This suppresses a sudden change in the rotation speed (control state) of spindle 18 beyond the operator's assumption.

[0068] Data D21 and marker M21 indicate a control command value (e.g., 2500 min-1) of a current spindle rotation speed relative to override bar M20. When the machining condition (in particular, the spindle rotation speed) is not adjusted, as shown in Fig. 12, marker M21 is displayed at a 100% position. In other words, the control value of the spindle rotation speed becomes equal to the program command value. In contrast, when the machining condition (in particular, the spindle rotation speed) is changed by the adjustment process described later (Fig. 16), the display position of marker M21 is changed in proportion to the changed ratio.

[0069] Among the one or more recommended values (recommended machining conditions) calculated in S35 of Fig. 8, only those within the adjustment range are displayed on the tuning screen. Recommended values outside the adjustment range are not displayed on the tuning screen. Additionally, since processing in S35 of Fig. 8 is not performed when no chatter vibrations have occurred, the recommended machining condition is not displayed on the tuning screen. On tuning screen Sc42 shown in Fig. 12, data D22 and marker M22 indicate a first recommended value (e.g., 2878 min-1) of the spindle rotation speed relative to override bar M20. Data D23 and marker M23 indicate a second recommended value (e.g., 2466 min-1) of the spindle rotation speed relative to override bar M20. The operator can select one recommended value from the first recommended value and the second recommended value displayed on tuning screen Sc42 by operating operation unit M24 or M25.

[0070] Data D24 indicates a vibration state of spindle 18. In the example shown in Fig. 12, data D24 indicates a vibration level (68 dB) and a peak frequency (1152 Hz) currently being detected. The peak frequency refers to a vibration frequency at which the vibration level is maximized.

[0071] A determination result D25 indicates the presence or absence of vibration detection. In the example shown in Fig. 12, determination result D25 indicates that chatter vibrations are occurring (e.g., the text string "Chatter Occurring"). This means that the vibration detection flag is set to "Detected (1)". If the vibration detection flag is set to "Not detected (0)", the display contents of determination result D25 change. When the chatter vibrations have converged through the adjustment process, a message indicating this (e.g., the text string "Chatter Vibration Avoided") may be displayed as determination result D25.

[0072] Operation unit M26 (e.g., "reset button") receives a user operation (hereinafter also referred to as "reset operation") to instruct an override reset process. When operation unit M26 receives a reset operation, control device 4 returns the override to 100% (no change). However, when the reset prohibition condition is satisfied, operation unit M26 is rendered inactive. The reset prohibition condition can be set arbitrarily. Operation unit M27 (e.g., "adjustment button") receives a user operation (hereinafter also referred to as an "adjustment start operation") to instruct the start of the adjustment process for suppressing chatter vibrations. Operation unit M27 is rendered active when the adjustment flag is set to "permitted (1)" and is rendered inactive when the adjustment flag is set to "prohibited (0)". A user operation on an inactive operation unit is disabled. The inactive operation unit may be displayed in grayed-out form.

[0073] Fig. 13 shows a first example of the status screen. Status screen Sc41 shown in Fig. 13 includes a marker M10, operation units M11 to M13, and pieces of data D11, D12. Display control unit 158 performs display control for status screen Sc41 based on, for example, status information (including a vibration level and a spindle rotation speed) stored in history data storage unit 146. The status information is sequentially updated through processing flow F3 shown in Fig. 8.

[0074] Data D11 indicates the shift of the vibration level (dB). Data D12 indicates the shift of the spindle rotation speed (min-1). The operator can switch data collection between enabled (ON) and disabled (OFF) via operation unit M11. When data collection is enabled, each time the status information (including a vibration level and a spindle rotation speed) is calculated in S33 of Fig. 8, the display contents of status screen Sc41 are updated with the latest data. For example, data D11 and data D12 display changes in vibration level and spindle rotation speed in real time. In contrast, when data collection is disabled, the display contents of status screen Sc41 are no longer updated. Additionally, the operator can change the scale of the horizontal axis of the graph displaying data D11 and data D12 by operating control units M12, M13.

[0075] Marker M10 indicates the adjustment instruction timing for the status information (data D11, data D12) displayed on the status screen. The adjustment instruction timing is timing at which the operator instructs the adjustment process. In the present embodiment, the timing at which the active operation unit M27 (Fig. 12) receives the adjustment start operation corresponds to the adjustment instruction timing.

[0076] When data collection is disabled, for example, past data is displayed on the status screen. Fig. 14 shows a second example of the status screen. When data collection is disabled, display control unit 158 may display a history data screen Sc44 in addition to status screen Sc41 on operation panel 54 (touch panel display). In status screen Sc41 shown in Fig. 14, data D11 and data D12 indicate past vibration levels and spindle rotation speeds. History data screen Sc44 shows adjustment history information about data D11 and data D12. The adjustment history information includes, for example, the total number of adjustments, the details of changes in spindle rotation speed, the details of changes in feed rate, the program name, and the program line (block number). When the total number of adjustments is more than one, adjustment history information is displayed for each adjustment number indicating how many times adjustments have been made. The operator can select an adjustment number using an operation unit M40 to display, on history data screen Sc44, the adjustment history information corresponding to the selected adjustment number. Display control unit 158 may read status information (history data) for the period specified by the operator from history data storage unit 146 and display the status information on display device 542.

[0077] In S42 of Fig. 10, control device 4 (condition reception unit 124) determines whether one recommended value has been selected by the operator from the recommended machining conditions displayed on the tuning screen. When one recommended value is not selected on the tuning screen (NO in S42), the process proceeds to S46. In contrast, when, for example, any one of the first recommended value and the second recommended value is selected by operation unit M24 or M25 on tuning screen Sc42 (Fig. 12), determination is YES in S42, and the process proceeds to S43.

[0078] In S43, control device 4 updates the tuning information. Specifically, tuning management unit 173 sets the adjustment flag to "permitted (1)". As a result, the operator can perform adjustment (tuning) of the machining condition by operating operation unit M27 (adjustment button) on tuning screen Sc42 (Fig. 12). Subsequently, control device 4 determines in S44 whether an adjustment start operation (e.g., an operation of pressing the adjustment button) by the operator has been detected. When the adjustment start operation has not been detected (NO in S44), the process proceeds to S46.

[0079] In S46, control device 4 determines whether to end the vibration control application. When neither the system nor the operator requests the end of the vibration control application, determination is NO in S46, and the process proceeds to S47. In S47, control device 4 determines whether a predetermined user operation (hereinafter also referred to as a "second setting operation") has been performed in the vibration control application. The second setting operation is, for example, an operation of selecting tab M3 on vibration monitoring screen Sc4 (Fig. 11). When the second setting operation is not received from the operator (NO in S47), the process returns to the first step (S41). In contrast, when the second setting operation is performed in the vibration control application (YES in S47), control device 4 (display control unit 158) displays the second setting screen instead of the tuning screen on operation panel 54 (touch panel display) in S51. Fig. 15 shows an example of the second setting screen.

[0080] A second setting screen Sc5 shown in Fig. 15 receives a user operation for setting parameters related to the vibration control application. Specifically, second setting screen Sc5 includes an operation unit P3 that receives a user operation of switching on / off of the notification. The operator can change the notification setting through operation unit P3. In S52 of Fig. 10, control device 4 determines whether the notification setting has been changed by the operator.

[0081] When the notification setting has been changed (YES in S52), in S53, control device 4 (tuning management unit 173) updates the notification flag in response to a user operation on operation unit P3. Specifically, when the notification setting is changed from off to on, the notification flag is set to "enabled (1)", and notification by notification control unit 156 (e.g., processing in S38 of Fig. 8) is performed. In contrast, when the notification setting is changed from on to off, the notification flag is set to "disabled (0)", and notification by notification control unit 156 is no longer performed.

[0082] When processing of S53 is performed, the process proceeds to S54. In contrast, when the notification setting has not been changed (NO in S52), the process skips S53 and proceeds to S54. In S54, control device 4 determines whether the user setting in the vibration control application is complete. When the user setting is not complete (NO in S54), the process returns to S51. As a result, the display of the second setting screen continues. In contrast, when, for example, the operator performs the setting end operation, determination is YES in S54, and the process returns to S41. As a result, the display of the second setting screen ends, and instead, the tuning screen is displayed again. The setting end operation is, for example, an operation of selecting tab M2 on vibration monitoring screen Sc4 (Fig. 11).

[0083] In the vibration control application, the vibration monitoring screen is displayed (S41). Then, when the active operation unit M27 receives an adjustment start operation on tuning screen Sc42 (Fig. 12), determination is YES in S44, and the process proceeds to S45. In S45, control device 4 performs the tuning process (adjustment process). Fig. 16 is a flowchart showing the details of the tuning process (adjustment process).

[0084] In a processing flow F6 shown in Fig. 16, control device 4 changes the machining condition of machine tool 1 in step S61 to bring the machining condition closer to the tuning information (recommended machining condition). Specifically, simulation unit 170 outputs the recommended value selected by the operator (see S42 of Fig. 10) to numerical control unit 150. Numerical control unit 150 then changes the control value of the spindle rotation speed to the recommended value (recommended rotation speed) and controls spindle 18.

[0085] In S62, control device 4 (display control unit 158) then updates the status screen and the tuning screen based on the latest status information and tuning information. The status information and tuning information are sequentially updated in S12 (processing flow F3) of processing flow F1 (Fig. 5), which is repeatedly performed in the background also during the execution of processing flow F6.

[0086] In S63, control device 4 then determines whether the adjustment end condition has been satisfied. In the present embodiment, the adjustment end condition is satisfied when chatter vibrations have converged (i.e., when determination is NO in S34 of Fig. 8). However, the adjustment end condition may be satisfied also when chatter vibrations have become larger than before start of the adjustment process or when the type or frequency of the chatter vibrations has changed. The adjustment end condition can be set arbitrarily.

[0087] When the adjustment end condition is not satisfied (NO in S63), in S64, control device 4 determines whether the recommended value (e.g., recommended rotation speed) recalculated in S35 of Fig. 8 after changing the machining condition is within the adjustment range. When the recalculated recommended value is within the adjustment range (YES in S64), the process proceeds to S65. Thus, the process of adjusting the machining condition continues. In S65, control device 4 changes the machining condition (e.g., spindle rotation speed) of machine tool 1 to bring the machining condition closer to the recalculated recommended value. The process then returns to S62.

[0088] As long as the recommended value recalculated after the change of the machining condition is within the adjustment range (YES in S64) and the adjustment end condition is not satisfied (NO in S63), the process of adjusting the machining condition is continuously performed. In contrast, when the adjustment end condition is satisfied (YES in S63) or the recalculated recommended value is outside the adjustment range (NO in S64), the process proceeds to S66. This completes the adjustment process. In S66, control device 4 (tuning management unit 173) sets the adjustment flag to "prohibited (0)". As a result, operation unit M27 (adjustment button) is rendered inactive on tuning screen Sc42 (Fig. 12). When the processing in S66 is performed, processing flow F6 ends, and the process proceeds to S46 of Fig. 10.

[0089] When it is determined in S46 of Fig. 10 that the vibration control application is to be ended, processing flow F4 ends. For example, when the operator operates operation unit M1 on vibration monitoring screen Sc4 shown in Fig. 11, determination is YES in S46. In this case, control device 4 ends the display of vibration monitoring screen Sc4 and ends the vibration control application.

[0090] In machine tool 1 according to the present embodiment, when tool T held by spindle 18 is changed, if the number of cutting edges of the changed tool T is not set, the vibration monitoring processing (S12 of Fig. 5) shown in Fig. 8 is not performed. When the vibration monitoring process has not been performed, the calculation of the recommended machining condition for suppressing chatter vibrations is not performed. As a result, the quality of the machined surface of the workpiece is likely to deteriorate due to chatter vibrations occurring during machining (during cutting).

[0091] Thus, control device 4 (controller) according to the present embodiment performs a processing flow F7 described below, thus suppressing a situation in which the number of cutting edges remains unset after tool change. According to processing flow F7, the setting of the number of cutting edges by the operator or automatic setting based on estimation of the number of cutting edges by the system is more likely to be performed early during tool change.

[0092] Fig. 17 is a flowchart showing a process for setting management of tool cutting edge number. Processing flow F7 shown in Fig. 17 starts at, for example, tool change. In the present embodiment, control device 4 performs a tool change process to change a first tool (tool T before change) held by spindle 18 with a second tool (tool T after change) in accordance with the tool change program stored in program storage unit 140 (Fig. 3). Specifically, as the tool change process starts, a tool transport device (not shown) transports the second tool from the tool magazine to a predetermined standby position. During this time, reader 19 may read tool information from the second tool, or camera 55 may photograph the second tool. Subsequently, an automatic tool change device (not shown) changes the first tool held by spindle 18 with the second tool positioned at the standby position. This completes the tool change process. Control device 4 starts processing flow F7, which will be described below, simultaneously with the start of the tool change process, or during or immediately after the execution of the tool change process.

[0093] In S71, control device 4 determines whether the number of cutting edges of the second tool has been set. For example, when the number of cutting edges of the second tool has been set based on information on the second tool obtained by reader 19 (i.e., information presented by the information presentation unit of the second tool), the determination is YES in S71. For example, when the information obtained by reader 19 from the information presentation unit of the second tool indicates the number of cutting edges of the second tool, the number of cutting edges of the second tool is set by second setting unit 162. Further, also when the information obtained by reader 19 from the information presentation unit of the second tool includes identification information of the second tool and tool information management unit 160 obtains the number of cutting edges of the second tool from tool data storage unit 142 (Fig. 3) based on the identification information of the second tool, the number of cutting edges of the second tool is set by second setting unit 162. However, tool data storage unit 142 does not necessarily store the number of cutting edges of the second tool. When the determination is YES in S71, processing is not performed in S72 and thereafter, and processing flow F7 ends.

[0094] In contrast, when the number of cutting edges of the second tool is not set (NO in S71), the process proceeds to S72. In S72, control device 4 determines whether the second tool is a tool compatible with simulation unit 170 (hereinafter also referred to as a "vibration-control-compatible tool"). Information indicating the type of vibration-control-compatible tool is stored in advance in tool data storage unit 142 (Fig. 3). When the vibration monitoring process is performed on a tool that is not a vibration-control-compatible tool, determination is always NO in S34 of Fig. 8, and a simulation is no longer performed. In the present embodiment, an end mill (e.g., an end mill with equal pitches) is registered as a vibration-control-compatible tool. The end mill is suitable for a vibration-related simulation. However, the type of vibration-control-compatible tool can be set arbitrarily. Control device 4 may determine whether the second tool is a vibration-control-compatible tool based on information (e.g., tool ID or model number) obtained by reader 19 from the information presentation unit of the second tool.

[0095] When the second tool is not a vibration-control-compatible tool (NO in S72), processing is not performed in S74 and thereafter, and processing flow F7 ends. In contrast, when the second tool is a vibration-control-compatible tool (YES in S72), the process proceeds to S74.

[0096] In S74, control device 4 determines whether the cutting edge number estimation function is enabled. Machine tool 1 according to the present embodiment has a first cutting edge number estimation function and a second cutting edge number estimation function described below.

[0097] The first cutting edge number estimation function estimates the number of cutting edges of the second tool based on the external appearance of the second tool. Specifically, estimation unit 163 estimates the number of cutting edges of the second tool based on image information showing the external appearance of the second tool obtained by camera 55. Estimation unit 163 may estimate the number of cutting edges of the second tool based on one image or estimate the number of cutting edges of the second tool based on a plurality of images.

[0098] The second cutting edge number estimation function estimates the number of cutting edges of the second tool based on the behavior of the second tool held by spindle 18. Specifically, estimation unit 163 estimates the cutting edge passing frequency of the second tool using vibration data of the second tool obtained by acceleration sensor 30, and estimates the number of cutting edges of the second tool based on the estimated cutting edge passing frequency and the rotation speed of spindle 18. Estimation unit 163 may calculate the number of cutting edges N of the second tool according to the following equation (2).

[0099] N = F × 60 / n … (2)

[0100] In equation (2), "F" is the cutting edge passing frequency (Hz), and "n" is the spindle rotation speed (min-1). When the calculated value of "N" is not an integer, estimation unit 163 may estimate the nearest integer to the calculated value of "N" as the number of cutting edges of the second tool.

[0101] Determination is YES in S74 when at least one of the first and second cutting edge number estimation functions is normal, and determination is NO in S74 when an abnormality has occurred in both the first and second cutting edge number estimation functions. It is not necessary for the machine tool to have a plurality of cutting edge number estimation functions. For example, any one of the first cutting edge number estimation function and the second cutting edge number estimation function may be omitted. Further, control device 4 according to the present embodiment may be mounted in a machine tool that does not have the cutting edge number estimation function. In such a machine tool, determination is always NO in S74.

[0102] When the cutting edge number estimation function is enabled (YES in S74), in S75, control device 4 estimates the number of cutting edges of the second tool using the enabled cutting edge number estimation function. When both the first and second cutting edge number estimation functions are enabled, control device 4 (estimation unit 163) may estimate the number of cutting edges of the second tool using the simpler first cutting edge number estimation function. When estimating the number of cutting edges of the second tool using the second cutting edge number estimation function, estimation unit 163 may wait for machining device 2, to which the second tool is attached, to start machining (cutting), and then, may estimate the number of cutting edges during machining.

[0103] When the estimation of the cutting edge number (S75) is complete, in S76, estimation unit 163 of tool information management unit 160 sets the estimated number of cutting edges of the second tool. Then, processing flow F7 ends. Estimation unit 163 may store the estimated number of cutting edges of the second tool in tool data storage unit 142 (Fig. 3) in association with the identification information and type of the second tool.

[0104] In contrast, when the cutting edge number estimation function is not enabled (NO in S74), control device 4 determines in S77 whether notification control unit 156 is enabled. Specifically, when the notification flag is set to "disabled (0)", determination is NO in S77, and processing flow F7 ends. When the notification flag is set to "enabled (1)", determination is YES in S77, and the process proceeds to S78.

[0105] In S78, control device 4 performs notification control of guiding the user to input of the number of cutting edges of the second tool. Specifically, for example, notification control unit 156 displays, on operation panel 54 (display device 542), a second message screen including a message guiding the user to input (setting) of the number of cutting edges of the second tool. The second message screen may be displayed as pop-up. Fig. 18 shows an example of the second message screen. A message screen Sc6 shown in Fig. 18 includes identification information of the tool in use, a message indicating that the tool in use is compatible with the simulation function, a message guiding the operator to input of the number of cutting edges of the second tool (e.g., a message indicating that a simulation is enabled based on simulation-related setting), and a message instructing how to disable the notification (processing in S78). However, the contents displayed on the second message screen may be changed as appropriate.

[0106] The processing of S78 described above allows the operator to become aware of the presence of simulation unit 170. The operator who wishes to use simulation unit 170 is considered to input the number of cutting edges of the second tool on the tool management application (e.g., first setting screen Sc2 shown in Fig. 7) by following the guidance of the second message screen. This enables the utilization of the vibration control application (simulation unit 170). When the processing of S78 is performed, processing flow F7 (Fig. 17) ends with the second message screen displayed. Control device 4 ends the display of the second message screen in response to a user operation. The operator can end the display of the second message screen at any timing. In the present embodiment, two pieces of notification processing, that is, the notification processing in S38 (Fig. 8) and the notification processing in S78 (Fig. 17), are switched between enabled / disabled together by a common setting (see Fig. 15). However, each notification processing may be switched between enabled / disabled separately by an individual setting.

[0107] As described above, machine tool 1 according to the present embodiment includes the tool holder (spindle 18) that detachably holds a tool, and control device 4. Control device 4 includes estimation unit 163 (see Fig. 3) that estimates the number of cutting edges of tool T attached to spindle 18, and simulation unit 170 (see Fig. 3) that performs a simulation on the behavior (e.g., vibrations) of tool T held by the tool holder using the number of cutting edges. The number of cutting edges used in the simulation performed by simulation unit 170 is the number of cutting edges estimated by estimation unit 163. A variety of tools can be used in machine tool. Thus, information on all tools that can be used in machine tool 1 is not necessarily stored in advance in tool data storage unit 142. However, machine tool 1, which includes estimation unit 163, can estimate the number of cutting edges of tool T. This facilitates the execution of the simulation described above using the number of cutting edges. Such a simulation contributes to vibration countermeasure support.

[0108] Also, simulation unit 170 calculates the recommended machining condition for tool T held by the tool holder by performing a simulation using the set number of cutting edges when the number of cutting edges of tool T held by the tool holder is set (see S11, S12 of Fig. 5 and S35 of Fig. 8). When machine tool 1 performs machining in accordance with the recommended machining condition calculated as described above, machining defects such as chatter vibrations are less likely to occur.

[0109] Also, in change of tool T held by the tool holder, estimation unit 163 estimates the number of cutting edges of a changed tool T based on at least one of the external appearance and behavior of the changed tool T. This configuration facilitates appropriate estimation of the number of cutting edges of tool T.

[0110] Estimation unit 163 according to the above embodiment estimates the number of cutting edges of tool T when a predetermined estimation condition is satisfied (S75 of Fig. 17). In detail, the predetermined estimation condition includes the number of cutting edges of the changed tool not being set (first requirement: S71 of Fig. 17), the changed tool being a tool compatible with simulation unit 170 (second requirement: S72 of Fig. 17), and the function of estimating the number of cutting edges of tool T being enabled (third requirement: S74 of Fig. 17). This configuration facilitates estimation of the number of cutting edges of tool T at appropriate timing.

[0111] In the embodiment described above, control device 4 further includes notification control unit 156 that performs notification control of guiding the user to input of the number of cutting edges of tool T (Fig. 3). When all of the above first to third requirements (S71, S72, S74) are satisfied, the estimation condition is satisfied, and estimation unit 163 estimates the number of cutting edges (S75). In contrast, when the estimation condition is not satisfied and predetermined notification condition is satisfied, notification control unit 156 performs notification control (S78). In detail, the predetermined notification condition includes the number of cutting edges of a changed tool not being set (S71 of Fig. 17), the changed tool being a tool compatible with simulation unit 170 (S72 of Fig. 17), the function of estimating the number of cutting edges of tool T held by the tool holder not being implemented in machine tool 1 or not being enabled (S74 of Fig. 17), and notification control unit 156 being enabled (S77 of Fig. 17). This configuration can prompt the user to set the number of cutting edges as necessary when the number of cutting edges is not estimated. This suppresses a situation in which the number of cutting edges remains unset, thereby facilitating the utilization of simulation.

[0112] However, each of the estimation condition and the notification condition may be changed as appropriate. For example, instead of processing flow F7 shown in Fig. 17, processing flows F7A to F7D shown in Figs. 19 to 22 may be adopted.

[0113] Fig. 19 is a flowchart showing a first modification of the processing flow shown in Fig. 17. In processing flow F7A according to the first modification, S77 of Fig. 17 is omitted.

[0114] Fig. 20 is a flowchart showing a second modification of the processing flow shown in Fig. 17. In processing flow F7B according to the second modification, S72 of Fig. 17 is omitted.

[0115] Fig. 21 is a flowchart showing a third modification of the processing flow shown in Fig. 17. In processing flow F7C according to the third modification, S72, S77 of Fig. 17 are omitted.

[0116] Fig. 22 is a flowchart showing a fourth modification of the processing flow shown in Fig. 17. In processing flow F7D according to the fourth modification, S72, S74, S77, S78 of Fig. 17 are omitted. Control device 4 includes the setting unit (second setting unit 162) that sets the number of cutting edges of tool T using information presented by the information presentation unit provided in tool T (Fig. 3). When the number of cutting edges of a changed tool T has been set by second setting unit 162 (YES in S71), the number of cutting edges is not estimated. In contrast, when the number of cutting edges of the changed tool T has not been set by second setting unit 162 (NO in S71), estimation unit 163 estimates the number of cutting edges of the changed tool T (S75), and the estimated number of cutting edges is set (S76). This configuration facilitates setting of the number of cutting edges of the changed tool T.

[0117] The execution timing (trigger) of processing flows F7 and F7A to F7D is not limited to a time of tool change and can be changed as appropriate. For example, these processing flows may be performed each time the machine tool system is started.

[0118] Simulation unit 170 may perform any other simulation in addition to or instead of the vibration simulation described above. The simulation may be a three-dimensional (3D) simulation.

[0119] Simulation unit 170 may perform a simulation for machine protection control (hereinafter also referred to as "MPC simulation") using the number of cutting edges. Simulation unit 170 reads in advance (predict) the position of a moving tool by, for example, the MPC simulation and changes the setting (e.g., target position) related to tool movement control or stops the movement of the tool when the predicted tool position is inappropriate. The MPC simulation can reduce the likelihood that the tool will collide with a jig or the like. By performing the MPC simulation using the number of cutting edges, simulation unit 170 can predict the behavior (trajectory) of the cutting edge, leading to improved prediction accuracy.

[0120] Simulation unit 170 may perform a simulation for tool wear and / or workpiece surface roughness (hereinafter also referred to as "machining simulation"). The number of cutting edges affects the manner of contact between the tool and the workpiece, and tool wear and workpiece surface roughness change depending on the manner of contact between the tool and the workpiece. By performing machining simulation using the number of cutting edges, simulation unit 170 can simulate the manner of contact between the tool and the workpiece with high accuracy, leading to improved estimation accuracy of tool wear and workpiece surface roughness.

[0121] The above embodiment has illustrated a horizontal machining center as machine tool 1. However, the machine tool is of any type and may be a vertical machining center, a turning center, or a multitasking machine having the functions of both the machining center and the turning center.

[0122] Fig. 23 shows a modification of the machine tool shown in Fig. 1. A machine tool 1A shown in Fig. 23 has a process force monitor (PFM) function. In detail, machine tool 1A includes a control device 4A, servo drivers 211R, 211X, 211Y, 211Z, servo motors 212R, 212X, 212Y, 212Z, a moving body 213, a spindle head 231, a strain sensor 234, a table 236, and a tool T. Spindle head 231 includes a spindle 232 and a housing 233. Housing 233 accommodates spindle 232. Spindle 232 detachably holds tool T. Moving body 213 is attached to spindle head 231.

[0123] Servo driver 211R sequentially receives a target rotation speed from control device 4A and controls servo motor 212R based on the target rotation speed. Servo motor 212R rotatably drives spindle 232 about the Z-direction axis.

[0124] Spindle head 231 moves (is displaced) together with moving body 213. Each of servo drivers 211X, 211Y, 211Z sequentially receives a target position from control device 4A. Servo drivers 211X, 211Y, 211Z sequentially receive feedback of the actual positions of servo motors 212X, 212Y, 212Z, respectively, and bring the actual positions of servo motors 212X, 212Y, 212Z closer to the target positions. Servo motors 212X, 212Y, 212Z feed-drive moving body 213 in the X direction, the Y direction, and the Z direction, respectively, via ball screws, for example, thereby adjusting spindle 232 to any positions in the X direction, the Y direction, and the Z direction.

[0125] Workpiece W is fixed to table 236. Control device 4A controls servo drivers 211R, 211X, 211Y, 211Z in accordance with a machining program (e.g., an NC program) to move tool T and machine workpiece W with tool T. The machining program may indicate the machining path of tool T. For example, when machine tool 1A cuts workpiece W into a square shape, tool T repeatedly moves on the same machining path (square path). Machine tool 1A may slightly move spindle head 231 in the Z-axis direction each time tool T completes one revolution of the machining path.

[0126] Strain sensor 234 detects a cutting force applied to tool T held by spindle 232 and outputs a detection result to control device 4A. Control device 4A detects wear and / or chipping of tool T based on the waveform of the cutting force detected by strain sensor 234. Specifically, control device 4A compares the waveform (reference waveform) of the first cutting force with the waveform of the second cutting force at the same machining position after normalization and phase matching. Control device 4A then detects how the cutting force has changed based on the comparison result and detects wear and / or chipping of tool T based on the change in the waveform of the cutting force. Although only one strain sensor 234 is shown in Fig. 23, the number of strain sensors is arbitrary and may be one or more than one (e.g., four).

[0127] Fig. 24 is a graph showing an example relationship between chipping and a cutting force of tool T. In the example shown in Fig. 24, tool T is an end mill with equal pitches, and the second cutting edge is chipped. A waveform D110 (solid line) indicates the cutting force before the occurrence of chipping. A waveform D120 (dashed line) indicates the cutting force after the occurrence of chipping. The waveform in a section P110 indicates the waveform of the cutting force of the first cutting edge. The waveform in a section P120 shows the waveform of the cutting force of the second cutting edge. Since the first cutting edge is not chipped, there is no significant change in the waveform of the cutting force between before and after the occurrence of chipping in section P110. In contrast, in section P120, the amplitude of the waveform of the cutting force changes significantly before and after chipping. The comparison between waveforms D110 and D120 in section P120 can reveal that the cutting force acting on tool T decreases significantly due to chipping of the cutting edge.

[0128] Control device 4A includes HMI processing unit 110, a data processing unit 112A, a data storage unit 114A, and a detection unit 116A, as shown in Fig. 23. Data processing unit 112A includes a numerical control unit 150A, notification control unit 156, display control unit 158, tool information management unit 160, and a simulation unit 170A. The basic configuration of control device 4A is the same as that of control device 4 shown in Fig. 3. However, detection unit 116A detects the cutting force of tool T based on the sensor output from strain sensor 234. Simulation unit 170A performs a machining simulation using the set number of cutting edges. Numerical control unit 150A performs machining control corresponding to machine tool 1A. Data storage unit 114A stores data corresponding to machine tool 1A.

[0129] Control device 4A performs processing flow F1 shown in Fig. 5 in response to the start of the basic application. However, in S12 of Fig. 5, control device 4A performs a processing flow F10 described below instead of processing flow F3 (Fig. 8). Fig. 25 is a flowchart showing a modification of the processing in S12 of Fig. 5.

[0130] In processing flow F10 shown in Fig. 25, control device 4A (simulation unit 170A) performs a machining simulation as a set job. In S110, control device 4A measures the waveform (reference waveform) of a first cutting force. Control device 4A repeats pieces of processing of steps S120 to S170 until the simulation is complete (S115). For example, when the simulation includes a command to move tool T ten times on the same machining path, control device 4A obtains the waveform of the first cutting force during the first machining and repeatedly performs pieces of processing of steps S120 to S170 nine times during the second machining and thereafter.

[0131] In step S120, control device 4A measures the waveform of the second cutting force. Subsequently, in S125, control device 4A normalizes waveforms (the waveforms of the first and second cutting forces) and matches the phases of the waveforms to each other. Subsequently, in S130, control device 4A compares the cutting force per cutting edge in each waveform based on the set number of cutting edges of tool T.

[0132] Further, control device 4A repeatedly performs pieces of processing of S140 to S165 based on the set number of cutting edges of tool T (S135). In S140, control device 4A determines whether the cutting force of the cutting edge of tool T has increased by a predetermined first threshold or more. More specifically, control device 4A compares the cutting force (amplitude) of a cutting edge in the waveform of the second cutting force with the cutting force (amplitude) of a cutting edge in the waveform of the first cutting force to obtain a difference therebetween. Control device 4A determines whether the difference (an amount of increase in cutting force) is greater than or equal to the first threshold. The process proceeds to S145 when control device 4A determines that the cutting force of the cutting edge has increased by the first threshold or more (YES in S140), and otherwise (NO in S140), the process proceeds to S150. In S145, control device 4A determines that the cutting edge of tool T is worn.

[0133] In S150, control device 4A determines whether the cutting force of cutting edge of tool T has decreased by a predetermined second threshold or more. More specifically, control device 4A compares the cutting force (amplitude) of a cutting edge in the waveform of the second cutting force with the cutting force (amplitude) of a cutting edge in the waveform of the first cutting force to obtain a difference therebetween. Control device 4A determines whether the difference (an amount of decrease in cutting force) is greater than or equal to the second threshold. The process proceeds to S155 when control device 4A determines that the cutting force of the cutting edge has decreased by the second threshold or more (YES in S150), and otherwise (NO in S150), the process proceeds to S160. In S155, control device 4A determines that the cutting edge of tool T is chipped. In S160, control device 4A determines that there is no abnormality in the cutting edge of tool T.

[0134] In S165, control device 4A determines whether processing of every cutting edge of tool T is complete. The process proceeds to S170 when control device 4A determines that processing of every cutting edge of tool T is complete (YES in S165), and otherwise (NO in S165), the process returns to S115. In S170, control device 4A determines whether the simulation (job) is complete. Processing flow F10 ends when control device 4A determines that the simulation is complete (YES in S170), and otherwise (NO in S170), the process returns to S135.

[0135] Also in machine tool 1A according to this modification, when tool T is changed, the above-described processing flow F10 (simulation) is not performed (see Fig. 5) if the number of cutting edges of a changed tool T is not set. However, control device 4A also performs processing flow F2 (Fig. 6) in response to a user operation, and performs processing flow F7 (Fig. 17) in tool change, in the same manner as control device 4 (Fig. 1). This suppresses a situation in which the number of cutting edges remains unset after tool change. The contents of the screen displayed in S12 of Fig. 6 or S78 of Fig. 17 (Fig. 7 or Fig. 18) are appropriately changed according to machine tool 1A.

[0136] In the embodiment described above, the adjustment process (Fig. 16) is performed in response to a user operation (adjustment start operation). However, the present invention is not limited thereto, and the process of adjusting the machining condition (tuning process) may be automatically performed when chatter vibrations are detected. For example, when chatter vibrations are detected, simulation unit 170 may calculate a recommended machining condition using the number of cutting edges, and perform the process of adjusting the machining condition (Fig. 16) based on the calculated recommended machining condition.

[0137] The tool holder in the present invention is not limited to a tool spindle for rotating a tool, and may be, for example, a pot that holds a tool in a tool magazine or holds a tool transported between the tool magazine and the automatic tool changer. In this case, for example, the position of the tool transported within the tool magazine or between the tool magazine and the automatic tool changer can be predicted by the above-described MPC simulation, thereby preventing interference between the tool and a structure arranged around the tool transport path.

[0138] Fig. 26 is a functional block diagram showing a modification of the cutting edge number estimation function of the machine tool. Fig. 27 shows the database (table) in Fig. 26.

[0139] Referring to Figs. 26 and 27, in this modification, estimation unit 163 estimates the number of cutting edges of a tool by referring to a database 312 on a correspondence between a model number of a tool and the number of cutting edges of a tool.

[0140] More specifically, database 312 is further stored in data storage unit 114. Database 312 consists of a table showing the correspondence between the tool model number and the number of cutting edges of the tool. The model number of the tool is set by a tool manufacturer to identify a tool type and may be a number, a symbol, or a combination thereof. In the example shown in Fig. 27, the model number of the tool consists of an alphabetic character indicating a tool class, such as an end mill or a milling cutter, and a number assigned per tool type in each tool class. In database 312, a model number of a tool and the number of cutting edges of the tool of this model number are shown in correspondence with each other. Database 312 may be prepared by a machine tool manufacturer or provided by a tool manufacturer.

[0141] Estimation unit 163 has an information acquisition unit 311. Information acquisition unit 311 checks whether the number of cutting edges of the tool has been set in the setting unit (first setting unit 161 or second setting unit 162 in Fig. 3). When the number of cutting edges of the tool is not set in the setting unit, information acquisition unit 311 obtains the model number of the tool held by the tool holder (spindle 18) from tool data storage unit 142. Information acquisition unit 311 checks whether the model number of the tool held by the tool holder is included in database 312. When the model number of the tool held by the tool holder is not included in database 312, estimation unit 163 may estimate the number of cutting edges of the tool using another cutting edge number estimation function.

[0142] When the model number of the tool held by the tool holder is included in database 312, information acquisition unit 311 checks the model number of the tool held by the tool holder against database 312. Information acquisition unit 311 estimates the number of cutting edges of the tool by obtaining the number of cutting edges corresponding to the model number of the tool held by the tool holder from database 312. For example, in database 312 shown in Fig. 27, when the model number of the tool held by the tool holder is "E1230", information acquisition unit 311 estimates the number of cutting edges of the tool by obtaining the number of cutting edges "3" corresponding to the model number "E1230".

[0143] Fig. 28 is a functional block diagram showing another form of the cutting edge number estimation function in Fig. 26. Referring to Fig. 28, database 312 is stored in an external server 321 provided by the tool manufacturer. The present invention is not limited thereto, and database 312 may be present in, for example, a management system of a factory where machine tool 1 is installed.

[0144] It should be understood that the embodiment disclosed herein has been presented for the purpose of illustration and non-restrictive in every respect. It is therefore intended that the scope of the present invention is defined by claims, rather than the description above, and encompasses all modifications and variations equivalent in meaning and scope to the claims.

[0145] This nonprovisional application is based on Japanese Patent Application No. 2024-097364 filed on June 17, 2024 with the Japan Patent Office, the entire contents of which are hereby incorporated by reference.

[0146] 1, 1A machine tool; 2 machining device; 4, 4A control device; 18, 232 spindle; 18a rotation sensor; 18b tool detection sensor; 19 reader; 30 acceleration sensor; 40 signal processor; 50 controller; 52 vibration processor; 54 operation panel; 55 camera; 110 HMI processing unit; 112, 112A data processing unit; 114, 114A data storage unit; 116, 116A detection unit; 150, 150A numerical control unit; 156 notification control unit; 158 display control unit; 160 tool information management unit; 161 first setting unit; 162 second setting unit; 163 estimation unit; 170, 170A simulation unit; 171 detection unit; 172 recommended condition calculation unit; 173 tuning management unit; 234 strain sensor; 311 information acquisition unit; 312 database; 321 external server; T tool; W workpiece.

Claims

1. A machine tool comprising: a tool holder that detachably holds a tool; an estimation unit that estimates a number of cutting edges of a tool attached to the tool holder; and a simulation unit that performs a simulation on behavior of the tool held by the tool holder using the number of cutting edges.

2. The machine tool according to claim 1, further comprising a setting unit that sets a number of cutting edges of a tool, wherein in change of the tool held by the tool holder, the estimation unit estimates a number of cutting edges of a changed tool when the number of cutting edges of the changed tool is not set.

3. The machine tool according to claim 1, wherein in change of the tool held by the tool holder, the estimation unit estimates a number of cutting edges of a changed tool based on at least one of an external appearance and behavior of the changed tool.

4. The machine tool according to claim 1, wherein the estimation unit estimates a number of cutting edges of a tool when a predetermined estimation condition is satisfied, the predetermined estimation condition includes at least one of a number of cutting edges of a changed tool not being set, and a changed tool being a tool compatible with the simulation unit, and the machine tool further comprises a notification control unit that performs notification control of guiding a user to input of a number of cutting edges of a tool when the predetermined estimation condition is not satisfied and when a predetermined notification condition is satisfied.

5. The machine tool according to any one of claims 1 to 4, wherein when a number of cutting edges of the tool held by the tool holder is set, the simulation unit performs the simulation using the set number of cutting edges to calculate a recommended machining condition for the tool held by the tool holder.

6. The machine tool according to claim 1, further comprising a setting unit that sets a number of cutting edges of a tool, wherein the estimation unit includes an information acquisition unit that obtains information from a database on a correspondence between a model number of a tool and a number of cutting edges of a tool, and the information acquisition unit when the number of cutting edges of the tool is not set in the setting unit, checks whether a model number of the tool held by the tool holder is included in the database, and when the model number of the tool held by the tool holder is included in the database, checks the model number of the tool held by the tool holder against the database and obtains a corresponding number of cutting edges to estimate a number of cutting edges of the tool.

Citation Information

Patent Citations

  • Machine tool and display control device

    JP2023004510A

  • Game machine

    JP2024097364A

  • Vibration information display device for machine tool

    US20160346891A1

  • Machining state information estimation device and machining state diagnosis apparatus

    US20220283564A1

  • Machine tool and display control device

    US20240149383A1