Machine tool

The machine tool addresses the challenge of lacking effective vibration countermeasures by incorporating a tool holding unit, an estimation unit for tool teeth, and a simulation unit, which enhances the accuracy of machining conditions and reduces chatter vibrations.

JP7681162B1Active Publication Date: 2025-05-23DMG MORI CO LTD
View PDF 7 Cites 0 Cited by

Patent Information

Application Number
JP2024097364
Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
Filing Date
2024-06-17
Publication Date
2025-05-23
Estimated Expiration
2044-06-17

AI Technical Summary

Technical Problem

Existing machine tools lack effective support for vibration countermeasures, particularly when the control unit does not store necessary tool information, leading to reduced accuracy in calculating recommended machining conditions.

Method used

A machine tool equipped with a tool holding unit, an estimation unit that estimates the number of teeth of the tool, and a simulation unit that uses this information to simulate the tool's behavior, enabling appropriate assistance for vibration countermeasures.

Benefits of technology

The machine tool effectively supports vibration countermeasures by accurately estimating tool information and simulating tool behavior, thereby improving the quality of machined surfaces and reducing chatter vibrations.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007681162000001_ABST
    Figure 0007681162000001_ABST
Patent Text Reader

Abstract

A machine tool capable of appropriately implementing support for vibration countermeasures is provided. [Solution] A machine tool includes a tool holding unit that detachably holds a tool, and a control unit 4. The control unit 4 includes an estimation unit 163 and a simulation unit 170. The estimation unit 163 is configured to estimate the number of teeth of a tool attached to the tool holding unit. The simulation unit 170 is configured to execute a simulation regarding the behavior of the tool held in the tool holding unit, using the number of teeth.
Need to check novelty before this filing date? Find Prior Art

Description

[Technical field]

[0001] The present invention relates to a technique for assisting in measures against vibrations occurring in a machine tool. [Background technology]

[0002] In machine tools, the occurrence of chatter vibration leads to a deterioration in the quality of the machined surface of the workpiece. The main types of chatter vibration are regenerative chatter, which is caused by the undulations of the machined surface caused by vibration fluctuating the cutting thickness of the tool, and forced chatter due to resonance based on the natural frequency. Operators often deal with chatter vibration based on their own experience. For example, the operator listens to the sound of vibration, observes the machined surface of the workpiece, predicts the cause of chatter vibration, and adjusts the machining conditions. If the chatter vibration still does not subside, the operator changes the method of fixing the workpiece or changes the tool. Such a countermeasure is selected based on the operator's own experience and knowledge. However, there are limitations to measures based on the operator's own experience and knowledge. JP 2023-4510 A (Patent Document 1) discloses a machine tool that determines recommended machining conditions for suppressing chatter vibration. [Prior art documents] [Patent documents]

[0003] [Patent Document 1] Patent Publication No. 2023-4510 Summary of the Invention [Problem to be solved by the invention]

[0004] In the technology described in the above Patent Document 1, tool information is stored in advance in the control unit of the machine tool. The machine tool then uses the tool information to find recommended machining conditions and displays the recommended machining conditions to the user, thereby assisting in vibration countermeasures. However, if the control unit does not store the necessary tool information, there is a possibility that assistance in vibration countermeasures will not be performed or that the accuracy of calculation of the recommended machining conditions will be reduced.

[0005] An object of one aspect of the present invention is to provide a machine tool capable of appropriately implementing support for vibration countermeasures. [Means for solving the problem]

[0006] One aspect of the present invention is a machine tool comprising a tool holding unit that removably holds a tool, an estimation unit that estimates the number of teeth of a tool attached to the tool holding unit, and a simulation unit that uses the number of teeth to perform a simulation of the behavior of the tool held in the tool holding unit. Effect of the Invention

[0007] According to one aspect of the present invention, it is possible to provide a machine tool capable of appropriately implementing assistance for vibration countermeasures. [Brief description of the drawings]

[0008] [Figure 1] 1 is a diagram showing a schematic configuration of a machine tool according to an embodiment of the present invention; [Diagram 2] 1 is a perspective view showing a schematic configuration of a processing device according to an embodiment of the present invention; [Diagram 3] FIG. 2 is a functional block diagram of a control unit according to the present embodiment. [Figure 4] FIG. 13 is a diagram illustrating an example of a home screen. [Diagram 5] 5 is a flowchart showing a process executed by a basic application in the machine tool according to the present embodiment. [Figure 6] 5 is a flowchart showing a process related to setting the number of blades according to the present embodiment. [Figure 7] FIG. 11 is a diagram showing an example of a first setting screen. [Figure 8] 5 is a flowchart showing details of a vibration monitoring process according to the present embodiment. [Figure 9] FIG. 13 is a diagram showing an example of a first message screen. [Figure 10]5 is a flowchart showing a vibration monitoring process according to the present embodiment. [Figure 11] FIG. 13 is a diagram showing an example of a vibration monitoring screen. [Figure 12] FIG. 13 is a diagram showing an example of a tuning screen. [Figure 13] FIG. 13 is a diagram showing a first example of a status screen. [Figure 14] FIG. 13 is a diagram showing a second example of the status screen. [Figure 15] FIG. 13 is a diagram showing an example of a second setting screen. [Figure 16] 6 is a flowchart showing details of an adjustment process according to the present embodiment. [Figure 17] 5 is a flowchart showing a process related to blade number setting management according to the present embodiment. [Figure 18] FIG. 13 is a diagram showing an example of a second message screen. [Figure 19] 18 is a flowchart showing a first modified example of the process flow shown in FIG. 17. [Figure 20] 18 is a flowchart showing a second modified example of the processing flow shown in FIG. 17. [Figure 21] 18 is a flowchart showing a third modified example of the process flow shown in FIG. 17. [Figure 22] 18 is a flowchart showing a fourth modified example of the processing flow shown in FIG. 17. [Figure 23] FIG. 2 is a diagram showing a modification of the machine tool shown in FIG. [Figure 24] 13 is a graph showing an example of the relationship between tool breakage and cutting force in a machine tool according to a modified example. [Diagram 25] 7 is a flowchart showing a modified example of the process of S12 in FIG. 5. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

[0009] DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS The present invention will now be described with reference to the accompanying drawings, in which the same or corresponding components are designated by the same reference numerals.

[0010] FIG. 1 is a diagram showing a schematic configuration of a machine tool according to this embodiment. The machine tool 1 according to this embodiment is a horizontal machining center. The machine tool 1 includes a processing device 2, a control unit 4, a signal processing device 40, and a drive circuit 56. An operation panel 54 is provided on the housing of the processing device 2. The operation panel 54 has an input device 541, a display device 542, and a speaker 543. The operation panel 54 according to this embodiment has a touch panel display that can be operated by an operator. This touch panel display functions as the input device 541 and the display device 542.

[0011] The machining device 2 is further provided with a camera 55 that photographs the tool T. The camera 55 is provided so as to be able to photograph the tool T that is transported from a tool magazine (not shown) toward the spindle 18 for automatic tool replacement in the spindle 18. The camera 55 obtains image information indicating the state of the tool T and outputs the image information to the control unit 4.

[0012] The machining device 2 is further provided with a reader 19 capable of reading tool information from the tool T. The reader 19 is provided so as to be capable of reading tool information from the tool T transported from a tool magazine (not shown) toward the spindle 18 for automatic tool replacement in the spindle 18. Specifically, when an information presenting unit is provided on the tool T, the information presented by the information presenting unit is read by the reader 19. The information presenting unit may be a label that displays at least one of a predetermined code (e.g., a barcode, a two-dimensional code, or a color code), a character string, and a numeric string, or may be an IC (integrated circuit) chip that stores information in a manner readable by the reader 19. The tool information acquired by the reader 19 is output to the control unit 4.

[0013] Further, the spindle 18 is provided with a rotation sensor 18a for detecting a rotation state (e.g., a rotation speed) of the spindle 18, and a tool detection sensor 18b. The tool detection sensor 18b is configured to detect attachment / detachment of a tool to the spindle 18. Information acquired by each of the rotation sensor 18a and the tool detection sensor 18b is output to the control unit 4.

