Numerical control device, control program and storage medium

CN118404395BActive Publication Date: 2026-09-01BROTHER KOGYO KK
View PDF 3 Cites 0 Cited by

Patent Information

Application Number
CN202410119235.6
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Priority Date
2023-01-30
Filing Date
2024-01-29
Publication Date
2026-09-01
Estimated Expiration
2044-01-29

AI Technical Summary

Benefits of technology

[0005]本发明的目的在于提供一种能够高精度地判定刀具相对于主轴的安装状态的数值控制装置、控制程序以及存储介质。

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN118404395B_ABST
    Figure CN118404395B_ABST
Patent Text Reader

Abstract

The numerical control device of the present invention controls a machine tool, the machine tool including a spindle for mounting a cutting tool, a tool changing device for changing the cutting tool mounted on the spindle, and a motor for moving the spindle. The numerical control device includes: a detection unit for detecting the position of the spindle moved by the motor during the process of mounting the cutting tool on the spindle; a storage unit for storing the position detected by the detection unit in a storage device; a determination unit for determining a reference position of the spindle based on the position stored in the storage device up to the N-1th time (N is an integer of 2 or more) by the storage unit; a judgment unit for determining whether there is an abnormality related to the tool mounting state based on the position stored in the storage device up to the Nth time and the reference position determined by the determination unit; and a deletion unit for deleting the position stored in the storage device up to the Nth time after the position has been stored in the storage device up to the N+1th time, if the judgment unit determines that there is an abnormality.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to numerical control devices, control programs, and storage media. Background Technology

[0002] Patent Document 1 discloses a numerical control device for determining whether a tool is mounted on the spindle of a machine tool. The machine tool includes a spindle, a spindle head, and a Z-axis motor. The spindle is rotatably mounted on the spindle head. The spindle head is raised and lowered by the Z-axis motor. When a tool is mounted on the spindle, the spindle head lowers. At this time, the numerical control device performs time differentiation on the torque applied to the Z-axis motor. Based on the differential value of the torque and the position of the spindle head, the numerical control device determines the peak position of the differential value, which varies according to the position of the spindle head. The numerical control device performs statistical processing on the determined peak position and determines the tool mounting state relative to the spindle based on the calculated statistical value. Prior art literature Patent documents

[0003] Patent Document 1: Japanese Patent Application Publication No. 2022-157537 Summary of the Invention The problem that the invention aims to solve

[0004] In the numerical control device described above, during the determination of the installation state at the Nth (N is an integer greater than or equal to 2) tool installation, statistical values ​​are calculated by statistically processing a given number of peak positions determined up to the N-1th installation. If the peak positions determined up to the N-1th installation include peak positions determined under abnormal conditions related to the installation state, the accuracy of the installation state determination based on statistical values ​​during the Nth tool installation may decrease.

[0005] The purpose of this invention is to provide a numerical control device, control program, and storage medium capable of accurately determining the installation state of the tool relative to the spindle. Technical solutions for solving the problem

[0006] Technical Solution 1 provides a numerical control device for controlling a machine tool. The machine tool includes a spindle, a tool changing device, and a motor. A tool is mounted on the spindle, and the tool changing device replaces the tool mounted on the spindle. The motor moves the spindle. The numerical control device includes: a detection unit that detects the position of the spindle moved by the motor during the process of mounting the tool on the spindle; a storage unit that stores the position detected by the detection unit in a storage device; a determination unit that determines a reference position of the spindle based on the position stored in the storage device by the storage unit up to the N-1th time (N is an integer greater than or equal to 2); a judgment unit that determines whether there is an abnormality related to the installation state of the tool based on the position stored by the storage unit up to the Nth time and the reference position determined by the determination unit; and a deletion unit that, if the judgment unit determines that there is an abnormality, deletes the position stored by the storage unit up to the Nth time after the position has been stored by the storage unit up to the N+1th time.

[0007] The numerical control unit (NCU) determines whether an anomaly is related to the tool's installation status. If the NCU determines that the installation status is abnormal, it deletes the spindle positions stored before the Nth time after storing the spindle position for the (N+1)th time. Because the NCU deletes the spindle positions stored before the Nth time when the installation status is determined to be abnormal, it can determine the tool's installation status with high accuracy based on the spindle positions stored after the N+1th time.

[0008] In the numerical control device of technical solution 2, it can also be configured such that if the absolute value of the detection value obtained by subtracting the reference position from the Nth stored position is above a threshold, the determination unit determines that it is an anomaly. Since the numerical control device determines whether the installation state is abnormal based on the absolute value of the detection value, it can determine the installation state with high accuracy.

[0009] In the numerical control device of technical solution 3, the anomaly can also be configured such that the anomaly includes a first anomaly and a second anomaly. The first anomaly refers to the tool being installed with foreign matter attached between the spindle and the tool. The second anomaly refers to the reference position being abnormal. If the absolute value of the detection value is above the threshold and the detection value is positive, the determination unit determines it to be the first anomaly; if the absolute value of the detection value is above the threshold and the detection value is negative, the determination unit determines it to be the second anomaly. The first anomaly is the anomaly of installing the tool with foreign matter attached between the spindle and the tool during the Nth tool installation. The second anomaly is the anomaly of the reference position becoming abnormal as a result of installing the tool with foreign matter attached between the spindle and the tool during the N-1th and previous tool installations. Since the numerical control device determines whether the tool installation state is abnormal (first anomaly or second anomaly), it can perform processing matching the anomaly.

[0010] The numerical control device in technical solution 4 can also be configured to further include a notification unit. When the determination unit determines that it is the first anomaly, the notification unit notifies that it is the first anomaly; when the determination unit determines that it is the second anomaly, the notification unit notifies that it is the second anomaly. Because different notifications are given for the first anomaly and the second anomaly, the operator can determine whether the anomaly is the first or the second anomaly.

[0011] In the numerical control device of technical solution 5, the determination unit may determine the reference position based on a plurality of positions stored by the storage unit up to the N-1th time, and the deletion unit may delete all of the plurality of positions used to determine the reference position in the N+1th time of tool installation. When the numerical control device determines the reference position based on the positions of multiple spindles, if it determines that the installation state is abnormal in the Nth time of tool installation, it will delete all of the plurality of spindle positions used to determine the reference position in the N+1th time of tool installation. Therefore, the numerical control device can determine the tool installation state with high accuracy.

[0012] In the numerical control device of technical solution 6, the determination unit may also determine the reference position based on statistical values ​​obtained by statistical processing of multiple positions stored by the storage unit up to the N-1th time. Since the numerical control device determines the reference position based on statistical values ​​obtained by statistical processing of multiple spindle positions, it can accurately determine the tool installation state during the Nth tool installation.

[0013] The numerical control device of technical solution 7 can also be configured to include: a mounting unit that moves the spindle by rotating the motor to perform the mounting action of the tool relative to the spindle; and an acquisition unit that acquires the torque of the motor in a time sequence during the process of mounting the tool from the mounting unit to the spindle, and a detection unit that detects the position based on the torque acquired by the acquisition unit. The numerical control device detects the position of the spindle during the tool mounting process based on the torque of the motor during the mounting action. Therefore, the numerical control device can determine the tool mounting state with high accuracy.

[0014] The control program of technical solution 8 enables a computer controlling a machine tool equipped with a spindle for mounting a tool, a tool changing device for changing the tool mounted on the spindle, and a motor for moving the spindle to execute the following steps: a detection step, detecting the position of the spindle moved by the drive of the motor during the process of mounting the tool on the spindle; a storage step, storing the position detected by the detection step; a determination step, determining a reference position of the spindle based on the position stored in the (N-1)th time (N is an integer greater than or equal to 2) of the storage step; a judgment step, determining whether there is an abnormality related to the installation state of the tool based on the position stored in the Nth time of the storage step and the reference position determined by the determination step; and a deletion step, in the case that the judgment step determines that there is an abnormality, deleting the position stored in the storage step before the Nth time after storing the position in the (N+1)th time of the storage step.

[0015] The storage medium of technical solution 9 stores a program that enables a computer controlling a machine tool equipped with a spindle for mounting a tool, a tool changing device for changing the tool mounted on the spindle, and a motor for moving the spindle to execute the following steps: a detection step, detecting the position of the spindle that has moved by the drive of the motor during the process of mounting the tool on the spindle; A storage process for storing the position detected by the detection process; The process is determined based on the position stored in the (N-1)th time (N is an integer greater than or equal to 2) through the storage process, and the reference position of the spindle is determined accordingly. The determination process, based on the position stored in the Nth time through the storage process and the reference position determined by the decision process, determines whether there is an anomaly related to the installation state of the tool; and In the deletion process, if the error is determined by the judgment process, the position stored in the storage process before the Nth time is deleted after the position has been stored in the storage process for the (N+1)th time.

[0016] The control program of technical solution 8 and the storage medium of technical solution 9 achieve the same effect as the numerical control device of technical solution 1. Attached Figure Description

[0017] Figure 1 This is a 3D view of machine tool 1. Figure 2 This is a longitudinal sectional view of the area surrounding the spindle head 7. Figure 3 This is a longitudinal sectional view of the interior of spindle 9. Figure 4 This is a block diagram showing the electrical structure of the machine tool 1 and the control device 30. Figure 5 It is a graph showing the disturbance force F applied to the Z-axis motor 51 and its differential value f according to the Z-axis position change of the spindle 9. Figure 6 This is a conceptual diagram of tool information table 59. Figure 7 This is a conceptual diagram of tool information table 59 for the first to third detection times N. Figure 8 This is a conceptual diagram of tool information table 59 when the determination result is a fully installed state. Figure 9 This is a conceptual diagram of tool information table 59 when the judgment result is abnormal chip bite. Figure 10 This is a conceptual diagram of tool information table 59 when the judgment result is an abnormality. Figure 11 This is a flowchart of the tool replacement process. Figure 12 It means Figure 11 The subsequent flowchart. Detailed Implementation

[0018] An embodiment of the present invention will be described with reference to the accompanying drawings. The following description uses arrows to indicate left, right, front, back, and up / down directions in the drawings. The left-right, front-back, and up / down directions of the machine tool 1 are the X-axis, Y-axis, and Z-axis directions of the machine tool 1, respectively. The right, front, and up directions are positive directions, and the left, back, and down directions are negative directions. Figure 1 The machine tool 1 shown is a machine that performs cutting operations on a workpiece (not shown) using a cutting tool 3. In this embodiment, "ATC" is short for "Automatic Tool Changer". Furthermore, in this embodiment, "NC" is short for "Numerical Control".

[0019] like Figure 1 , Figure 2 As shown, the machine tool 1 has a base 2, a column 5, a control box 6, a worktable assembly 10, a spindle head 7, a spindle 9, a tool changing device 20, and a control device 30. The base 2 is a roughly rectangular metal base. The columnar column 5 is fixed to the rear of the upper surface of the base 2. The control box 6 is fixed to the back of the column 5. The control box 6 houses the control device 30.

[0020] The worktable assembly 10 includes a Y-axis moving mechanism (not shown), a Y-axis worktable 12, an X-axis moving mechanism (not shown), and a worktable 13. The Y-axis moving mechanism is located on the upper surface of the base 2 and in front of the column 5, and includes a Y-axis motor 54 (see reference). Figure 4 The Y-axis moving mechanism, driven by the Y-axis motor 54, moves the Y-axis table 12 in the Y-axis direction. The X-axis moving mechanism is located above the Y-axis table 12 and includes an X-axis motor 53 (see reference). Figure 4 The X-axis moving mechanism, driven by the X-axis motor 53, moves the worktable 13 in the X-axis direction. Therefore, the worktable 13 can move in both the X-axis and Y-axis directions via the X-axis and Y-axis moving mechanisms. The worktable 13 is a plate extending horizontally, with the workpiece fixed to its upper surface.

[0021] like Figure 2 As shown, a Z-axis moving mechanism 8 is provided at the front of the column 5. The Z-axis moving mechanism 8 includes a ball screw 41, bearings 42 and 43, a cam follower 49, and a Z-axis motor 51 (see reference). Figure 4 A ball screw 41 is located at the front of the column 5 and extends along the Z-axis. Bearing portions 42 and 43 support the ball screw 41 so that it can rotate. Bearing portion 42 is located above bearing portion 43. A cam follower 49 is located at the front end of bearing portion 42. The cam follower 49 slides on the cam surface of the plate cam 47 of the spindle head 7, which will be described later.

[0022] The Z-axis motor 51 is fixed above the bearing section 42. The ball screw 41 is connected to the output shaft of the Z-axis motor 51 via a coupling (not shown). The ball screw 41 rotates in both directions around an axis extending vertically, driven by the Z-axis motor 51. A nut 44 is screwed between the bearing sections 42 and 43 on the ball screw 41. The nut 44 is fixed to the rear end of the spindle head 7. When the Z-axis motor 51 rotates in the forward direction, the ball screw 41 rotates, and the nut 44 rises together with the spindle head 7. When the Z-axis motor 51 rotates in the reverse direction, the ball screw 41 rotates in the reverse direction, and the nut 44 falls together with the spindle head 7.

[0023] like Figure 2As shown, the spindle head 7 is located at the front of the column 5 and is box-shaped. The spindle head 7 has a spindle motor 52, a crank 45, a support shaft 46, and a coil spring 48. The spindle motor 52 is fixed to the front of the upper surface of the spindle head 7.

[0024] A support shaft 46 is fixed to the inner rear part of the main shaft head 7. The support shaft 46 is a rod-shaped component extending in the left-right direction. A crank rod 45 is disposed on the upper part of the main shaft head 7. The crank rod 45 has rods 45a and 45b. Rod 45a is a plate-shaped component extending in a generally front-rear direction. Rod 45b is a plate-shaped component extending generally upward from the rear end of rod 45a. The support shaft 46 is inserted through the connection between rods 45a and 45b. The crank rod 45 is configured to swing about the support shaft 46.

[0025] A plate cam 47 is provided at the upper rear end of the lever 45b. A cam surface is formed on the back of the plate cam 47. The cam surface of the plate cam 47 can contact or separate from the cam follower 49. A coil spring 48 is provided on the inner side of the rear part of the spindle head 7. The coil spring 48 extends in the front-rear direction. One end of the coil spring 48 is fixed to the back of the spindle head 7. The other end of the coil spring 48 is fixed to the rear end of the crank lever 45 below the plate cam 47. The coil spring 48 always applies a clockwise force to the crank lever 45 when viewed to the right.

[0026] like Figure 2 , Figure 3 As shown, the spindle 9 is located on the inner side of the lower front part of the spindle head 7 and is cylindrical in shape extending in the vertical direction. The spindle 9 is rotatably supported on the spindle head 7. The spindle 9 is connected to the output shaft of the spindle motor 52. The spindle 9 rotates in both directions around the vertically extending shaft driven by the spindle motor 52.

[0027] The spindle 9 has a shaft hole 91, a mounting hole 92, a space 93, a sliding hole 94, a clamping shaft 81, and a spring 82. The shaft hole 91 extends from the upper end of the spindle 9 to the lower end. The mounting hole 92 opens on the bottom surface of the lower side of the spindle 9. A tool 3 is mounted in the mounting hole 92. The space 93 is formed in the upper part of the mounting hole 92. The space 93 is connected to the mounting hole 92. The sliding hole 94 is formed in the vertical direction between the shaft hole 91 and the space 93. The sliding hole 94 is connected to both the shaft hole 91 and the space 93.

[0028] The clamping shaft 81 is disposed inside the shaft hole 91 and is movable vertically relative to the shaft hole 91. The clamping shaft 81 has a support portion 83, a shaft portion 84, and a holding portion 85. The support portion 83 is disposed at the upper end of the clamping shaft 81 and is columnar. The support portion 83 supports a pin 95. The pin 95 protrudes from the clamping shaft 81. The pin 95 protrudes outward from the main shaft 9 through a through hole (not shown) extending in a direction perpendicular to the axial direction of the main shaft 9. The pin 95 is located below the rod 45a (see reference). Figure 2When crank 45 swings, the front end of rod 45a contacts or separates from pin 95.

[0029] The shaft portion 84 is cylindrical, extending downward from the support portion 83. A gripping portion 85 is located at the lower end of the shaft portion 84 and has multiple steel balls (not shown in the figure). A spring 82 is inserted into the inner side of the shaft hole 91. The upper end of the spring 82 engages with the support portion 83. The spring 82 always applies an upward force to the clamping shaft 81.