[0014] 2 is a perspective view showing a schematic configuration of the processing device 2 with the housing removed. In FIG. 2, the left-right direction, the up-down direction, and the front-rear direction when viewing the processing device 2 from the front are defined as the X-axis direction, the Y-axis direction, and the Z-axis direction, respectively.

[0015] The processing device 2 includes a bed 10, a column 12 erected on the bed 10, a spindle head 14, a table 16, a spindle 18, guide rails 22, 26, 32, and saddles 24, 34. The spindle head 14 has an axis in the Z-axis direction and supports the spindle 18 rotatably around the axis. The spindle head 14 is provided with a spindle motor for rotating the spindle 18. The spindle head 14 rotates the spindle 18 according to an instruction from the control unit 4. The spindle 18 detachably holds a tool T. When the processing device 2 is used, a holder portion 20 of the tool T is attached to the spindle 18 so that the tool T and the spindle 18 are coaxially arranged. This allows the tool T to be held by the spindle 18. The spindle 18 corresponds to an example of a "tool holding portion."

[0016] The spindle head 14 is movably provided on the front side of the column 12. Specifically, a guide rail 22 is provided on the front side of the column 12. The saddle 24 is supported by the guide rail 22 in a manner that allows it to move in the X-axis direction. A guide rail 26 is provided on the front side of the saddle 24. The spindle head 14 is supported by the guide rail 26 in a manner that allows it to move in the Y-axis direction. The processing device 2 includes, as an XY drive device for moving (displacing) the saddle 24 and the spindle head 14, for example, a feed mechanism and a servo motor for driving the feed mechanism. The feed mechanism may be a screw feed mechanism using a ball screw. The XY drive device is controlled by the control unit 4. The spindle 18 is movable in the X-axis and Y-axis directions by driving the saddle 24 and the spindle head 14. An acceleration sensor 30 is built into the spindle head 14.

[0017] The workpiece W is fixed to the table 16 via a jig (not shown). The table 16 is provided on the bed 10 so as to be movable. Specifically, a guide rail 32 is provided on the upper surface of the bed 10. The saddle 34 is supported by the guide rail 32 in a manner that allows it to move in the Z-axis direction. The table 16 is fixed on the saddle 34. The processing device 2 includes, as a Z drive device for moving (displacing) the saddle 34, for example, a feed mechanism and a servo motor for driving the feed mechanism. The feed mechanism may be a screw feed mechanism using a ball screw. The Z drive device is controlled by the control unit 4. The workpiece W is movable in the Z-axis direction by driving the saddle 34. The processing device 2 can adjust the relative position between the workpiece W and the tool T three-dimensionally.

[0018] The control unit 4 shown in FIG. 1 detects chatter vibrations of the tool T held by the spindle 18 based on an output signal of the acceleration sensor 30 built in the spindle head 14. In detail, the acceleration sensor 30 detects vibrations occurring in the tool T during machining of the workpiece W, and outputs a signal corresponding to the vibrations. The acceleration data detected by the acceleration sensor 30 is input to a signal processing device 40. The signal processing device 40 includes an A / D converter 42 and a frequency analysis device 44. The analog signal output from the acceleration sensor 30 is converted into a digital signal by the A / D converter 42, and then input to the frequency analysis device 44. The frequency analysis device 44 performs FFT (Fast Fourier Transform) processing on the input digital signal. The vibration data subjected to FFT processing by the frequency analysis device 44 is input to the control unit 4.

[0019] The control unit 4 includes a control device 50 and a vibration processing device 52. The vibration processing device 52 acquires the vibration data from the signal processing device 40 (frequency analysis device 44). The vibration processing device 52 receives information indicating a control state from the control device 50 and sends a control command to the control device 50. The vibration processing device 52 executes a predetermined process regarding the vibration of the tool T held by the spindle 18 based on the signal processing device 40 and the signal received from the control device 50. For example, based on the signal input from the signal processing device 40, the vibration processing device 52 displays a screen (status screen) showing the vibration state of the spindle 18 and determines the presence or absence of chatter vibration.

[0020] The control device 50 controls an actuator (e.g., a motor) according to a machining program that is manually or automatically generated. The machining program is, for example, an NC (Numerical Control) program. For example, when turning the workpiece W, the control device 50 may drive the spindle head 14 by driving a servo motor via a drive circuit 56. The control device 50 may also rotate the spindle 18 by driving a spindle motor via the drive circuit 56.

[0021] FIG. 3 is a functional block diagram of the control unit 4. The control unit 4 includes a processor, such as a CPU (Central Processing Unit), and a storage device, such as a memory and storage. The storage device stores a computer program. In this embodiment, each component of the control unit 4 shown in FIG. 3 is realized by hardware, such as a processor, and a computer program (software) that supplies processing instructions to the processor. The computer program may include a device driver, an operating system, various application programs located in higher layers, and a library that provides common functions to these programs. Each part shown in FIG. 3 corresponds to a functional unit (functional block) rather than a hardware unit.

[0022] The control unit 4 includes an HMI (Human Machine Interface) processing unit 110, a data processing unit 112, a data storage unit 114, and a detection unit 116. The HMI processing unit 110 is responsible for processing related to the user interface. The data processing unit 112 executes various processes based on information acquired by the HMI processing unit 110, information stored in the data storage unit 114, and information detected by the detection unit 116. The data processing unit 112 also functions as an interface for each of the HMI processing unit 110, the data storage unit 114, and the detection unit 116.

[0023] The HMI processing unit 110 includes an input unit 120. When a user operation is input to the input device 541 (FIG. 1), a signal corresponding to the user operation is output to the input unit 120. The input unit 120 acquires information based on the signal input from the input device 541. The input unit 120 includes a tool information receiving unit 122 and a condition receiving unit 124. The tool information receiving unit 122 receives tool information (e.g., the type of tool, the tool diameter, and the number of teeth) related to the tool T. The condition receiving unit 124 receives information related to machining conditions such as the spindle rotation speed or the feed rate. In this embodiment, a touch panel display functions as the input device 541. However, the configuration of the input device 541 can be changed as appropriate. The input device 541 may be configured by a physical operation unit (such as a button, a handle, or a dial).

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

[0025] HMI processing unit 110 further includes output unit 128. Output unit 128 provides various information to the operator. Output unit 128 provides visible information (e.g., images) to the operator through display device 542 (FIG. 1). Output unit 128 also provides sound information (including voice) to the operator through speaker 543 (FIG. 1). Output unit 128 may cause display device 542 to display at least one of an information screen showing information related to machine tool 1 and an operation screen (e.g., a keyboard and a machine operation panel) for accepting user operations. In this embodiment, a touch panel display functions as display device 542. However, display device 542 may include a lamp and / or a warning light.

[0026] The detection unit 116 includes a vibration detection unit 130 and a rotation speed detection unit 132. The vibration detection unit 130 detects the vibration of the spindle 18 (and thus the vibration of the tool T) based on the sensor output from the acceleration sensor 30 (FIG. 1). Specifically, the vibration detection unit 130 acquires vibration data output from the signal processing device 40. The rotation speed detection unit 132 detects the rotation speed of the spindle 18 (and thus the rotation speed of the tool T) based on the output of a rotation sensor 18a (FIG. 1) provided on the spindle 18. An example of the rotation sensor 18a is a rotary encoder.

[0027] The 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. The program storage unit 140 stores a machining program (for example, an NC program). The tool data storage unit 142 stores information (tool information) about a plurality of types of tools that can be used in the machine tool 1 in association with the identification information (tool ID) of the tool. The tool information includes, for example, the type of tool, the tool diameter, and the number of teeth. The tool data storage unit 142 may manage the tool information by type of tool. The tool information may be distinguished by the model number of the tool. The range of machining conditions that can be adjusted by the vibration processing device 52 (FIG. 1) (hereinafter, also referred to as the "adjustment range") may also be included in the tool information. The display data storage unit 144 stores screen data to be displayed on the display device 542 (for example, soft keys and dialog boxes to be displayed on the screen).

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