[0030] The cutting tool 3 has a support 14 and a cutting tool 4. The support 14 has a flange 15, a shank 16, and a pull stud 17. The flange 15 is cylindrical. One end of the flange 15 holds the cutting tool 4. The flange 15 is detachably held in a clamping arm 23, described later.

[0031] A handle 16 is located at the other end of the flange 15. The handle 16 is conical with a tapered diameter towards the other end of the bracket 14. A rivet 17 is located at the other end of the handle 16. The rivet 17 is T-shaped when viewed from the side.

[0032] like Figure 1 , Figure 2 As shown, the tool changer 20 is located in front of the spindle head 7. The tool changer 20 is a turret type. The tool changer 20 includes a tool magazine 21 and a magazine motor 55.

[0033] The tool magazine 21 has a magazine body 22, a support shaft 25, and multiple clamping arms 23. The magazine body 22 is generally disc-shaped. The support shaft 25 is a rod-shaped structure extending forward and downward. The support shaft 25 is configured to rotate about its axis and support the magazine body 22. Each clamping arm 23 is arranged at given intervals on the outer periphery of the magazine body 22. In this embodiment, 28 clamping arms 23 are provided on the magazine body 22. The clamping arms 23 are configured to swing in the front-rear direction of the magazine body 22. The front end of the clamping arm 23 detachably grips the flange 15 of the tool 3. The output shaft of the magazine motor 55 is connected to the support shaft 25 via a coupling (not shown). The tool magazine 21 rotates forward and backward about the axis of the support shaft 25 by the drive of the magazine motor 55.

[0034] like Figure 2 , Figure 3 As shown, with the tool 3 mounted on the spindle 9, the Z-axis motor 51 rotates forward based on the command of the control device 30. The ball screw 41 rotates around its axis, and the spindle head 7 and the spindle 9 rise together from the machining origin. The machining origin is the mechanical origin of the spindle 9, which is the uppermost position in the Z-axis direction of the spindle 9 capable of machining the workpiece.

[0035] When the main shaft 9 rises, the cam follower 49 contacts the plate cam 47 of the crank 45 and slides on the cam surface of the plate cam 47. The crank 45 overcomes the elastic force of the coil spring 48 and swings counterclockwise around the support shaft 46 when viewed from the right. The front end of the rod 45a engages with the pin 95 from above, pressing the clamping shaft 81 downward. The clamping shaft 81 overcomes the elastic force of the spring 82 and is forced downward. The holding part 85 moves from the sliding hole 94 into the space 93. The holding part 85 releases the pull pin 17 from its grip.

[0036] The spindle 9 rises further to the ATC origin. The ATC origin is the position of the spindle 9, located above the machining origin. With the spindle 9 at the ATC origin, the magazine body 22 of the tool magazine 21 can rotate.

[0037] When the spindle 9 rises, the mounting of the shank 16 relative to the mounting hole 92 is released. The tool 3 disengages from the spindle 9. The tool 3 disengaged from the spindle 9 is referred to as the first tool. One of the multiple clamping arms 23, located at the tool changing position, holds the first tool disengaged from the spindle 9. The tool changing position is the lowest position of the tool magazine 21, and is a position that is close to and opposite the spindle 9 in the vertical direction.

[0038] When the spindle 9 reaches the ATC origin, the control device 30 outputs a command to the tool changing device 20. This command specifies the tool 3 (hereinafter referred to as the second tool) to be installed on the spindle 9. Based on the command, the tool changing device 20 drives the magazine motor 55, causing the magazine body 22 to rotate. The tool changing device 20 rotates the magazine body 22 from the state where the first tool is in the tool changing position to the state where the second tool is in the tool changing position. The second tool, indexed to the tool changing position, is located below the spindle 9 that has moved to the ATC origin.

[0039] Next, based on the command from the control device 30, the Z-axis motor 51 rotates in the reverse direction. The ball screw 41 rotates in the reverse direction around its axis, and the spindle 9 descends from the ATC origin. The shank 16 of the second tool enters the mounting hole 92, and the pull stud 17 enters the space 93.

[0040] With the shank 16 inserted into the mounting hole 92, the main shaft 9 descends further. The cam follower 49 slides on the cam surface of the plate cam 47 and then moves away from the plate cam 47. The crank lever 45, under the force of the coil spring 48, swings clockwise about the support shaft 46. The front end of the lever 45a moves upward from the pin 95, releasing the downward pressure on the clamping shaft 81. The clamping shaft 81 releases the downward force applied to the gripping part 85.

[0041] The gripping part 85 moves from the space 93 to the sliding hole 94. The gripping part 85 grips the pull stud 17 of the second tool through multiple steel balls and lifts it up. The clamping arm 23 holding the second tool releases the grip on the second tool. The shank 16 is installed in the mounting hole 92, and the spindle 9 completes the installation of the second tool. The action of clamping shaft 81, crank 45, etc. when installing the tool 3 onto the spindle 9 is called the installation action.

[0042] like Figure 4 As shown, the control device 30 includes a CPU 31, a ROM 32, a RAM 33, a storage device 34, an input / output interface 35, and drive circuits 61-65. The CPU 31 provides comprehensive control of the control device 30. The ROM 32 stores various programs. The RAM 33 stores various data being processed and executed.

[0043] Storage device 34 is a non-volatile memory that stores the NC program, multiple tool information tables 59 (described later), etc. The NC program consists of multiple program blocks. Each program block contains at least one instruction, such as a tool change instruction or a display instruction.

[0044] The input / output interface 35 is electrically connected to the drive circuits 61-65, encoders 71-75, input unit 37, and display unit 38, enabling the input and output of various signals. The input unit 37 and display unit 38 are located on the operation panel 36 of the machine tool 1. The operation panel 36 is located on the outer wall of a cover (not shown) covering the machine tool 1. The input unit 37 receives various information, operation instructions, etc., and inputs them to the CPU 31 via the input / output interface 35. The display unit 38 displays various screens, error messages, etc., based on the instructions input from the CPU 31 via the input / output interface 35.

[0045] Drive circuit 61 is electrically connected to Z-axis motor 51. Drive circuit 62 is electrically connected to spindle motor 52. Drive circuit 63 is electrically connected to X-axis motor 53. Drive circuit 64 is electrically connected to Y-axis motor 54. Drive circuit 65 is electrically connected to library motor 55. Drive circuits 61, 62, 63, 64, and 65 output drive current to Z-axis motor 51, spindle motor 52, X-axis motor 53, Y-axis motor 54, and library motor 55 based on instructions input from CPU 31 via input / output interface 35. Z-axis motor 51, spindle motor 52, X-axis motor 53, Y-axis motor 54, and library motor 55 are servo motors that rotate according to the input drive current. Drive circuits 61, 62, 63, 64, and 65 output the drive current as a return value to input / output interface 35.

[0046] Z-axis motor 51 has encoder 71. Spindle motor 52 has encoder 72. X-axis motor 53 has encoder 73. Y-axis motor 54 has encoder 74. Library motor 55 has encoder 75. Encoders 71, 72, 73, 74, and 75 are absolute encoders, which detect the rotation angles of Z-axis motor 51, spindle motor 52, X-axis motor 53, Y-axis motor 54, and library motor 55, respectively. Encoders 71, 72, 73, 74, and 75 input the detected rotation angles to input / output interface 35. CPU 31 obtains the rotation angle θ (rad) of Z-axis motor 51 detected by encoder 71, estimates the rotation angle of ball screw 41 connected to Z-axis motor 51, and estimates the Z-axis position (hereinafter referred to as Z-axis position) of spindle 9 moved by the rotation of ball screw 41.

[0047] Figure 5 (A) is a graph showing the relationship between the rotation angle θ (rad) (horizontal axis) of the Z-axis motor 51 during the installation process and the disturbance force F (Nm) applied to the Z-axis motor 51 (vertical axis). Figure 5 In (A), in order to eliminate the effects caused by vibration of machine tool 1, a low-pass filter based on removing the inherent vibration of machine tool 1 is implemented. During the installation operation, the Z-axis position of spindle 9 changes in the negative direction.

[0048] The disturbance force F applied to the Z-axis motor 51 is the force acting on the Z-axis motor 51 as a reaction force generated by the drive of the Z-axis motor 51. The disturbance force F is included in the torque T of the Z-axis motor 51. m In (Nm), the following numerical relationship is satisfied.

Formula 1

[0049] CPU31 obtains the drive current of Z-axis motor 51 from drive circuit 61 and the rotation angle θ from encoder 71, thereby obtaining torque T. m CPU31 is based on the obtained torque T mThe disturbance force F is obtained by taking the rotation angle θ and formula 1.

[0050] Figure 5 (B) is a graph showing the relationship between the Z-axis position (horizontal axis) of the spindle 9 during the installation process and the time derivative value (hereinafter referred to as the derivative value f) (vertical axis) of the disturbance force F. Figure 5 In (B), the Z-axis position of the spindle 9 (hereinafter referred to as the detection position (mm)) when the differential value f in the installation operation is minimized is stored in the tool information table 59 described later. The detection position is the relative position in the Z-axis direction with the machining origin as the reference.

[0051] In order to determine the installation status, the CPU 31 of the control device 30 obtains the Z-axis position of the spindle 9 during the installation operation and the disturbance force F applied to the Z-axis motor 51 at a given period (e.g., 0.5ms). The CPU 31 obtains the Z-axis position of the spindle 9 by obtaining the rotation angle θ from the encoder 71.

[0052] After applying a low-pass filter to the acquired disturbance force F, CPU 31 performs time differentiation to calculate the derivative value f. CPU 31 stores the calculated derivative value f in RAM 33, establishing a correspondence between the derivative value f and the Z-axis position of the spindle 9. CPU 31 then adjusts the value based on changes in the derivative value f stored in RAM 33 (refer to...). Figure 5 (B) is used to detect the detection location.

[0053] Reference Figure 6 The tool information table 59 stored in the storage device 34 will be described below. The tool information table 59 stores information related to the tool 3 held by each clamping arm 23. That is, the same number of tool information tables 59 as the number of clamping arms 23 (28 arms) are stored as a data set in the storage device 34. The tool information table 59 is set up for each tool 3. In each tool information table 59, 11 indices and their corresponding data are established and stored accordingly.

[0054] Index number 1 is associated with the tool number. The tool number is used to identify the type of tool 4. Index number 2 is associated with the clamping arm number. The clamping arm number (1 to 28) is used to identify which of the multiple clamping arms 23 in the tool magazine 21 it is.

[0055] Index number 3 is associated with the number of times N (N being a natural number) is detected for tool 4 (tool 3) indicated by the tool number. The number of times N is detected is the number of times the detection position is detected for tool 3 indicated by the tool number during the installation process. The number of times N is counted independently for each tool information table 59, and incremented by 1 each time the corresponding tool 3 is installed on the spindle 9.

[0056] Index number 4 corresponds to the detection position detected according to a specific angle φ during the Nth installation action of tool 3.

[0057] Index number 5 is associated with the detection position in the (N-1)th installation action. Index number 6 is associated with the detection position in the (N-2)th installation action. Index number 7 is associated with the detection position in the (N-3)th installation action. If the number of detections N is 3 or less, and the values ​​of N-1, N-2, and N-3 are zero or less, then indices 5, 6, and 7 are replaced with "Null" to indicate that no detection position is matched.

[0058] Index number 8 is associated with the baseline value. The baseline value is the average (mm) of the detection positions in the (N-1)th, (N-2)th, and (N-3)th installation actions, serving as the reference value for the detection position. If any of index numbers 5, 6, or 7 has a "Null" value and the baseline value cannot be calculated, index number 8 is associated with "Null".

[0059] Index number 9 corresponds to the baseline value acquisition status described later. Index number 10 corresponds to the detection value. The detection value is the difference obtained by subtracting the baseline value from the Nth detection position. Index number 11 corresponds to the judgment result. The judgment result is the result of judging the installation status of tool 3 in the installation action based on the detection value, as detailed later.

[0060] After confirming the information related to a tool 3, the operator inputs a display command into the input unit 37. The display command includes a command specifying the tool number. The input unit 37 accepts the input display command and inputs it into the CPU 31. When a display command is input, the CPU 31 retrieves the tool information table 59 corresponding to the tool number from the storage device 34 and displays the information in the retrieved tool information table 59 on the display unit 38.

[0061] Reference Figures 7-10 This section explains the update to tool information table 59. Figures 7-10 To simplify the explanation, a portion of the conceptual diagram of tool information table 59 is shown (index numbers 4 to 7, 11).

[0062] like Figure 7 As shown in (A), before the installation action is performed on a tool 3 when the number of detection N is the first time, the index numbers 4 to 7 and 11 of the tool information table 59 are established to correspond with "Null".

[0063] When a tool 3 is installed on the spindle 9, the CPU 31 of the control device 30 detects the detection position. For example... Figure 7 As shown in (B), CPU31 updates the detection position in tool information table 59. More specifically, CPU31 saves the value (Null) of index number 6 to index number 7, saves the value (Null) of index number 5 to index number 6, saves the value (Null) of index number 4 to index number 5, and saves the detection position (31mm) from the first installation action to index number 4. The value of index number 11 is retained.

[0064] like Figure 7 As shown in (C), in the storage device 34, the data stored in the tool information table 59 is retained before the next (N=2nd) installation operation. Figure 7 (D)~ Figure 7 As shown in (F), the values ​​of index numbers 4 to 7 are updated whenever a tool 3 is installed on the spindle 9.

[0065] like Figure 8 As shown in (A), when the number of detections N is the Mth (M is an integer greater than or equal to 4), index numbers 4 to 7 are respectively associated with the detection positions. In this case, after the installation action is performed, the CPU 31 determines the installation state of the tool 3 installed on the spindle 9. The installation state in which the workpiece can be machined by the tool 3 without affecting the cutting accuracy is called the fully installed state.

[0066] like Figure 8 As shown in (B), after the Mth installation action, the CPU31 updates the detection position of the tool information table 59. The CPU31 determines the reference value by calculating the average value of the values ​​of index numbers 5 to 7 in the tool information table 59 and stores it in index number 8. The CPU31 determines the detection value by subtracting the reference value from the detection position at index number 4 (the detection position in the Mth installation action).

[0067] CPU31 determines the installation status by comparing the absolute value of the detected value with a given threshold. More specifically, CPU31 determines a complete installation status when the absolute value of the detected value is below the threshold. The threshold is stored in ROM32. CPU31 saves the case where the determination result is a complete installation status in index number 11 (see reference). Figure 8 (C)). Before the (M+1)th installation operation, the value of index number 11 is maintained in the same way as index numbers 4 to 7 (see [reference]). Figure 8 (D)).

[0068] An abnormality in the mounting state includes a chip-biting abnormality when the tool 3 is mounted on the spindle 9 with foreign matter (e.g., chips generated during cutting) adhering between the tool 3 and the spindle 9. In the case of chip-biting abnormality, because of the foreign matter between the tool 3 and the spindle 9, the position of the tool 3 relative to the spindle 9 is lower than in the fully mounted state. Therefore, if the workpiece is machined under these chip-biting abnormality conditions, the cutting accuracy may be reduced.

[0069] like Figure 8 As shown in (C), in the fully installed state, the detection position is approximately 32 mm. As described above, when the spindle 9 is in the detection position, the plate cam 47 disengages from the cam follower 49, and the gripping part 85 grips the pull pin 17.

[0070] On the other hand, in the event of a chip bite abnormality, the pull stud 17 is positioned lower relative to the spindle 9 compared to the fully installed state. Therefore, during the installation operation, the timing of the plate cam 47 disengaging from the cam follower 49 is earlier than in the fully installed state. Consequently, in the event of a chip bite abnormality, the disturbance force F(…) varies depending on the Z-axis position of the spindle 9. Figure 5 (A) dashed line) and differential value f( Figure 5 (B) dashed line) and the situation of fully installed state ( Figure 5 Compared to the solid lines of (A) and (B), it shifts in the positive direction of the Z-axis position.

[0071] like Figure 9 As shown in (B), the detection position in the case of abnormal chip bite is shifted upwards (approximately 35 mm) compared to the detection position in the fully installed state. After the Mth installation operation, the CPU31 updates the values ​​of index numbers 4 to 7 in the tool information table 59. The CPU31 determines the reference value based on the values ​​of index numbers 5 to 7 in the tool information table 59, and determines the detection value based on the detection position of index number 4 and the reference value.

[0072] CPU31 determines whether a chip bite anomaly occurs based on the detected value. More specifically, CPU31 determines a chip bite anomaly if the absolute value of the detected value is greater than a threshold and the detected value is above zero. In cases where a chip bite anomaly is determined, CPU31 stores the determination result in index number 11 (see reference). Figure 9 (C)).