[0029] The 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. The numerical control unit 150 is embodied, for example, as a function of the control device 50 (FIG. 1). The simulation unit 170 is embodied, for example, as a function of the vibration processing device 52 (FIG. 1). The configuration shown in FIG. 1 may be modified so that at least a part of the signal processing device 40 is included in the control unit 4. For example, the simulation unit 170 may have the function of the frequency analysis device 44.

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

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

[0032] The first setting unit 161 uses information input by the user to set parameters (tool information) of the tool T held by the spindle 18. The first setting unit 161 sets, for example, the number of teeth input by the operator to the input device 541 as the number of teeth of the tool T.

[0033] The second setting unit 162 sets parameters (tool information) of the tool T held in the spindle 18 using information read by the reader 19 (FIG. 1). For example, during automatic tool replacement in the spindle 18, the second setting unit 162 sets the number of teeth of the tool T attached to the spindle 18 using information (e.g., a tool ID) presented by an information presenting unit provided on the replaced tool T. The second setting unit 162 may obtain the number of teeth of the tool T from the tool information stored in the tool data storage unit 142 based on the tool ID of the tool T, and set the obtained number of teeth of the tool T.

[0034] The estimation unit 163 is configured to estimate the number of teeth of the tool T attached to the spindle 18. The estimation unit 163 estimates the number of teeth of the tool T using, for example, at least one of information acquired by the acceleration sensor 30 and information acquired by the camera 55. Although details will be described later, the estimation unit 163 executes estimation of the number of teeth when a predetermined estimation condition is established, and sets the estimated number of teeth as the number of teeth of the tool T.

[0035] The simulation unit 170 executes a simulation regarding the behavior (e.g., vibration) of the tool T by using the number of teeth of the tool T held by the spindle 18. Specifically, the 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, the frequency analyzer 44 shown in FIG. 1 receives a signal continuously output from the acceleration sensor 30, and performs Fourier analysis (frequency analysis) on the signal at a predetermined sampling interval. The simulation unit 170 acquires the vibration data that has been subjected to FFT processing from the frequency analyzer 44, and acquires the frequency (vibration frequency) and the magnitude (vibration level) of the vibration occurring in the tool T based on the vibration data. The chatter detection unit 171 determines that chatter vibration has occurred when the vibration level exceeds a predetermined threshold value. The recommended condition calculation unit 172 calculates recommended machining conditions for the tool T by performing a simulation using the number of teeth of the tool T held by the spindle 18. In detail, the recommended condition calculation unit 172 calculates machining conditions (recommended machining conditions) that suppress chatter vibration when chatter vibration occurs. An example of the recommended machining conditions is a recommended value of the spindle rotation speed (hereinafter, also referred to as "recommended rotation speed").

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

[0038] SS = (60 × ω0) / (n × k) (1) The recommended condition calculation unit 172 calculates the recommended rotation speed SS according to the formula (1) using the number of teeth n of the set tool T. The recommended condition calculation unit 172 acquires the number of teeth n from the tool information management unit 160. The recommended rotation speed SS is a rotation speed corresponding to the k-th stable pocket in the stability limit diagram. Such a recommended rotation speed SS corresponds to a spindle rotation speed at which chatter vibration is unlikely to occur. For example, when the spindle rotation speed when chatter vibration occurs is "S0" and the k-th (e.g., second) recommended rotation speed SS obtained by the formula (1) is within the stable region, the control unit 4 can converge the chatter vibration by changing the spindle rotation speed from S0 to the recommended rotation speed SS. Note that the recommended machining conditions obtained by the recommended condition calculation unit 172 are not limited to the recommended rotation speed, and may be a recommended value of the feed rate.

[0039] The tuning management unit 173 sets the recommended machining conditions for the tool T, a vibration detection flag indicating whether or not chatter vibration is detected, an adjustment flag indicating whether or not the user is permitted to change (adjust) the machining conditions, and a notification flag indicating whether or not the notification control unit 156 described below is enabled. In the initial state, the vibration detection flag is set to "no detection (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 can be set arbitrarily. The tuning management unit 173 stores the set information (hereinafter also referred to as "tuning information") separately from other information. The process of updating the tuning information will be described later.

[0040] The notification control unit 156 executes notification control to prompt a user operation (for example, an information input operation, a screen switching operation, or an application startup operation). In this embodiment, the notification control unit 156 prompts the operator to input the number of teeth of the tool T. The notification control unit 156 is configured to be able to control the display device 542 and the speaker 543 through the output unit 128. The notification control unit 156 may control the display device 542 and / or the speaker 543 so that the operation panel 54 issues a notification to prompt a user operation. Although details will be described later, the notification control unit 156 executes notification control to guide the operator to input the number of teeth of the tool T when a predetermined notification condition is met.

[0041] The display control unit 158 ​​is configured to execute display control for displaying information related to the processing device 2. The display control unit 158 ​​is configured to be able to control the display device 542 through the output unit 128. The display control unit 158 ​​may cause the display device 542 to display the recommended processing conditions calculated by the recommended condition calculation unit 172. Although details will be described later, the display control unit 158 ​​may cause the display device 542 to display at least one of a status screen showing the control state of the processing device 2, a tuning screen for monitoring vibration, a program screen showing the control program of the processing device 2, a first setting screen for setting tool information, and a second setting screen for switching the enable / disable setting of the notification control unit 156, in response to a user operation.

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

[0043] When the basic application is started, the control unit 4 executes a process flow F1 described below. Figure 5 is a flowchart showing the process executed in the basic application. "S" in the flowchart indicates a step.

[0044] In the process flow F1 shown in FIG. 5, the control unit 4 determines in S11 whether or not the number of teeth of the tool T held by the spindle 18 has been set. The control unit 4 determines whether or not the number of teeth of the tool T has been set, for example, based on whether or not the tool information management unit 160 manages the number of teeth of the tool T. If the number of teeth of the tool T has been set (YES in S11), the process proceeds to S12. The process of S12 will be described later. On the other hand, while the number of teeth of the tool T has not been set (NO in S11), the determination of S11 is repeated. Then, when the number of teeth of the tool T is set, the process of S12 is executed. In S12, a vibration monitoring process (see FIG. 8) described later is executed.

[0045] An operator can set the number of teeth of the tool T through the tool management app. The operator can start the tool management app by operating a button P1 on the home screen Sc1 shown in Fig. 4. Then, when a predetermined user operation (hereinafter also referred to as a "first setting operation") is performed on the tool management app, the control unit 4 executes a process flow F2 described below. Fig. 6 is a flowchart showing the process related to setting the number of teeth.

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

[0047] 7 accepts input of information (tool information) related to the tool T. Specifically, the first setting screen Sc2 includes an input section P21 that accepts input of the number of blades, an input section P22 that accepts input of the lowest spindle override, an input section P23 that accepts input of the highest spindle override, and an input section P24 that accepts input of the tool diameter. However, the contents displayed on the first setting screen can be changed as appropriate.

[0048] In S22 of FIG. 6, the control unit 4 (tool information receiving unit 122) judges 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. On the other hand, when tool information has been input (YES in S22), the control unit 4 (tool information management unit 160) sets the input tool information in S23. The unset tool information is changed to set by the setting in S23. On the other hand, the set tool information has its numerical value updated by the new setting. The set tool information is managed by the tool information management unit 160. For example, when the number of teeth is input, the number of teeth is set. As a result, YES is judged in S11 of FIG. 5. When at least one of the lowest spindle override and the highest spindle override is input, the adjustment range of the tool T is updated. When the tool diameter is input, the tool diameter is set. The set tool diameter may be used to calculate the peripheral speed.

[0049] When the setting of S23 is completed, the process proceeds to S24. In S24, the control unit 4 judges whether or not to end the display of the first setting screen. If the end of the display of the first setting screen is not requested by either the system or the operator, NO is judged in S24, and the process returns to the first step (S21). As a result, the display of the first setting screen continues. On the other hand, if, for example, the operator performs an operation to end the display, YES is judged in S24, and the process flow F2 ends. The operation to end the display of the first setting screen is, for example, an operation to select a tab other than the "Chatter Control" tab in the tool management application (such as the "General" tab shown in FIG. 7).

[0050] When the number of teeth of the tool T held by the spindle 18 has already been set, the vibration monitoring process is executed in S12 of Fig. 5. Fig. 8 is a flowchart showing the details of the vibration monitoring process.

[0051] In process flow F3 shown in Fig. 8, the control unit 4 (detection section 116) acquires vibration data and rotation speed of the spindle 18 in S31. In the following S32, the control unit 4 determines whether or not the processing device 2 is in cutting based on the information acquired in S31. If the processing device 2 is not in cutting (NO in S32), the process proceeds to S361. On the other hand, if the processing device 2 is in cutting (YES in S32), the process proceeds to S33.

[0052] In S33, the control unit 4 acquires current status information, associates the acquired status information with the current time, and adds it to the history data storage unit 146. In the following S34, the control unit 4 determines whether chatter vibration is occurring in the tool T held by the spindle 18. Specifically, the simulation unit 170 acquires the frequency (vibration frequency) and magnitude (vibration level) of the vibration occurring in the tool T based on the vibration data acquired in S31, and determines whether chatter vibration is detected by the chatter detection unit 171. If chatter vibration is not detected (NO in S34), the process proceeds to S361. On the other hand, if chatter vibration is detected (YES in S34), the process proceeds to S35.

[0053] In S361, the control unit 4 updates the tuning information. Specifically, the tuning manager 173 sets the vibration detection flag to "no detection (0)" and the adjustment flag to "prohibited (0)." After that, the process proceeds to S39.

[0054] In S35, the control unit 4 calculates recommended machining conditions for suppressing chatter vibrations generated for the tool T held by the spindle 18. Specifically, the recommended condition calculation unit 172 calculates the recommended machining conditions for the tool T by executing a simulation using the number of teeth of the tool T held by the spindle 18. The recommended condition calculation unit 172 may calculate the recommended rotation speed based on the above-mentioned formula (1). The recommended condition calculation unit 172 may calculate a plurality of recommended values. The recommended condition calculation unit 172 may calculate a first recommended value higher than the control value of the current spindle rotation speed and a second recommended value lower than the control value of the current spindle rotation speed.

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

[0056] In the next S371, the control unit 4 determines whether or not a vibration monitoring screen (see Figs. 11 to 13) described below is being displayed. If the vibration monitoring screen is being displayed (YES in S371), the process proceeds to S39. On the other hand, if the vibration monitoring screen is not being displayed (NO in S371), the process proceeds to S372.

[0057] In S372, the control unit 4 determines whether the notification control section 156 is enabled. Specifically, if the notification flag is set to "disabled (0)", a NO determination is made in S372 and the process proceeds to S39. On the other hand, if the notification flag is set to "enabled (1)", a YES determination is made in S372 and the process proceeds to S38.

[0058] In S38, the control unit 4 executes notification control to prompt the user to display a vibration monitoring screen. Specifically, the notification control section 156 causes the operation panel 54 (display device 542) to display a first message screen including a message prompting the user to display a vibration monitoring screen, for example. The first message screen may be displayed as a pop-up. FIG. 9 is a diagram showing an example of the first message screen. The message screen Sc3 shown in FIG. 9 includes a message indicating that vibration has been detected by the simulation section 170 (i.e., that chatter vibration has been detected), a message prompting the user to display a vibration monitoring screen ("Chatter Control" screen), and a message instructing the user how to disable the notification (the process of S38). However, the contents displayed by the first message screen can be changed as appropriate.

[0059] When the process of S38 is executed, the process proceeds to S39 with the first message screen still displayed. The control unit 4 ends the display of the first message screen in response to a user operation. The operator can end the display of the first message screen at any timing.

[0060] In S39, the control unit 4 judges whether or not to shut down the system of the machine tool 1. For example, when the operation of the machine tool 1 is stopped according to an instruction from the system or an operator, it is judged that the system should be shut down (YES in S39), and process flow F3 ends. In this case, the control unit 4 executes system shutdown processing and shuts down the system. On the other hand, if it is judged not to shut down the system (NO in S39), the process returns to the first step (S31). While the system is operating, process flow F3 is executed repeatedly.

[0061] The control unit 4 executes display control to display a vibration monitoring screen in response to a predetermined user operation (hereinafter also referred to as a "vibration monitoring operation"). Specifically, an operator can start a vibration control application by operating the button P2 on the home screen Sc1 shown in FIG. 4. Then, when the vibration control application is started, the control unit 4 executes a process flow F4 described below. In this embodiment, a user operation on the button P2 corresponds to a vibration monitoring operation. Even during execution of the process flow F4, the process flow F1 shown in FIG. 5 is repeatedly executed in the background.

[0062] Fig. 10 is a flowchart showing a process related to vibration monitoring. In process flow F4, the control unit 4 (display control section 158) displays a vibration monitoring screen on the operation panel 54 (touch panel display) in S41. Fig. 11 is a diagram showing an example of the vibration monitoring screen.

[0063] The vibration monitoring screen Sc4 includes an operation unit M1 and tabs M2 and M3. The operation unit M1 accepts a user operation to instruct the vibration control application to end. The tabs M2 and M3 accept a user operation for switching the screen. Either the tab M2 or M3 is selected by an operator. On the vibration monitoring screen Sc4 shown in FIG. 11, the tab M2 is selected. The vibration monitoring screen Sc4 further includes a status screen Sc41, a tuning screen Sc42, and a program screen Sc43. The display control unit 158 ​​executes display control of the program screen Sc43 based on the program information stored in the program storage unit 140. The program screen Sc43 displays the machining program being executed.

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

[0065] The override bar M20 is a scale object extending to the left and right of the screen, and provides a scale for the override. The override represents the rate of change of the control value of the spindle speed relative to the program command value of the current spindle speed. The program command value is the spindle speed specified by the machining program. The program command value does not change unless a new value is specified in the program. The control value of the spindle speed is a control command value of the spindle speed received by the machining device 2, and may be, for example, a spindle speed specified by a PLC (Programmable Logic Controller). If normal control is being performed, the actual spindle speed detected by the rotation sensor 18a will roughly match the control value of the spindle speed.

[0066] In the override bar M20, the center position indicates 100% of the programmed command value, and the positions on both ends indicate the adjustment range of the spindle rotation speed. In the example shown in FIG. 12, the rightmost position indicates 150% of the programmed command value (the change rate is "+50%), and the leftmost position indicates 50% of the programmed command value (the change rate is "-50%)." In other words, the adjustment range of the spindle rotation speed is set to a range of 50 to 150% of the programmed command value. This prevents the rotation speed (control state) of the spindle 18 from suddenly changing beyond the operator's expectations.

[0067] The data D21 and the marker M21 indicate the current control command value for the spindle speed (for example, 2500 min -1 ) When the machining conditions (particularly, the spindle speed) are not adjusted, the marker M21 is displayed at the 100% position, as shown in FIG. 12. That is, the control value of the spindle speed is equal to the program command value. On the other hand, when the machining conditions (particularly, the spindle speed) are changed by the adjustment process (FIG. 16) described later, the display position of the marker M21 is changed according to the rate of change.

[0068] Of 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. Furthermore, when chatter vibration is not occurring, the process of S35 of FIG. 8 is not executed, so no recommended machining conditions are displayed on the tuning screen. In the tuning screen Sc42 shown in FIG. 12, the data D22 and the marker M22 indicate a first recommended value of the spindle rotation speed (for example, 2878 min -1 ) The data D23 and the marker M23 indicate the second recommended value of the spindle speed for the override bar M20 (for example, 2466 min -1 ) The operator can select one recommended value from the first recommended value and the second recommended value displayed on the tuning screen Sc42 by operating the operation unit M24 or M25.

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