[0073] Before performing the (M+1)th installation action, the data stored in the tool information table 59 in the storage device 34 is retained (see reference). Figure 9(D)). If a display command is input between the determination of the installation status in the Mth installation operation and the commencement of the M+1th installation operation, the CPU31 displays the tool information table 59 of a tool 3 on the display unit 38 based on the display command.

[0074] like Figure 9 As shown in (E), the CPU31 performs the (M+1)th installation action, updating the values ​​of index numbers 4 to 7 in the tool information table 59. The CPU31 saves the value of index number 4 (36mm) to index number 5, and saves the detection position (31mm) from the (M+1)th installation action to index number 4.

[0075] like Figure 9 As shown in (F), if the CPU 31 stores a judgment result of chip bite abnormality in index number 11, before determining the installation status, it deletes all values ​​from index number 5 to index number 11 and establishes a correspondence with "Null". Before performing the M+2th installation action, the data stored in the tool information table 59 in the storage device 34 is retained (see reference). Figure 9 (G)).

[0076] For example, in the N=1 to N=3 installation operations, there may sometimes be a detection location for chip bite-in abnormality. Additionally, sometimes the determination result in the N=M-3 to N-1 installation operations is a chip bite-in abnormality, and the values ​​of index numbers 5 to 11 are deleted. Subsequent installation operations will then include a detection location (approximately 35mm) for the chip bite-in abnormality. In such cases, such as... Figure 10 As shown in (A), before the N=Mth installation operation, the detection position under the chip bite abnormality is contained in any one of index numbers 4 to 6. After the N=Mth installation operation, the detection positions saved in index numbers 4 to 6 are saved to index numbers 5 to 7 for the determination of the reference value.

[0077] After the Mth installation operation, the chip bite abnormality was eliminated, and the detection position (approximately 32mm) in the fully installed state was saved in index number 4 (refer to...). Figure 10 (B)). In addition, the detection locations under abnormal chip bite are stored in index numbers 5 to 7.

[0078] The case where the detection position under chip bite abnormality is stored in any one of index numbers 5 to 7, and the case where the detection position (approximately 31mm) in the fully installed state is included in all index numbers 5 to 7 (refer to...) Figure 8Compared to (B), the reference value becomes larger. If the reference value becomes larger, the magnitude of the detected value changes. Since the installation status is determined based on the detected value, if the reference value becomes larger, the installation status may sometimes be inaccurate. An abnormality in which the installation status cannot be accurately determined due to an abnormal reference value is called a detection anomaly.

[0079] CPU31 determines whether a detection anomaly is detected based on the detected value. More specifically, CPU31 determines a detection anomaly if the absolute value of the detected value is greater than a threshold and less than zero. In cases where an anomaly is detected, CPU31 stores the result in index number 11 (see reference). Figure 10 (C)). Before the (M+1)th installation operation, the data stored in the tool information table 59 in the storage device 34 is maintained (see reference). Figure 10 (D)).

[0080] like Figure 10 As shown in (E), CPU31 performs the M+1th installation action, updating the values ​​of index numbers 4 to 7 in the tool information table 59.

[0081] like Figure 10 As shown in (F), if the CPU 31 stores a judgment result of "detection abnormality" in index number 11, it deletes all values ​​from index number 5 to index number 11 before determining the installation status and establishes a correspondence with "Null". Before performing the (M+2)th installation action, the data stored in the tool information table 59 in the storage device 34 is retained (see reference). Figure 10 (G)).

[0082] Reference Figure 11 , Figure 12 The tool change process executed by the CPU 31 of the control device 30 will be described. In the tool change process, the CPU 31 performs the replacement of the tool 3 based on the tool changer 20 and determines its installation status. If the program block read from the NC program is a tool change instruction, the CPU 31 reads the control program stored in the ROM 32 and executes the tool change process. At the start of the tool change process, the spindle 9 is located at the machining origin.

[0083] like Figure 11 As shown, CPU 31 causes Z-axis motor 51 to rotate in the forward direction, starting the ascent of spindle 9 (S1). CPU 31 determines whether spindle 9 has reached the ATC origin (S2). If CPU 31 determines that spindle 9 has not reached the ATC origin (S2: "No"), the process returns to S2. If CPU 31 determines that spindle 9 has reached the ATC origin (S2: "Yes"), the rotation of Z-axis motor 51 is stopped, stopping the ascent of spindle 9 (S3).

[0084] CPU 31 retrieves the information stored in the tool information table 59 corresponding to the second tool from the storage device 34 (S4). CPU 31 increments the value of index number 3 (detection number N) of the tool information table 59 retrieved in S4 by 1 (S5). CPU 31 drives the magazine motor 55 to rotate the tool magazine 21, and rotates the clamping arm 23 holding the second tool to the tool changing position (S6).

[0085] CPU31 reverses the rotation of Z-axis motor 51, initiating the descent of spindle 9 (S7). This initiates the tool 3 mounting process. CPU31 then determines the Z-axis position of spindle 9 and the disturbance force F (S8). In S8, CPU31, based on the drive current from drive circuit 61 and the rotation angle θ from encoder 71, determines the torque T of Z-axis motor 51. m The CPU31 obtains the torque T based on equation 1. m The included disturbance force F.

[0086] CPU31 determines whether a new Z-axis position and disturbance force F of spindle 9 have been acquired (S11). If CPU31 determines that no new Z-axis position and disturbance force F have been acquired (S11: "No"), the process returns to S11. If CPU31 determines that a new Z-axis position and disturbance force F have been acquired (S11: "Yes"), it determines whether spindle 9 has reached the machining origin based on the acquired Z-axis position (S12).

[0087] If the CPU 31 determines that the spindle 9 has not reached the machining origin (S12: "No"), the CPU 31 performs low-pass filter-based processing on the obtained Z-axis position and the disturbance force F (S13). The CPU 31 performs time differentiation on the disturbance force F to calculate the differential value f (S14). The CPU 31 stores the Z-axis position and the differential value f in RAM 33 in a corresponding manner (S15). In RAM 33, the Z-axis position and the differential value f are stored in time sequence. The CPU 31 returns the processing to S11.

[0088] If the CPU31 determines that the spindle 9 has reached the machining origin (S12: "Yes"), it stops the acquisition of the Z-axis position of the Z-axis motor 51 and the disturbance force F, which started in the process of S8 (S16). The CPU31 stops the rotation of the Z-axis motor 51 and stops the descent of the spindle 9 (S17).

[0089] CPU 31 detects the detection position based on the differential value f stored in RAM 33 (S21). In S21, CPU 31 determines the detection position based on the differential value f that changes accordingly with the Z-axis position. CPU 31 updates the detection positions of index numbers 4-7 (S22) (see reference). Figure 8(B)). CPU31 transfers processing to S23 (see reference). Figure 12 ).

[0090] like Figure 12 As shown, CPU31 determines in S22 (refer to...) Figure 11 In the updated tool information table 59, check whether the detection position in the installation action of the N-3rd detection count is saved in index number 7 (S23). If the detection count N is from the 1st to the 3rd, or if the determination result of the installation status in the N-3rd to N-1st installation actions of tool 3 is determined to be abnormal (chip bite abnormality or detection abnormality) and the value of index number 7 is deleted, create a corresponding "Null" in index number 7. If the CPU31 determines that the detection position is not saved in index number 7 (S23: "No"), the process is transferred to S36.

[0091] If CPU31 determines that a detection position is stored in index number 7 (S23: "Yes"), it determines whether the determination result of the installation state in the (N-1)th installation action of the tool 3 is abnormal (chip bite abnormality or detection abnormality) (S24). In the processing of S24, CPU31 makes a determination based on the determination result of index number 11. If the determination result of index number 11 is chip bite abnormality or detection abnormality, and the determination result of the installation state in the (N-1)th installation action is abnormal (S24: "Yes"), CPU31 deletes the values ​​of index numbers 5 to 11 (S25) and transfers the processing to S36.