[0070] The determination result D25 indicates whether or not vibration has been detected. In the example shown in FIG. 12, the determination result D25 indicates that chatter vibration is occurring (for example, the text "chatter vibration occurring"). This means that the vibration detection flag is set to "detected (1)". When the vibration detection flag is set to "not detected (0)", the display content of the determination result D25 changes. When the chatter vibration has been converged by the adjustment process, a message indicating this (for example, the text "chatter vibration avoided") may be displayed as the determination result D25.

[0071] The operation unit M26 (for example, a "reset button") accepts a user operation (hereinafter also referred to as a "reset operation") that instructs a reset process of the override. When the operation unit M26 receives the reset operation, the control unit 4 returns the override to 100% (no change). However, when a reset prohibition condition is satisfied, the operation unit M26 becomes inactive. The reset prohibition condition can be set arbitrarily. The operation unit M27 (for example, an "adjustment button") accepts a user operation (hereinafter also referred to as an "adjustment start operation") that instructs the start of an adjustment process for suppressing chatter vibration. The operation unit M27 becomes active when the adjustment flag is set to "permitted (1)" and becomes inactive when the adjustment flag is set to "prohibited (0)". User operations on an operation unit in an inactive state are invalid. An operation unit in an inactive state may be displayed in gray.

[0072] Fig. 13 is a diagram showing a first example of a status screen. A status screen Sc41 shown in Fig. 13 includes a marker M10, operation units M11 to M13, and data D11 and D12. The display control unit 158 ​​executes display control of the status screen Sc41 based on, for example, the status information (including the vibration level and the spindle rotation speed) stored in the history data storage unit 146. The status information is updated successively by the process flow F3 shown in Fig. 8.

[0073] Data D11 shows the transition of the vibration level (dB). Data D12 shows the transition of the spindle rotation speed (min -1 ) transition. The operator can switch data collection between enabled (ON) and disabled (OFF) through the operation unit M11. When data collection is enabled, the display contents of the status screen Sc41 are updated with the latest data each time status information (including vibration level and spindle rotation speed) is calculated in S33 of FIG. 8. For example, data D11 and D12 display changes in vibration level and spindle rotation speed in real time. On the other hand, when data collection is disabled, the display contents of the status screen Sc41 are no longer updated. In addition, the operator can change the scale of the horizontal axis of the graph on which data D11 and D12 are displayed by operating the operation units M12 and M13.

[0074] The marker M10 indicates the adjustment instruction timing for the status information (data D11, D12) displayed on the status screen. The adjustment instruction timing is the timing when the operator instructs the adjustment process. In this embodiment, the adjustment instruction timing corresponds to the timing when the active operation unit M27 (FIG. 12) receives an adjustment start operation.

[0075] When data collection is disabled, for example, past data is displayed on the status screen. FIG. 14 is a diagram showing a second example of the status screen. When data collection is disabled, the display control unit 158 ​​may display a history data screen Sc44 on the operation panel 54 (touch panel display) in addition to the status screen Sc41. In the status screen Sc41 shown in FIG. 14, data D11 and D12 indicate past vibration levels and spindle rotation speeds. The history data screen Sc44 indicates adjustment history information related to the data D11 and D12. The adjustment history information includes, for example, the total number of adjustments, the changes in the spindle rotation speed, the changes in the feed rate, the program name, and the program line (block number). When the total number of adjustments is multiple, the adjustment history information is displayed for each adjustment number indicating the number of adjustments. The operator can display the adjustment history information corresponding to the selected adjustment number on the history data screen Sc44 by selecting an adjustment number using the operation unit M40. The display control unit 158 ​​may read out status information (history data) for a period designated by the operator from the history data storage unit 146 and cause the display device 542 to display it.

[0076] In S42 of Fig. 10, the control unit 4 (condition receiving section 124) judges whether or not one recommended value has been selected by the operator from among the recommended processing conditions displayed on the tuning screen. If one recommended value has not been selected on the tuning screen (NO in S42), the process proceeds to S46. On the other hand, for example, if either the first recommended value or the second recommended value has been selected by operation section M24 or M25 on the tuning screen Sc42 (Fig. 12), YES is judged in S42, and the process proceeds to S43.

[0077] In S43, the control unit 4 updates the tuning information. Specifically, the tuning management section 173 sets the adjustment flag to "Allowed (1)". This allows the operator to adjust (tune) the processing conditions by operating the operation section M27 (adjustment button) on the tuning screen Sc42 (FIG. 12). Next, in S44, the control unit 4 determines whether or not an adjustment start operation (e.g., pressing the adjustment button) by the operator has been detected. If an adjustment start operation has not been detected (NO in S44), the process proceeds to S46.

[0078] In S46, the control unit 4 judges whether or not to terminate the vibration control application. If neither the system nor the operator has requested termination of the vibration control application, NO is judged in S46, and the process proceeds to S47. In S47, the control unit 4 judges whether or not 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 the tab M3 on the vibration monitoring screen Sc4 (FIG. 11). If the second setting operation is not received from the operator (NO in S47), the process returns to the first step (S41). On the other hand, if the second setting operation is performed in the vibration control application (YES in S47), the control unit 4 (display control unit 158) displays the second setting screen on the operation panel 54 (touch panel display) instead of the tuning screen in S51. FIG. 15 is a diagram showing an example of the second setting screen.

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

[0080] When the notification setting has been changed (YES in S52), the control unit 4 (tuning management section 173) updates the notification flag in S53 in response to the user's operation on the operation section P3. Specifically, when the notification setting has been changed from off to on, the notification flag is set to "enabled (1)", and notification is performed by the notification control section 156 (for example, the processing of S38 in FIG. 8). On the other hand, when the notification setting has been changed from on to off, the notification flag is set to "disabled (0)", and notification is no longer performed by the notification control section 156.

[0081] When the process of S53 is executed, the process proceeds to S54. On the other hand, if the notification setting has not been changed (NO in S52), the process skips S53 and proceeds to S54. In S54, the control unit 4 judges whether or not the user setting in the vibration control application has been completed. If the user setting has not been completed (NO in S54), the process returns to S51. As a result, the display of the second setting screen continues. On the other hand, for example, if the operator performs a setting end operation, YES is judged 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 the tab M2 on the vibration monitoring screen Sc4 (FIG. 11).

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

[0083] In process flow F6 shown in Fig. 16, in S61, the control unit 4 changes the machining conditions of the machine tool 1 so as to approach the tuning information (recommended machining conditions). Specifically, the simulation unit 170 outputs the recommended value (see S42 in Fig. 10) selected by the operator to the numerical control unit 150. Then, the numerical control unit 150 changes the control value of the spindle rotation speed to the recommended value (recommended rotation speed) and controls the spindle 18.

[0084] In the next S62, the control unit 4 (display control section 158) updates the status screen and the tuning screen based on the latest status information and tuning information. The status information and tuning information are successively updated in S12 (processing flow F3) of the processing flow F1 (FIG. 5) which is repeatedly executed in the background even during the execution of the processing flow F6.

[0085] In the next step S63, the control unit 4 determines whether or not the adjustment end condition is satisfied. In this embodiment, the adjustment end condition is satisfied when the chatter vibration has converged (i.e., when it is determined as NO in S34 of FIG. 8). However, the adjustment end condition may also be satisfied when the chatter vibration has become larger than before the start of the adjustment process, or when the type or frequency of the chatter vibration has changed. The adjustment end condition can be set arbitrarily.

[0086] If the adjustment end condition is not met (NO in S63), the control unit 4 determines in S64 whether or not the recommended value (e.g., recommended rotation speed) recalculated in S35 of FIG. 8 after changing the machining conditions is within the adjustment range. If the recalculated recommended value is within the adjustment range (YES in S64), the process proceeds to S65. This allows the adjustment process of the machining conditions to continue. In S65, the control unit 4 changes the machining conditions (e.g., spindle rotation speed) of the machine tool 1 so as to approach the recalculated recommended value. Thereafter, the process returns to S62.