[0092] If the determination result of index number 11 is "fully installed" and the determination result of the installation status in the (N-1)th installation action is not abnormal (S24: "No"), CPU31 determines the reference value by calculating the average value of the detection positions of index numbers 5 to 7, and saves the determined reference value in index number 8 (S26). CPU31 obtains the detection position of index number 4 and the reference value of index number 8 (S27). CPU31 determines the detection value by subtracting the reference value from the detection position, and saves the determined reference value in index number 10 (S28).

[0093] CPU31 determines whether the absolute value of the detection value determined in S28 is below the threshold (S31). If CPU31 determines that the absolute value of the detection value is below the threshold (S31: "Yes"), it considers the determination result to be a fully installed state and transfers the process to S35.

[0094] If the CPU 31 determines that the absolute value of the detected value is greater than the threshold (S31: "No"), it then determines whether the detected value is zero or greater (S32). If the CPU 31 determines that the detected value is zero or greater (S32: "Yes"), it considers the determination result to be a chip bite abnormality and issues a chip bite abnormality notification (S33). In the process of S33, the CPU 31 notifies the user by displaying the determination result as a chip bite abnormality on the display unit 38. The CPU 31 then transfers the process to S35.

[0095] If the CPU31 determines that the detection value is less than zero (S32: "No"), it considers the determination result as a detection anomaly and issues a detection anomaly notification (S34). During the processing in S34, the CPU31 notifies the user by displaying the determination result as a detection anomaly on the display unit 38. The CPU31 then transfers the processing to S35.

[0096] CPU31 saves the determination result of the installation status (fully installed, chip bite abnormal, or detection abnormality) of the tool 3 in the Nth installation operation in index number 11 (S35). CPU31 saves the reference value acquisition information in index number 9 (S36). The reference value acquisition status indicates whether the detection position required to determine the reference value in the determination of the installation status in the N+1th installation operation is saved in the tool information table 59. If the detection position is saved in index numbers 4 to 6, CPU31 saves the case where the reference value can be determined in the N+1th installation operation in index number 9. If the detection position is not saved in at least one of index numbers 4 to 6, CPU31 considers that the reference value cannot be determined in the N+1th installation operation and establishes a correspondence between "Null" and index number 9. CPU31 ends the tool change process.

[0097] As explained above, the CPU 31 of the control device 30 detects the detection position based on the change in the differential value f of the disturbance force F (S21). The CPU 31 stores the detection position in the Nth installation action in the storage device 34 by updating the index number 4 of the tool information table 59 (S22). The CPU 31 determines the reference value based on the detection positions in the N-3 to N-1 installation actions stored in index numbers 5 to 7 (S26). The CPU 31 determines the detection value based on the detection position in the Nth installation action and the reference value, and determines the installation state based on the detection value (S31, S32). If the determination result of the installation state is abnormal (chip bite abnormality or detection abnormality), the CPU 31 stores the detection position in the N+1th installation action in the storage device 34 in the N+1th installation action (S22), and deletes the detection positions in the N-2 to Nth installation actions stored in index numbers 5 to 7 (S25).

[0098] Thus, if the installation status determination result is abnormal, the control device 30 deletes the detection positions from the (N-2)th to the Nth installation actions. Therefore, in the determination of the installation status after the (N+1)th action, it can suppress the determination of the installation status based on the detection positions when the installation status determination result is abnormal. Therefore, the control device 30 can determine the installation status with high accuracy. Furthermore, in the storage device 34, the detection positions from the (N-2)th to the Nth installation actions are maintained before the detection positions in the (N+1)th installation action are stored in the storage device 34. By inputting a display command during the period from when the installation status determination result of the tool 3's Nth installation action is determined to be abnormal until the detection positions in the (N+1)th installation action are stored in the storage device 34, the operator can confirm the data (detection positions, detection values, etc.) in the tool information table 59 after the completion of the Nth installation action. Therefore, the operator can accurately grasp the status of the machine tool 1.

[0099] If the absolute value of the detected value is greater than a threshold (S31: "No"), the CPU31 determines that the installation state is abnormal. The control device 30 determines whether the installation state is abnormal based on the magnitude of the absolute value of the detected value, which indicates how much the detected position deviates from the reference value in the Nth installation operation. Therefore, the control device 30 can determine the installation state with high accuracy.

[0100] If CPU31 determines that the absolute value of the detected value is greater than the threshold (S31: "No") and the detected value is zero or higher (i.e., the detection position in the Nth installation action is above the reference value) (S32: "Yes"), then the abnormality of the installation state is determined to be a chip bite abnormality. If CPU31 determines that the absolute value of the detected value is greater than the threshold (S31: "No") and the detected value is less than zero (i.e., the detection position in the Nth installation action is less than the reference value) (S32: "No"), then the abnormality of the installation state is determined to be a detection abnormality. Since the control device 30 determines whether the abnormality of the installation state is a chip bite abnormality or a detection abnormality, it can perform processing that matches the type of abnormality.

[0101] If the CPU 31 determines that the installation status malfunction is a chip bite malfunction, it issues a chip bite malfunction notification (S33). If the CPU 31 determines that the installation status malfunction is a detection malfunction, it issues a detection malfunction notification (S34). The control device 30 issues different notifications for chip bite malfunctions and detection malfunctions. Therefore, the operator can determine whether the installation status malfunction is a chip bite malfunction or a detection malfunction.

[0102] In the Nth installation operation of the tool 3, the CPU31 determines the reference value based on the detection positions in the N-3 to N-1 installation operations (S26). If the CPU31 determines that the installation status in the Nth installation operation is abnormal (chip bite abnormality or detection abnormality), after performing the N+1th installation operation, it deletes all detection positions from the N-2 to Nth operations. In the N+1th installation operation, the reference value is determined based on the detection positions in the N-2 to Nth installation operations. If the installation status is determined to be abnormal in the Nth installation operation, the value of the reference value in the N+1th installation operation will become abnormal, and if the installation status is directly determined, it may become a detection abnormality. If the control device 30 determines that the installation state is abnormal during the Nth installation operation of the tool 3, it deletes all the detection positions in the N-2th to Nth installation operations that are used to determine the installation state of the (N+1th)th installation operation. Therefore, the control device 30 can determine the installation state with high accuracy.

[0103] In determining the installation status during the Nth installation operation, CPU 31 calculates the average value of the detection positions from the (N-3)th to the (N-1)th installation operations to determine the reference value (S26). Control device 30 calculates the average value of multiple detection positions stored in the tool information table 59 up to the (N-1)th operation as a statistical process. Therefore, control device 30 can determine the installation status with high accuracy during the Nth installation operation.

[0104] CPU31 performs the tool installation action (S7) by reversing the rotation of Z-axis motor 51 to lower spindle 9. During the tool installation action, CPU31 obtains the torque T of Z-axis motor 51. m The interference force F is obtained by rotating the angle θ. The CPU 31 detects the detection position based on the variation of the derivative value f of the interference force F (S21). The tool 3 is held by the holding part 85 at a timing when it leaves the cam follower 49 from the plate cam 47, thereby mounting it to the spindle 9. This timing is the timing when the Z-axis position of the spindle 9 becomes the detection position, and the control device 30 is based on the torque T. m The interference force F contained within is used to detect the position. Therefore, the control device 30 can determine the installation status with high accuracy.

[0105] The present invention can be modified in various ways from the above embodiments. The various modifications described below can be combined separately as long as they do not contradict each other. The control device 30 is not limited to being installed on the machine tool 1; it can also be installed separately from the machine tool 1. For example, the control device 30 can also be a device connected to the machine tool 1 (PC, special-purpose machine, etc.). The CPU 31 can also be replaced by a processor such as a microcomputer, ASIC (Application Specific Integrated Circuits), or FPGA (Field Programmable Gate Array). Tool changing processing can also be handled by multiple processors in a distributed manner.

[0106] The non-transitory storage medium, such as ROM 32 or storage device 34, can be any storage medium capable of retaining information regardless of the duration of information storage. The non-transitory storage medium may also not contain temporary storage media (e.g., transmitted signals). The control program for performing the tool change operation can, for example, be downloaded from a server connected to a network other than those shown in the figure (i.e., sent as a transmission signal) and stored in ROM 32 or storage device 34. In this case, the control program can be stored in a non-transitory storage medium such as an HDD provided by the server.