[0087] If the recommended value recalculated after the change of the machining conditions is within the adjustment range (YES in S64) and the adjustment end condition is not satisfied (NO in S63), the adjustment process of the machining conditions is continuously executed. On the other hand, if the adjustment end condition is satisfied (YES in S63) or if the recalculated recommended value is outside the adjustment range (NO in S64), the process proceeds to S66. This ends the adjustment process. In S66, the control unit 4 (tuning management section 173) sets the adjustment flag to "prohibited (0)". This makes the operation section M27 (adjustment button) in the tuning screen Sc42 (FIG. 12) inactive. When the process of S66 is executed, the process flow F6 ends and the process proceeds to S46 in FIG. 10.

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

[0089] In the machine tool 1 according to this embodiment, when the tool T held by the spindle 18 is replaced, if the number of teeth of the replaced tool T is not set, the vibration monitoring process (S12 in FIG. 5) shown in FIG. 8 is not executed. In a situation where the vibration monitoring process is not executed, calculation of the recommended machining conditions for suppressing chatter vibration is not executed. For this reason, the quality of the machined surface of the workpiece is likely to deteriorate due to the occurrence of chatter vibration during machining (cutting).

[0090] Therefore, the control unit 4 (controller) according to this embodiment executes the process flow F7 described below to prevent the number of teeth from remaining unset after tool replacement. According to the process flow F7, when tools are replaced, the operator can easily set the number of teeth, or the system can automatically set the number of teeth based on the estimation of the number of teeth.

[0091] FIG. 17 is a flowchart showing a process related to the management of the number of teeth of a tool. The process flow F7 shown in FIG. 17 is started, for example, when a tool is replaced. In this embodiment, the control unit 4 executes a tool replacement process for replacing a first tool (a tool T before replacement) held by the spindle 18 with a second tool (a tool T after replacement) according to a tool replacement program stored in the program storage unit 140 (FIG. 3). Specifically, when the tool replacement process starts, a tool transport device (not shown) transports the second tool from the tool magazine to a predetermined standby position. During this time, the reader 19 may read tool information from the second tool, or the camera 55 may photograph the second tool. Next, an automatic tool changer (not shown) replaces the first tool held by the spindle 18 with the second tool positioned at the standby position. This completes the tool replacement process. The control unit 4 starts a process flow F7, which will be described below, at the same time as the start of the tool replacement process, or during or immediately after the end of the tool replacement process.

[0092] In S71, the control unit 4 judges whether the number of teeth of the second tool has been set. For example, if the number of teeth of the second tool has been set based on the information of the second tool acquired by the reader 19 (i.e., the information presented by the information presentation unit of the second tool), YES is judged in S71. For example, if the information acquired by the reader 19 from the information presentation unit of the second tool indicates the number of teeth of the second tool, the second setting unit 162 sets the number of teeth of the second tool. Also, if the information acquired by the reader 19 from the information presentation unit of the second tool includes the identification information of the second tool and the tool information management unit 160 acquires the number of teeth of the second tool from the tool data storage unit 142 (FIG. 3) based on the identification information of the second tool, the second setting unit 162 sets the number of teeth of the second tool. However, the tool data storage unit 142 does not necessarily hold the number of teeth of the second tool. If YES is judged in S71, the process flow F7 ends without executing the processes from S72 onwards.

[0093] On the other hand, if the number of teeth of the second tool is not set (NO in S71), the process proceeds to S72. In S72, the control unit 4 judges whether the second tool is a tool corresponding to the simulation unit 170 (hereinafter also referred to as a "vibration control compatible tool"). Information indicating the type of the vibration control compatible tool is stored in advance in the tool data storage unit 142 (FIG. 3). When the vibration monitoring process is executed for a tool that is not a vibration control compatible tool, NO is always determined in S34 of FIG. 8, and the simulation is not executed. In this embodiment, an end mill (e.g., an end mill with a uniform pitch) is registered as the vibration control compatible tool. The end mill is suitable for a simulation related to vibration. However, the type of the vibration control compatible tool can be set arbitrarily. The control unit 4 may judge whether the second tool is a vibration control compatible tool based on information (e.g., a tool ID or a model number) acquired by the reader 19 from the information presentation unit of the second tool.

[0094] If the second tool is not a vibration control compatible tool (NO in S72), the process flow F7 ends without executing the processes in S74 and thereafter. On the other hand, if the second tool is a vibration control compatible tool (YES in S72), the process proceeds to S74.

[0095] In S74, the control unit 4 judges whether or not the number of teeth estimation function is enabled. The machine tool 1 according to this embodiment has a first number of teeth estimation function and a second number of teeth estimation function which will be described below.

[0096] The first tooth number estimation function estimates the number of teeth of the second tool based on the appearance of the second tool. Specifically, the estimation unit 163 estimates the number of teeth of the second tool based on image information indicating the appearance of the second tool acquired by the camera 55. The estimation unit 163 may estimate the number of teeth of the second tool based on one image, or may estimate the number of teeth of the second tool based on multiple images.

[0097] The second tooth number estimation function estimates the number of teeth of the second tool based on the behavior of the second tool held by the spindle 18. Specifically, the estimation unit 163 estimates a cutting edge passing frequency of the second tool using vibration data of the second tool acquired by the acceleration sensor 30, and estimates the number of teeth of the second tool based on the estimated cutting edge passing frequency and the rotation speed of the spindle 18. The estimation unit 163 may calculate the number of teeth N of the second tool by the following formula (2).