[0107] The tool changing device 20 is not limited to a turret type; for example, it can also be an arm type. The structure of the Z-axis moving mechanism 8 can also be modified appropriately. The Z-axis moving mechanism 8 can also replace the ball screw 41 and have a structure in which the spindle 9 is moved by the rotation of the Z-axis motor 51. The Z-axis moving mechanism 8 can also replace the ball screw 41 and have, for example, a sliding screw extending along the Z-axis direction or a splined shaft with teeth formed along the Z-axis direction. In this case, the CPU 31 can also determine the installation state in the same way as in the above embodiment.

[0108] In the above embodiment, the CPU 31 estimates the Z-axis position of the spindle 9 based on the rotation angle θ obtained from the encoder 71, detects the detection position based on the differential value f that changes accordingly with the Z-axis position, and determines the installation state based on the detection position. Alternatively, the CPU 31 may determine the installation state based on the rotation angle θ (hereinafter referred to as the specific angle φ) when the spindle 9 is in the detection position, instead of detecting the position. In this case, the CPU 31 stores the specific angle φ in the Nth installation operation, the specific angle φ in the (N-1)th installation operation, the specific angle φ in the (N-2)th installation operation, and the specific angle φ in the (N-3)th installation operation in the tool information table 59, respectively. Furthermore, the reference value is determined based on the specific angle φ in the (N-3)th to (N-1)th installation operations. The CPU 31 determines the installation state based on the detection value obtained by subtracting the reference value from the specific angle φ.

[0109] The detection position can be determined solely by the Z-axis position of the spindle 9 during the installation of the tool 3 onto the spindle 9, and is not limited to the Z-axis position corresponding to the smallest differential value f shown during the installation operation. For example, the CPU 31 can also detect the Z-axis position corresponding to the largest differential value f shown during the installation operation as the detection position. Alternatively, the CPU 31 can detect the position offset by a given distance z in the Z-axis direction from the Z-axis position corresponding to the smallest differential value f. Furthermore, the CPU 31 can detect the position obtained by multiplying the Z-axis direction corresponding to the smallest differential value f by a given coefficient α. In these cases, the detection position is also the Z-axis position of the spindle 9 during the installation of the tool 3 onto the spindle 9, and the CPU 31 can determine the installation state based on the detection position.

[0110] The reference value in the Nth installation operation can be determined simply by using the detection positions stored in the tool information table 59 from the N-1th installation operations. The method for determining the reference value can also be appropriately modified. In the above embodiment, in the Nth installation operation, the CPU 31 determines the reference value based on the detection positions from the N-3rd to N-1th installation operations, but it can also be based on the detection positions from the N-4th to N-2th installation operations. In the above embodiment, the CPU 31 determines the reference value based on three detection positions (from the N-3rd to N-1th installation operations) from the N-1th installation operations. Conversely, the CPU 31 can also determine the reference value based on two or more detection positions from the N-1th installation operations. Alternatively, the CPU 31 can determine the reference value based on one detection position from the N-1th installation operations. In this case, the CPU 31 can omit the statistical processing used to determine the reference value.

[0111] In the above embodiment, as a statistical process, the CPU 31 determines the reference value by calculating the average of multiple detection positions (detection positions in the N-3 to N-1th installation operations) in the N-1th and previous installation operations. Alternatively, as a statistical process, the CPU 31 may also determine the reference value by calculating the median value of the multiple detection positions in the N-1th and previous installation operations. As a statistical process, the CPU 31 may also determine the reference value as the maximum or minimum value among the multiple detection positions in the N-1th and previous installation operations.

[0112] CPU31 only needs to determine the installation status based on the detection position and the reference value in the Nth installation action. The method for determining the installation status can also be appropriately modified. For example, CPU31 can also determine the detection value by multiplying the difference obtained by subtracting the reference value from the detection position in the Nth installation action by a coefficient β, and determine the installation status based on this detection value. For example, CPU31 can also determine the detection value by subtracting the reference value from the sum of the detection positions in the Nth and N-1th installation actions, and determine the installation status based on this detection value. The threshold used to determine the installation status does not have to be a given value and can be appropriately modified. For example, CPU31 can also calculate the standard deviation σ of multiple detection positions and use 6 times the standard deviation σ (6σ) as the threshold to determine the installation status.

[0113] If the installation status determination result is abnormal, the values ​​stored in index numbers 5 to 11 are deleted. However, the timing of the deletion only needs to be after the timing (S22) when the detection position in the (N+1)th installation action is stored in index number 4, and can be appropriately changed. For example, the CPU 31 can also delete the values ​​stored in index numbers 5 to 11 after the detection position in the (N+1)th installation action is stored in index number 4 (S22) and the base value is determined (S26). In this case, in order to determine the installation status in the installation actions after the (N+2)th installation action with high accuracy, it is preferable to delete the base value stored in index number 8. For example, the CPU 31 can also delete the values ​​stored in index numbers 5 to 11 after the detection position in the (N+2)th installation action is stored in index number 4.

[0114] If the installation status determination result is abnormal in the Nth installation action, in the N+1th installation action, all values ​​stored in index numbers 5 to 7 (detection positions from the N-2th to the Nth installation actions) are deleted, but the scope of deletion can be appropriately changed. For example, CPU31 may also delete the values ​​stored in index numbers 5 and 6. Alternatively, CPU31 may choose not to delete at least one of the values ​​stored in index numbers 8 to 11 (base value, base value acquisition status, detection value, determination result).

[0115] CPU31 can also choose not to determine whether the abnormality is a chip bite abnormality or a detection abnormality if the installation status determination result is abnormal (S31: "No"). In this case, the processing of S32 can be omitted in the tool change process. Alternatively, the notification that the installation status determination result is abnormal can be given instead of the processing of S33 and S34.

[0116] CPU31 can also determine whether the abnormality is a chip bite abnormality or an abnormality other than the detection abnormality (such as the deterioration of tool 3) when the determination result of the installation state is abnormal (S31: "No").

[0117] In the processing of S32, CPU31 can also determine that the abnormality in the installation state is a chip bite abnormality if the detected value is greater than zero. In this case, CPU31 determines that the abnormality in the installation state is a detection abnormality if the detected value is less than zero.

[0118] CPU31 may also choose not to send a chip bite abnormality notification if the installation status anomaly is determined to be a chip bite abnormality. In this case, the processing step S33 can be omitted during tool change processing. CPU31 may also choose not to send a detection abnormality notification if the installation status anomaly is determined to be a detection abnormality. In this case, the processing step S34 can be omitted during tool change processing.

[0119] The notification methods for chip bite-in abnormality (S33) and detection abnormality (S34) are not limited to the display on the display unit 38, and can be modified appropriately. For example, the notification methods for chip bite-in abnormality and detection abnormality can also be provided by sound emitted from a speaker (not shown) or by the illumination of a lamp.

[0120] In the above embodiment, the CPU 31 obtains the disturbance force F and detects the detection position based on the differential value f of the disturbance force F. Alternatively, the CPU 31 may also detect the position based on the obtained torque T. m The detection position is then detected. In this case, the CPU31 can also detect the torque T that varies according to the Z-axis position. m In the figure, T represents either the maximum or minimum torque.m The Z-axis position of the corresponding spindle 9 is used as the detection position. CPU31 can also detect torque T. m Performing the time derivative, it will be related to the torque T. m The differential value represents the maximum or minimum torque T. m The differential value corresponds to the Z-axis position of the main spindle 9 as the detection position. In this case, the CPU 31 can also detect the position based on the torque T. m The installation status is determined by changes in the data.

[0121] CPU31 can also detect the Z-axis position of the spindle 9 corresponding to the largest differential value f among the varying differential values ​​f, as the detection position. In this case, CPU31 can also determine the installation status based on the change in differential value f.

[0122] For example, the CPU 31 may not differentiate the interference force F, but instead detect the detection position based on the interference force F that varies according to the Z-axis position of the spindle 9. In this case, the CPU 31 can also detect the Z-axis position corresponding to either the maximum or minimum interference force F among the varying interference forces F as the detection position. In this case, the CPU 31 can also determine the installation state based on the variation of the interference force F.

[0123] CPU31 can also be based on the disturbance force F (torque T) m The detection position is determined by squaring the disturbance force F (torque T). The CPU31 can also determine the detection position based on the value obtained by squaring the disturbance force F (torque T). m The detection position can be determined by the value obtained by performing a second-order derivative on the disturbance force F (torque T) within a given time period. m The detection location is determined by averaging the values ​​obtained from the averages.

[0124] In the (N+1)th installation operation, CPU 31 determines whether the installation status determination result in the Nth installation operation is abnormal based on the determination result stored in index number 11 (S24). Conversely, CPU 31 can also determine whether the installation status determination result in the Nth installation operation is abnormal based on the reference value acquisition status stored in index number 9. The reference value acquisition status indicates whether the detection position required to determine the reference value in the installation status determination of the N+1th installation operation is stored in the tool information table 59. If the detection position is stored in index number 7 and the installation status determination result in the Nth installation operation is abnormal, since the values ​​of index numbers 5 to 7 are deleted, the reference value acquisition status of index number 9 is associated with "Null". Therefore, CPU 31 can determine whether the installation status determination result is abnormal based on the reference value acquisition status of index number 9. In addition, if the CPU31 does not save the detection position in index number 7, it does not determine whether the installation status in the Nth installation action is abnormal based on the baseline value acquisition status.

[0125] CPU31 can also generate interpolated Z-axis position and interpolated disturbance force by interpolating (oversampling) the Z-axis position and disturbance force F obtained in S8. In this case, CPU31 studies the detection position by the differential value obtained by time differentiation of the interpolated disturbance force, which makes the detection position more approximate to the Z-axis position of the tool 3 when it is mounted on the spindle 9.

[0126] CPU31 can also appropriately modify the method for obtaining the disturbance force F. For example, CPU31 can also obtain the torque T. m The difference between the inertial force (the second term on the right side of equation 1) is taken as the disturbance force F.

[0127] CPU31 may also omit the low-pass filter-based processing of the Z-axis position and the disturbance force F. In this case, the processing in S13 can also be omitted. CPU31 may also perform processing of the Z-axis position and the disturbance force F based on various filters such as high-pass filters, band-pass filters, and band-stop filters.

[0128] Control device 30 is an example of the "numerical control device" of the present invention. Z-axis motor 51 is an example of the "motor" of the present invention. Detected position is an example of the "position" of the present invention. CPU 31 executing S21 is an example of the "detection unit" of the present invention. CPU 31 executing S22 is an example of the "storage unit" of the present invention. Reference value is an example of the "reference position" of the present invention. CPU 31 executing S26 is an example of the "decision unit" of the present invention. CPU 31 executing S31 and S32 is an example of the "determination unit" of the present invention. CPU 31 executing S25 is an example of the "deletion unit" of the present invention. Chip bite abnormality is an example of the "first abnormality" of the present invention. Detection abnormality is an example of the "second abnormality" of the present invention. CPU 31 executing S33 and S34 is an example of the "notification unit" of the present invention. Average value is an example of the "statistical value" of the present invention. CPU 31 executing S7 is an example of the "installation unit" of the present invention. The CPU 31 executing process S8 is an example of the "acquisition unit" of the present invention. Process S21 is an example of the "detection process" of the present invention. Process S22 is an example of the "storage process" of the present invention. Process S26 is an example of the "determination process" of the present invention. Processes S31 and S32 are examples of the "judgment process" of the present invention. Process S25 is an example of the "deletion process" of the present invention.

Claims

1. A numerical control device for controlling a machine tool, the machine tool comprising a spindle, a tool changing device, and a motor, wherein a tool is mounted on the spindle, the tool changing device changes the tool mounted on the spindle, and the motor moves the spindle. The numerical control device includes: The detection unit detects the position of the spindle as it moves during the process of mounting the cutting tool onto the spindle, driven by the motor. A storage unit that stores the location detected by the detection unit in a storage device; The decision unit determines the reference position of the spindle based on the position stored in the storage device by the storage unit up to the N-1th time. The determination unit determines whether an anomaly is related to the installation state of the tool based on the position stored by the storage unit in the Nth time and the reference position determined by the decision unit. as well as The deletion unit, when the determination unit determines that an abnormality has occurred, deletes the position stored by the storage unit up to the Nth time after the position has been stored by the storage unit for the (N+1)th time. N is an integer greater than or equal to 2. If the absolute value of the detection value obtained by subtracting the reference position from the Nth stored position is above a threshold, the determination unit determines that it is an anomaly. The decision unit determines the reference position based on statistical values ​​obtained by statistically processing multiple positions stored by the storage unit up to the N-1th time.

2. The numerical control device according to claim 1, wherein, The anomaly includes a first anomaly and a second anomaly. The first anomaly refers to the tool being installed with foreign matter attached between the spindle and the tool. The second anomaly refers to the abnormal size of the reference position. If the absolute value of the detected value is above the threshold and the detected value is positive, the determination unit determines that it is the first anomaly. If the absolute value of the detected value is above the threshold and the detected value is negative, the determination unit determines that it is the second anomaly.

3. The numerical control device according to claim 2, wherein, The numerical control device further includes a notification unit. When the determination unit determines that it is the first abnormality, the notification unit notifies that it is the first abnormality. When the determination unit determines that it is the second abnormality, the notification unit notifies that it is the second abnormality.

4. The numerical control device according to claim 1, wherein, The decision unit determines the reference position based on a plurality of positions stored by the storage unit up to the N-1th time. The deletion unit will delete all of the multiple positions used to determine the reference position during the (N+1)th installation of the tool.

5. The numerical control device according to claim 1, wherein, The numerical control device has: The mounting section, which moves the spindle by the rotation of the motor, performs the mounting action of the tool relative to the spindle; and The acquisition unit acquires the torque of the motor in a time sequence during the process of mounting the tool to the spindle from the mounting unit. The detection unit detects the position based on the torque obtained by the acquisition unit.

6. A control program for causing a computer controlling a machine tool having a spindle equipped with a tool mount, a tool changing device for changing the tool mounted on the spindle, and a motor for moving the spindle to perform the following steps: The inspection process involves detecting the position of the spindle as it moves under the drive of the motor during the process of mounting the cutting tool onto the spindle. A storage process for storing the position detected by the detection process; The process is determined based on the position stored in the (N-1)th time through the storage process, to determine the reference position of the spindle; The determination process, based on the position stored in the Nth time through the storage process and the reference position determined by the decision process, determines whether it is an anomaly related to the installation state of the tool. as well as In the deletion process, if the error is determined by the judgment process, after the location has been stored for the (N+1)th time by the storage process, the location stored before the Nth time by the storage process will be deleted. N is an integer greater than or equal to 2. If the absolute value of the detection value obtained by subtracting the reference position from the Nth stored position is above a threshold, the determination process determines that it is an anomaly. The determination process determines the reference position based on statistical values ​​obtained by statistically processing multiple positions stored in the N-1th previous storage process.

7. A storage medium storing a program for causing a computer controlling a machine tool having a spindle for mounting a tool, a tool changing device for changing the tool mounted on the spindle, and a motor for moving the spindle to perform the following steps: The inspection process involves detecting the position of the spindle as it moves under the drive of the motor during the process of mounting the cutting tool onto the spindle. A storage process for storing the position detected by the detection process; The process is determined based on the position stored in the (N-1)th time through the storage process, to determine the reference position of the spindle; The determination process, based on the position stored in the Nth time through the storage process and the reference position determined by the decision process, determines whether it is an anomaly related to the installation state of the tool. as well as In the deletion process, if the error is determined by the judgment process, after the location has been stored for the (N+1)th time by the storage process, the location stored before the Nth time by the storage process will be deleted. N is an integer greater than or equal to 2. If the absolute value of the detection value obtained by subtracting the reference position from the Nth stored position is above a threshold, the determination process determines that it is an anomaly. The determination process determines the reference position based on statistical values ​​obtained by statistically processing multiple positions stored in the N-1th previous storage process.

Citation Information

Patent Citations

  • Numerical control device, control program and storage medium

    JP2022157537A

  • Information processing device, information processing system, information processing method, program, substrate processing device, reference data determination device, and reference data determination method

    CN110050125A

  • Optimization device and control method of optimization device

    CN111078621A