[0098] N = F × 60 / n (2) In formula (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, the estimation unit 163 may estimate an integer closest to the calculated value of "N" as the number of teeth of the second tool.

[0099] If at least one of the first and second number of teeth estimation functions is normal, YES is determined in S74, and if an abnormality occurs in both the first and second number of teeth estimation functions, NO is determined in S74. It is not essential that a machine tool has multiple number of teeth estimation functions. For example, either the first number of teeth estimation function or the second number of teeth estimation function may be omitted. Furthermore, the control unit 4 according to this embodiment may be mounted on a machine tool that does not have a number of teeth estimation function. In such a machine tool, NO is always determined in S74.

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

[0101] When the estimation of the number of teeth (S75) is completed, the estimation unit 163 of the tool information management unit 160 sets the estimated number of teeth of the second tool in S76. Then, the process flow F7 ends. The estimation unit 163 may store the estimated number of teeth of the second tool in the tool data storage unit 142 (FIG. 3) in association with the identification information and type of the second tool.

[0102] On the other hand, if the tooth number estimation function is not enabled (NO in S74), the control unit 4 determines in S77 whether the notification control unit 156 is enabled. Specifically, if the notification flag is set to "disabled (0)", a NO determination is made in S77, and the process flow F7 ends. On the other hand, if the notification flag is set to "enabled (1)", a YES determination is made in S77, and the process proceeds to S78.

[0103] In S78, the control unit 4 executes notification control to guide the user to input the number of teeth of the second tool. Specifically, the notification control unit 156 displays, for example, a second message screen including a message to guide the user to input (set) the number of teeth of the second tool on the operation panel 54 (display device 542). The second message screen may be displayed as a pop-up. FIG. 18 is a diagram showing an example of the second message screen. The 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 to guide the operator to input the number of teeth of the second tool (for example, a message indicating that the simulation is enabled by the simulation-related setting), and a message to teach a method of disabling the notification (processing of S78). However, the contents displayed on the second message screen can be changed as appropriate.

[0104] The process of S78 allows the operator to know the existence of the simulation unit 170. It is considered that an operator who wants to use the simulation unit 170 will follow the guidance of the second message screen and input the number of teeth of the second tool in the tool management application (for example, the first setting screen Sc2 shown in FIG. 7). This allows the vibration control application (simulation unit 170) to be utilized. When the process of S78 is executed, the process flow F7 (FIG. 17) ends with the second message screen still displayed. The control unit 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 this embodiment, the notification process of S38 (FIG. 8) and the notification process of S78 (FIG. 17) are switched between enabled and disabled together in a common setting (see FIG. 15). However, each notification process may be switched between enabled and disabled separately in an individual setting.

[0105] As described above, the machine tool 1 according to this embodiment includes a tool holding section (spindle 18) that detachably holds a tool, and a control unit 4. The control unit 4 includes an estimation section 163 (FIG. 3) that estimates the number of teeth of the tool T attached to the spindle 18, and a simulation section 170 (FIG. 3) that executes a simulation of the behavior (e.g., vibration) of the tool T held in the tool holding section using the number of teeth. A variety of tools can be used in the machine tool 1. Therefore, information on all tools that can be used in the machine tool 1 is not stored in advance in the tool data storage section 142. However, by including the estimation section 163, the machine tool 1 can estimate the number of teeth of the tool T. Therefore, the above-mentioned simulation using the number of teeth can be easily executed. Such a simulation contributes to vibration countermeasure support.

[0106] Furthermore, when the number of teeth of the tool T held in the tool holding unit is set, the simulation unit 170 executes a simulation using the set number of teeth to calculate recommended machining conditions for the tool T held in the tool holding unit (see S11, S12 in FIG. 5 and S35 in FIG. 8). When the machine tool 1 performs machining according to the recommended machining conditions calculated in this manner, machining defects such as chatter vibration are less likely to occur.

[0107] Furthermore, when replacing the tool T held in the tool holding unit, the estimation unit 163 estimates the number of teeth of the replaced tool T based on at least one of the appearance and behavior of the replaced tool T. With this configuration, it becomes easier to appropriately estimate the number of teeth of the tool T.

[0108] The estimation unit 163 according to the above embodiment estimates the number of teeth of the tool T when predetermined estimation conditions are met (S75 in FIG. 17). In detail, the predetermined estimation conditions include that the number of teeth of the replaced tool is not set (first requirement: S71 in FIG. 17), that the replaced tool is a tool corresponding to the simulation unit 170 (second requirement: S72 in FIG. 17), and that a function for estimating the number of teeth of the tool T is active (third requirement: S74 in FIG. 17). This configuration makes it easier to estimate the number of teeth at an appropriate time.

[0109] In the above embodiment, the control unit 4 further includes a notification control unit 156 that executes notification control to guide the user to input the number of teeth of the tool T (FIG. 3). When all of the above-mentioned first to third requirements (S71, S72, S74) are satisfied, the estimation condition is established, and the estimation unit 163 executes estimation of the number of teeth (S75). On the other hand, when the estimation condition is not established and a predetermined notification condition is established, the notification control unit 156 executes notification control (S78). In detail, the predetermined notification condition includes that the number of teeth of the replaced tool is not set (S71 in FIG. 17), that the replaced tool is a tool corresponding to the simulation unit 170 (S72 in FIG. 17), that the function of estimating the number of teeth of the tool T held in the tool holding unit is not implemented in the machine tool 1 or is not active (S74 in FIG. 17), and that the notification control unit 156 is active (S77 in FIG. 17). According to this configuration, when the estimation of the number of blades is not performed, the user can be prompted to set the number of blades as necessary, which prevents the number of blades from being left unset and promotes the use of simulation.

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

[0111] Fig. 19 is a flowchart showing a first modified example of the process flow shown in Fig. 17. In a process flow F7A according to the first modified example, S77 in Fig. 17 is omitted.

[0112] Fig. 20 is a flowchart showing a second modified example of the process flow shown in Fig. 17. In a process flow F7B according to the second modified example, S72 in Fig. 17 is omitted.

[0113] Fig. 21 is a flowchart showing a third modified example of the process flow shown in Fig. 17. In a process flow F7C according to the third modified example, S72 and S77 in Fig. 17 are omitted.

[0114] FIG. 22 is a flowchart showing a fourth modified example of the process flow shown in FIG. 17. In the process flow F7D according to the fourth modified example, S72, S74, S77, and S78 in FIG. 17 are omitted. The control unit 4 includes a setting unit (second setting unit 162) that sets the number of teeth of the tool T using information presented by an information presenting unit provided on the tool T (FIG. 3). If the number of teeth of the tool T after replacement is set by the second setting unit 162 (YES in S71), the estimation of the number of teeth is not performed. On the other hand, if the number of teeth of the tool T after replacement is not set by the second setting unit 162 (NO in S71), the estimation unit 163 estimates the number of teeth of the tool T after replacement (S75), and the estimated number of teeth is set (S76). This configuration makes it easier to set the number of teeth of the tool T after replacement.

[0115] The execution timing (trigger) of the process flows F7 and F7A to F7D is not limited to when the tool is replaced, and can be changed as appropriate. For example, these process flows may be executed every time the system of the machine tool is started.

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

[0117] The simulation unit 170 may use the number of teeth to execute a simulation for machine protection control (hereinafter also referred to as "MPC simulation"). For example, the simulation unit 170 uses the MPC simulation to look ahead (predict) the position of a moving tool, and if the predicted tool position is not appropriate, changes settings related to the movement control of the tool (for example, a target position) or stops the movement of the tool. The MPC simulation can reduce the possibility of the tool colliding with a jig or the like. The simulation unit 170 executes the MPC simulation using the number of teeth, making it possible to predict even the behavior (trajectory) of the cutting edge, improving prediction accuracy.

[0118] The simulation unit 170 may also execute a simulation for tool wear and / or workpiece surface roughness (hereinafter also referred to as "machining simulation"). The number of teeth affects the contact state between the tool and the workpiece, and the tool wear and workpiece surface roughness change depending on the contact state between the tool and the workpiece. By having the simulation unit 170 execute a machining simulation using the number of teeth, it becomes possible to simulate the contact state between the tool and the workpiece with high accuracy, and the estimation accuracy of the tool wear and the workpiece surface roughness is improved.

[0119] In the above embodiment, a horizontal machining center has been exemplified as the machine tool 1. However, the type of machine tool is arbitrary, and it may be a vertical machining center, a turning center, or a multi-tasking machine having the functions of both a machining center and a turning center.

[0120] Fig. 23 is a diagram showing a modified example of the machine tool shown in Fig. 1. The machine tool 1A shown in Fig. 23 has a PFM (Process Force Monitor) function. In detail, the machine tool 1A includes a control unit 4A, servo drivers 211R, 211X, 211Y, 211Z, servo motors 212R, 212X, 212Y, 212Z, a movable body 213, a spindle head 231, a strain sensor 234, a table 236, and a tool T. The spindle head 231 includes a spindle 232 and a housing 233. The housing 233 houses the spindle 232. The spindle 232 detachably holds the tool T. The movable body 213 is attached to the spindle head 231. The servo driver 211R sequentially receives the target rotation speed from the control unit 4A, and controls the servo motor 212R based on the target rotation speed. The servo motor 212R drives the main shaft 232 to rotate around the axis in the Z direction.

[0121] The spindle head 231 moves (displaces) together with the movable body 213. Each of the servo drivers 211X, 211Y, and 211Z sequentially receives a target position from the control unit 4A. The servo drivers 211X, 211Y, and 211Z sequentially receive feedback of the actual positions of the servo motors 212X, 212Y, and 212Z, respectively, and bring the actual positions of the servo motors 212X, 212Y, and 212Z closer to the target positions. The servo motors 212X, 212Y, and 212Z each feed and drive the movable body 213 in the X-direction, Y-direction, and Z-direction via, for example, a ball screw, thereby adjusting the spindle 232 to an arbitrary position in the X-direction, Y-direction, and Z-direction.

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

[0123] The strain sensor 234 detects the cutting force applied to the tool T held by the spindle 232 and outputs the detection result to the control unit 4A. The control unit 4A detects wear and / or damage of the tool T based on the waveform of the cutting force detected by the strain sensor 234. Specifically, the control unit 4A normalizes and phase-matches the first cutting force waveform (reference waveform) and the second cutting force waveform at the same machining position, and then compares them. Then, based on the result of the comparison, the control unit 4A detects how the cutting force has changed, and detects wear and / or damage of the tool T based on the change in the cutting force waveform. Note that, although only one strain sensor 234 is illustrated in FIG. 23, the number of strain sensors is arbitrary, and may be one or more (for example, about four).

[0124] FIG. 24 is a graph showing an example of the relationship between chipping of the tool T and the cutting force. In the example shown in FIG. 24, the tool T is an end mill with a uniform pitch, and the second blade is chipped. The waveform D110 (solid line) shows the cutting force before the chipping occurs. The waveform D120 (dashed line) shows the cutting force after the chipping occurs. The waveform in the section P110 shows the cutting force waveform of the first blade. The waveform in the section P120 shows the cutting force waveform of the second blade. Since the first blade is not chipped, in the section P110, there is no significant change in the cutting force waveform before and after the chipping occurs. In contrast, in the section P120, the amplitude of the cutting force waveform changes significantly before and after the chipping occurs. Comparing the waveforms D110 and D120 in the section P120, it can be seen that the cutting force applied to the tool T is significantly reduced due to the chipping of the blade.

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

[0126] In response to the start of the basic application, the control unit 4A executes the process flow F1 shown in Fig. 5. However, in S12 in Fig. 5, the control unit 4A executes the process flow F10 described below instead of the process flow F3 (Fig. 8). Fig. 25 is a flowchart showing a modified example of the process of S12 in Fig. 5.

[0127] In a process flow F10 shown in FIG. 25, the control unit 4A (simulation section 170A) executes a machining simulation as a set job. In S110, the control unit 4A measures a first cutting force waveform (reference waveform). The control unit 4A repeatedly executes the processes of steps S120 to S170 until the simulation is completed (S115). For example, if the simulation includes a command to move the tool T ten times on the same machining path, the control unit 4A acquires the first cutting force waveform in the first machining, and repeatedly executes the processes of S120 to S170 nine times in the second and subsequent machining.

[0128] In S120, the control unit 4A measures the waveform of the second cutting force. Then, in S125, the control unit 4A normalizes each waveform (the waveform of the first and second cutting force) and further aligns the phase of each waveform. Then, in S130, the control unit 4A compares the cutting force for each blade in each waveform based on the set number of blades of the tool T.

[0129] Further, the control unit 4A repeatedly executes the processes of S140 to S165 for the number of blades based on the set number of blades of the tool T (S135). In S140, the control unit 4A judges whether or not the cutting force of the blade of the tool T has increased by a predetermined first threshold value or more. More specifically, the control unit 4A compares the cutting force (amplitude) of a certain blade in the waveform of the second cutting force with the cutting force (amplitude) of a certain blade in the waveform of the first cutting force to obtain a difference. The control unit 4A judges whether or not the difference (increase in the cutting force) is equal to or greater than the first threshold value. If it is judged that the cutting force of the blade has increased by the first threshold value or more (YES in S140), the process proceeds to S145, and if not (NO in S140), the process proceeds to S150. In S145, the control unit 4A judges that the blade of the tool T is worn.

[0130] In S150, the control unit 4A judges whether the cutting force of the blade of the tool T has decreased by a predetermined second threshold or more. More specifically, the control unit 4A compares the cutting force (amplitude) of a certain blade in the waveform of the second cutting force with the cutting force (amplitude) of a certain blade in the waveform of the first cutting force to obtain a difference. The control unit 4A judges whether the difference (amount of reduction in cutting force) is equal to or greater than the second threshold. If it is judged that the cutting force of the blade has decreased by the second threshold or more (YES in S150), the process proceeds to S155, and if not (NO in S150), the process proceeds to S160. In S155, the control unit 4A judges that the blade of the tool T is chipped. In S160, the control unit 4A judges that there is no abnormality in the blade of the tool T.

[0131] In S165, the control unit 4A judges whether or not the processing of all the blades of the tool T has been completed. If it is judged that the processing of all the blades of the tool T has been completed (YES in S165), the process proceeds to S170, and if not (NO in S165), the process returns to S115. In S170, the control unit 4A judges whether or not the simulation (job) has been completed. If it is judged that the simulation has been completed (YES in S170), the process flow F10 ends, and if not (NO in S170), the process returns to S135.

[0132] In the machine tool 1A according to this modification, when the tool T is replaced, if the number of teeth of the replaced tool T is not set, the above-mentioned process flow F10 (simulation) is not executed (see FIG. 5). However, like the control unit 4 (FIG. 1), the control unit 4A also executes process flow F2 (FIG. 6) in response to a user operation, and executes process flow F7 (FIG. 17) when the tool is replaced. This prevents the number of teeth from remaining unset after the tool is replaced. Note that the contents of the screen (FIG. 7 or FIG. 18) displayed in S12 in FIG. 6 or S78 in FIG. 17 are appropriately changed to suit the machine tool 1A.

[0133] In the above embodiment, the adjustment process (FIG. 16) is executed in response to a user operation (adjustment start operation). However, the present invention is not limited to this, and the adjustment process (tuning process) of the machining conditions may be executed automatically when chatter vibration is detected. For example, when the simulation unit 170 detects chatter vibration, it may calculate recommended machining conditions using the number of teeth, and execute the adjustment process (FIG. 16) of the machining conditions based on the calculated recommended machining conditions.

[0134] The embodiments disclosed herein should be considered to be illustrative and not restrictive in all respects. The scope of the present invention is defined by the claims, not the above description, and is intended to include all modifications within the meaning and scope of the claims. [Explanation of symbols]

[0135] 1,1A machine tool, 2 machining device, 4,4A control unit, 18,232 spindle, 18a rotation sensor, 18b tool detection sensor, 19 reader, 30 acceleration sensor, 40 signal processing device, 50 control device, 52 vibration processing device, 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, T tool, W workpiece.

Claims

1. A tool holding portion that detachably holds a tool; an estimation unit that estimates the number of teeth of a tool attached to the tool holding unit; a simulation unit that executes a simulation regarding a behavior of the tool held by the tool holder using the number of teeth; A setting unit that sets the number of teeth of the tool; a tool information management unit that stores the number of teeth of the tool set by the setting unit; Equipped with The estimation unit is configured to estimate the number of teeth of the replaced tool when the tool held in the tool holding unit is replaced and the number of teeth of the replaced tool is not stored in the tool information management unit.

2. A machine tool as described in claim 1, wherein the setting unit sets the number of teeth of the tool using information presented by an information presentation unit provided on the tool.

3. The machine tool according to claim 1 , wherein the estimation unit is configured, when replacing the tool held in the tool holding unit, to estimate the number of teeth of the replaced tool based on at least one of an appearance and a behavior of the replaced tool.

4. A tool holding portion that detachably holds a tool; an estimation unit that estimates the number of teeth of a tool attached to the tool holding unit; a simulation unit that executes a simulation regarding a behavior of the tool held by the tool holder using the number of teeth; Equipped with The estimation unit is configured to estimate a number of teeth of a tool when a predetermined estimation condition is satisfied, The predetermined estimation condition is The number of teeth of the replaced tool is not set, The replaced tool is a tool corresponding to the simulation unit; and and further comprising at least one of The machine tool includes a notification control unit that executes notification control to guide a user to input a number of tool teeth when the predetermined estimation condition is not satisfied and a predetermined notification condition is satisfied.

5. The machine tool according to any one of claims 1 to 4, wherein the simulation unit is configured, when a number of teeth of a tool held in the tool holding unit is set, to calculate recommended machining conditions for the tool held in the tool holding unit by executing the simulation using the set number of teeth.

Citation Information

Patent Citations

  • Numerical control device for confirming fitting state of tool used in machining

    JP2016218550A

  • Simulation device, program generation device, control device, and computer display method

    JP2018180586A

  • Diagnostic device and diagnostic method

    JP2019081225A

  • Tool blade number estimation device, machine tool including the same, and tool blade number estimation method

    JP2020019072A

  • Work machine processing state monitoring method and system

    JP2021068401A