Arithmetic device, machine tool, arithmetic method, and computer program

The arithmetic unit in the machine tool accurately calculates thermal displacements by measuring the drive unit's position and heat transfer dynamics, addressing the inaccuracy in conventional systems and improving machining precision.

JP2025092282APending Publication Date: 2025-06-19BROTHER KOGYO KK
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
JP2023208065
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Filing Date
2023-12-08
Publication Date
2025-06-19

AI Technical Summary

Technical Problem

Conventional control devices fail to accurately calculate the thermal displacement of a support portion in machine tools due to the position of the drive portion changing, which affects the heat conduction path from the drive portion to the support portion.

Method used

An arithmetic unit that measures the position of the drive unit, calculates the heat transfer amount from the drive unit to the support unit, and then calculates the temperature and thermal displacement of the support unit based on the heat transfer amount, while also considering the heat generation and transfer dynamics of the drive unit.

Benefits of technology

This solution allows for accurate calculation of thermal displacements of both the support and drive units, improving the precision of position corrections and enhancing machining accuracy by reflecting the dynamic position of the drive unit.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2025092282000001_ABST
    Figure 2025092282000001_ABST
Patent Text Reader

Abstract

To provide an arithmetic device or the like capable of calculating thermal displacement of a support portion according to a position of a drive portion.SOLUTION: An arithmetic device includes: a position measurement unit that measures a position of a movable drive unit supported by a support unit, a heat transfer amount arithmetic unit that calculates a heat transfer amount from the drive unit to the support unit at the position of the drive unit measured by the position measurement unit, a first temperature arithmetic unit that calculates temperature of the support unit based on the heat transfer amount calculated by the heat transfer amount arithmetic unit, and a first thermal displacement arithmetic unit that calculates thermal displacement of the support unit based on the temperature calculated by the first temperature arithmetic unit, where the position measurement unit measures, with elapse of time, the position of the drive unit; the heat transfer amount arithmetic unit calculates the heat transfer amount according to measurement of the position of the drive unit by the position measurement unit; the first temperature arithmetic unit calculates the temperature of the support unit; and the first thermal displacement arithmetic unit calculates thermal displacement of the support unit.SELECTED DRAWING: Figure 6
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present technology relates to an arithmetic device, a machine tool, an arithmetic method, and a computer program for calculating the thermal displacement of a support portion that supports a drive portion.

Background Art

[0002] There is a machine tool including a control device (arithmetic device), a saddle (drive portion) that houses a spindle motor, and a column (support portion) that supports the saddle so as to be movable up and down. The control device calculates the thermal displacement amount of the column by the finite element method, and corrects the tip position of the spindle provided in the spindle motor based on the calculated thermal displacement amount (see Patent Document 1).

Prior Art Documents

Patent Documents

[0003]

Patent Document 1

Summary of the Invention

Problems to be Solved by the Invention

[0004] The heat generated by the spindle motor is conducted from the saddle to the column. The control device changes the vertical position of the saddle. Therefore, the position where heat is conducted from the saddle to the column changes. Since the conventional control device calculated the thermal displacement amount of the column regardless of the position of the saddle, an accurate thermal displacement amount could not be calculated.

[0005] The present disclosure has been made in view of such circumstances, and an object thereof is to provide an arithmetic device, a machine tool, an arithmetic method, and a computer program capable of calculating the thermal displacement of a support portion according to the position of a drive portion.

Means for Solving the Problems

[0006] An arithmetic unit according to an embodiment of the present disclosure includes a position measurement unit that measures the position of a movable drive unit supported by a support unit, a heat transfer amount calculation unit that calculates the amount of heat transfer from the drive unit to the support unit at the position of the drive unit measured by the position measurement unit, a first temperature calculation unit that calculates the temperature of the support unit based on the heat transfer amount calculated by the heat transfer amount calculation unit, and a first thermal displacement calculation unit that calculates the thermal displacement of the support unit based on the temperature calculated by the first temperature calculation unit. The position measurement unit measures the position of the drive unit over time, and in response to the position measurement unit measuring the position of the drive unit, the heat transfer amount calculation unit calculates the heat transfer amount, the first temperature calculation unit calculates the temperature of the support unit, and the first thermal displacement calculation unit calculates the thermal displacement of the support unit.

[0007] In the present disclosure, the position of the drive unit is measured, the amount of heat transfer from the drive unit to the support unit at the measured position of the drive unit is calculated, and based on the calculated amount of heat transfer, the temperature and thermal displacement of the support unit are calculated.

[0008] An arithmetic unit according to an embodiment of the present disclosure further includes a heat generation amount calculation unit that calculates the heat generation amount of the drive unit, a second temperature calculation unit that calculates the temperature of the drive unit based on the heat generation amount calculated by the heat generation amount calculation unit and the heat transfer amount calculated by the heat transfer amount calculation unit, and a second thermal displacement calculation unit that calculates the thermal displacement of the drive unit based on the temperature calculated by the second temperature calculation unit. In response to the position measurement unit measuring the position of the drive unit, the heat generation amount calculation unit calculates the heat generation amount, the heat transfer amount calculation unit calculates the heat transfer amount, the second temperature calculation unit calculates the temperature of the drive unit, and the second thermal displacement calculation unit calculates the thermal displacement of the drive unit.

[0009] In the present disclosure, the heat generation amount of the drive unit is calculated, and based on the heat generation amount and the heat transfer amount, the temperature of the drive unit is calculated. Based on the calculated temperature, the thermal displacement of the drive unit is calculated.

[0010] The arithmetic unit according to an embodiment of the present disclosure includes a summing unit that sums the displacement of the driving unit based on the thermal displacement of the support unit calculated by the first thermal displacement calculation unit and the thermal displacement of the driving unit calculated by the second thermal displacement calculation unit in response to the position measurement unit measuring the position of the driving unit.

[0011] In the present disclosure, the displacement of the driving unit based on the thermal displacement of the support unit and the thermal displacement of the driving unit are summed.

[0012] The arithmetic unit according to an embodiment of the present disclosure, wherein the support unit has a track, the driving unit has a plurality of sliders slidable on the track, the position measurement unit measures the positions of the respective sliders over time, and in response to the position measurement unit measuring the positions of the respective sliders, the heat transfer amount calculation unit calculates the heat transfer amount from each slider to the track, the first temperature calculation unit calculates the temperature of the track, and the first thermal displacement calculation unit calculates the thermal displacement of the track.

[0013] In the present disclosure, the heat transfer amount from the slider to the track is calculated, the temperature of the track is calculated based on the heat transfer amount, and the thermal displacement of the track is calculated based on the temperature.

[0014] The arithmetic unit according to an embodiment of the present disclosure, wherein the first temperature calculation unit calculates the temperature of the support unit by the finite element method including the heat transfer amount calculated by the heat transfer amount calculation unit as a boundary condition, and the first thermal displacement calculation unit calculates the thermal displacement of the support unit by the finite element method including the temperature calculated by the first temperature calculation unit as a boundary condition.

[0015] In the present disclosure, the temperature of the support unit is calculated by the finite element method including the heat transfer amount as a boundary condition, and the thermal displacement of the support unit is calculated by the finite element method including the temperature of the support unit as a boundary condition.

[0016] In an arithmetic unit according to an embodiment of the present disclosure, the second temperature calculation unit calculates the temperature of the drive unit by the finite element method including the calorific value calculated by the calorific value calculation unit and the heat transfer amount calculated by the heat transfer amount calculation unit as boundary conditions, and the second thermal displacement calculation unit calculates the thermal displacement of the drive unit by the finite element method including the temperature calculated by the second temperature calculation unit as a boundary condition.

[0017] In the present disclosure, the temperature of the drive unit is calculated by the finite element method including the calorific value and the heat transfer amount of the drive unit as boundary conditions, and the thermal displacement of the drive unit is calculated by the finite element method including the temperature of the drive unit as a boundary condition.

[0018] A machine tool according to an embodiment of the present disclosure includes a column, a spindle head movably supported by the column and supporting a spindle, wherein the support portion is the column, and the drive unit is any of the arithmetic units described above and the drive unit is the spindle head.

[0019] In the present disclosure, the thermal displacements of the column and the spindle head are calculated.

[0020] A machine tool according to an embodiment of the present disclosure includes a column, a spindle head movably supported by the column and supporting a spindle, wherein the support portion is the column, and the drive unit is the spindle head, and the arithmetic unit described above, and the calorific value calculation unit calculates the calorific value of the spindle head based on predetermined information indicating the relationship between the rotational speed of the spindle and the calorific value of the spindle head.

[0021] In the present disclosure, the calorific value of the spindle head is calculated based on predetermined information indicating the relationship between the rotational speed of the spindle and the calorific value of the spindle head.

[0022] The calculation method according to an embodiment of the present disclosure measures the position of a movable drive unit supported by a support unit, calculates the amount of heat transfer from the drive unit to the support unit at the measured position of the drive unit, calculates the temperature of the support unit based on the calculated amount of heat transfer, calculates the thermal displacement of the support unit based on the calculated temperature of the support unit, measures the position of the drive unit over time, calculates the amount of heat transfer according to the measurement of the position of the drive unit, calculates the temperature of the support unit, and calculates the thermal displacement of the support unit.

[0023] In the present disclosure, the position of the drive unit is measured, the amount of heat transfer from the drive unit to the support unit at the measured position of the drive unit is calculated, and based on the calculated amount of heat transfer, the temperature and thermal displacement of the support unit are calculated.

[0024] A computer program according to an embodiment of the present disclosure is a computer program executable by an arithmetic unit. The arithmetic unit is caused to measure the position of a movable drive unit supported by a support unit, calculate the amount of heat transfer from the drive unit to the support unit at the measured position of the drive unit, calculate the temperature of the support unit based on the calculated amount of heat transfer, calculate the thermal displacement of the support unit based on the calculated temperature of the support unit, measure the position of the drive unit over time, calculate the amount of heat transfer according to the measurement of the position of the drive unit, calculate the temperature of the support unit, and execute a process of calculating the thermal displacement of the support unit.

[0025] In the present disclosure, the position of the drive unit is measured, the amount of heat transfer from the drive unit to the support unit at the measured position of the drive unit is calculated, and based on the calculated amount of heat transfer, the temperature and thermal displacement of the support unit are calculated.

Advantages of the Invention

[0026] In an arithmetic unit, a machine tool, a calculation method, and a computer program according to an embodiment of the present disclosure, the position of the drive unit is measured, the amount of heat transfer from the drive unit to the support unit at the measured position of the drive unit is calculated, and based on the calculated amount of heat transfer, the temperature and thermal displacement of the support unit are calculated. Therefore, the position of the drive unit can be reflected in the thermal displacement of the support unit, and the calculation accuracy of the thermal displacement can be improved.

Brief Description of the Drawings

[0027]

Figure 1

Figure 2

Figure 3

Figure 4

Figure 5

Figure 6

Figure 7

Figure 8

Figure 9

Embodiments for Carrying Out the Invention

[0028] Hereinafter, the present invention will be described based on the drawings showing a machine tool according to an embodiment. In the following description, the up, down, left, right, front, and back indicated by arrows in the drawings are used. Note that the up, down, left, right, front, and back shown in the drawings are merely shown for ease of explanation, and the directions are not limited thereto. FIG. 1 is a schematic perspective view of a machine tool.

[0029] The machine tool 1 includes a base 11, a column 12, a spindle head 2, a tool magazine 3, a table 15, a control device 50, etc. The base 11 is fixed on the floor surface. The column 12 extends upward from the rear part of the base 11. The spindle head 2 is provided on the front surface of the column 12 and can move up and down in the Z-axis direction (vertical direction) by the drive of a Z-axis motor 33 (see FIG. 3). As shown in FIG. 2, a spindle 2a extending vertically is provided in the spindle head 2 via a bearing 2c. The lower end of the spindle 2a is fitted with a tool holder 5. The tool holder 5 holds a tool t. The tool t is attached to the spindle 2a via the tool holder 5. The spindle 2a rotates around its axis by the drive of a spindle motor 84.

[0030] Support plates 18 extend forward from both the upper left and right sides of the column 12. The spindle head 2 is arranged between the two support plates 18. A support base 14 is provided at the front end of the support plate 18. The support base 14 rotatably supports a support shaft 34 inclined so as to descend toward the front side.

[0031] The tool magazine 3 includes a rotating disk 30 and a plurality of gripping parts (not shown) attached to the outer periphery of the rotating disk 30. Each gripping part holds a tool holder 5. The rotating disk 30 is fixed to the support shaft 34. The support shaft 34 rotates by the drive of a magazine motor 85, and the tool magazine 3 rotates around the axis of the support shaft 34.

[0032] When the tool holder 5 holding the tool t is arranged at the exchange position and the spindle head 2 without the tool holder 5 mounted thereon descends, the tool holder 5, that is, the tool t, is mounted on the spindle 2a. When an empty gripping part without the tool holder 5 mounted thereon is arranged at the exchange position and the spindle head 2 with the tool holder 5 holding the tool t mounted thereon ascends, the tool holder 5, that is, the tool t, is gripped by the empty gripping part.

[0033] On the front side of the upper part of the abutment 11, a Y-axis direction moving mechanism 17 that moves in the front-rear direction is provided. The Y-axis direction moving mechanism 17 includes a moving plate (not shown in the figure) that moves in the front-rear direction. An X-axis direction moving mechanism 20 that moves in the left-right direction is provided above the moving plate. By driving the Y-axis direction moving mechanism 17, the moving plate and the X-axis direction moving mechanism 20 move in the front-rear direction. A table 15 for holding a workpiece is provided on the X-axis direction moving mechanism 20.

[0034] The Y-axis direction moving mechanism 17 includes a Y-axis motor 13 (see Fig. 3). By driving the Y-axis motor 13, the moving plate and the X-axis direction moving mechanism 20 move in the front-rear direction. The X-axis direction moving mechanism 20 includes an X-axis motor 23 (see Fig. 3). By driving the X-axis motor 23, the table 15 moves in the left-right direction.

[0035] Fig. 2 is a partially enlarged right side view schematically showing the column 12, the spindle head 2, the rail 12a, the slider 2b, etc. As shown in Fig. 2, two rails 12a extending vertically are provided on the front surface of the column 12. The two rails 12a are arranged substantially parallel to each other in the left-right direction. Four sliders 2b are provided on the rear surface of the spindle head 2. Each slider 2b is arranged at the upper right, lower right, upper left, and lower left of the rear surface of the spindle head 2. The two sliders arranged at the upper right and lower right are connected to the right-side rail 12a. The two sliders arranged at the upper left and lower left are connected to the left-side rail 12a. Each slider 2b is slidable in the vertical direction along the rail 12a. By driving the Z-axis motor 33, each slider 2b moves in the vertical direction on the rail 12a. That is, the spindle head 2 moves in the vertical direction.

[0036] FIG. 3 is a block diagram schematically showing the configuration of the control device 50. The control device 50 includes a control unit 51, a ROM 52, a main storage unit 53, an auxiliary storage unit 58, and an input / output interface 54. The control device 50 constitutes an arithmetic unit. The control unit 51 includes a processor (e.g., CPU, MPU, or GPU) or a logic circuit (e.g., FPGA or ASIC), etc., and also includes a timer. The control device 50 may include a timer separately from the control unit 51. The main storage unit 53 includes a RAM. When an operator operates the operation unit 7, a signal is input from the operation unit 7 to the input / output interface 54. The operation unit 7 is, for example, a keyboard, a button, a touch panel, etc. The input / output interface 54 outputs a signal to the display unit 8. The display unit 8 displays characters, graphics, symbols, etc. The display unit 8 is, for example, a liquid crystal display or an organic EL display.

[0037] The auxiliary storage unit 58 is an EEPROM, a flash memory, a hard disk, an SSD, etc., and is rewritable. The auxiliary storage unit 58 stores a machining program, a finite element formula used for calculations based on the finite element method, a thermal displacement amount, a position, functions A to C, etc. For example, a machining program recorded on a portable recording medium 60 such as an optical disk or a USB memory may be installed in the auxiliary storage unit 58. The control unit 51 reads the machining program from the auxiliary storage unit 58 into the main storage unit 53 and executes control of driving each motor or correction amount calculation processing described later. The machining program has a plurality of commands, and the control unit 51 reads and executes each command in order. Note that the ROM 52 may store a machining program, a finite element formula, functions A to C, etc. The main storage unit 53 may store a machining program, a finite element formula, a thermal displacement amount, a position, functions A to C, etc.

[0038] The control device 50 includes an X-axis control circuit 55, a servo amplifier 55a, and a differentiator 23b corresponding to the X-axis motor 23. The X-axis motor 23 includes an encoder 23a. The X-axis control circuit 55 outputs an instruction indicating an electric current amount to the servo amplifier 55a based on a command from the control unit 51. The servo amplifier 55a receives the instruction and outputs a drive current to the X-axis motor 23.

[0039] The encoder 23a outputs a position feedback signal to the X-axis control circuit 55. The X-axis control circuit 55 performs position feedback control based on the position feedback signal.

[0040] The encoder 23a outputs a position feedback signal to the differentiator 23b, and the differentiator 23b converts the position feedback signal into a speed feedback signal and outputs it to the X-axis control circuit 55. The X-axis control circuit 55 performs speed feedback control based on the speed feedback signal.

[0041] The current detector 55b detects the value of the drive current output by the servo amplifier 55a. The current detector 55b feeds back the value of the drive current to the X-axis control circuit 55. The X-axis control circuit 55 performs current control based on the value of the drive current.

[0042] The control device 50 includes a Y-axis control circuit 56, a servo amplifier 56a, a differentiator 13b, and a current detector 56b corresponding to the Y-axis motor 13, and the Y-axis motor 13 includes an encoder 13a. The Y-axis control circuit 56, the servo amplifier 56a, the differentiator 13b, the Y-axis motor 13, the encoder 13a, and the current detector 56b are the same as those of the X-axis, and the description thereof is omitted.

[0043] The control device 50 includes a Z-axis control circuit 57, a servo amplifier 57a, a current detector 57b, and a differentiator 33b corresponding to the Z-axis motor 33. The Z-axis motor 33 includes an encoder 33a. The Z-axis control circuit 57, the servo amplifier 57a, the differentiator 33b, the Z-axis motor 33, the encoder 33a, and the current detector 57b are the same as those of the X-axis, and the description thereof is omitted.

[0044] The control device 50 includes a spindle control circuit 59, a servo amplifier 59a, a current detector 59b, and a differentiator 84b corresponding to the spindle motor 84. The spindle motor 84 includes an encoder 84a. The spindle control circuit 59, the servo amplifier 59a, the differentiator 84b, the spindle motor 84, the encoder 84a, and the current detector 59b are the same as those of the X-axis, and the description thereof is omitted.

[0045] The control device 50 also executes feedback control similar to that of the X-axis motor 23 for the magazine motor 85.

[0046] In order to perform structural analysis by the finite element method, the control unit 51 models the column 12 and the spindle head 2 by a plurality of elements. The column 12 includes a rail 12a, and the spindle head 2 includes a slider 2b. The elements are, for example, tetrahedrons or hexahedrons. For example, the endpoints of each element constitute nodes. The control unit 51 calculates the temperature of each node in the spindle head 2 over time by the finite element method, using the heat generation amount of the spindle motor 84, the heat generation amount of the bearing 2c, and the heat transfer amount from the column 12 to the spindle head 2 as boundary conditions. Also, the control unit 51 calculates the temperature of each node in the column 12 over time by the finite element method, using the heat transfer amount from the spindle head 2 to the column 12 as a boundary condition. That is, the control unit 51 performs temperature analysis on the spindle head 2 and the column 12 using the finite element method.

[0047] The control unit 51 calculates, for example, the heat generation amount Q1 [W] of the spindle motor 84 based on the rotation speed of the spindle 2a and a function A indicating the relationship between the current value of the spindle motor 84 and the heat generation amount Q1. The control unit 51 calculates, for example, the heat generation amount Q2 [W] of the bearing 2c based on a function B indicating the relationship between the rotation speed of the spindle 2a and the heat generation amount Q2. The control unit 51 calculates, for example, the heat transfer amount Q3 from the column 12 to the spindle head 2 based on a function C indicating the relationship between the temperature of the slider 2b, the temperature of the rail 12a, and the heat transfer amount Q3. Note that the control device 50 may store a table indicating the relationship between the rotation speed of the spindle 2a and the heat generation amount Q1 instead of the function A, store a table indicating the relationship between the rotation speed of the spindle 2a and the heat generation amount Q2 instead of the function B, store a table indicating the relationship between the temperature of the slider 2b, the temperature of the rail 12a, and the heat transfer amount Q3 instead of the function C, and obtain the heat generation amounts Q1, Q2, and the heat transfer amount Q3 by referring to each table. The functions A, B and the tables substituting for the functions A, B constitute predetermined information indicating the relationship between the rotation speed of the spindle 2a and the heat generation amount of the spindle head 2.

[0048] When the temperature of the column 12 is higher than that of the spindle head 2, the heat transfer amount Q3 from the column 12 to the spindle head 2 is positive, and when the temperature of the column 12 is lower than that of the spindle head 2, the heat transfer amount Q3 is negative. That is, when the heat transfer amount Q3 is negative, heat is conducted from the spindle head 2 to the column 12.

[0049] The function A is expressed as, for example, Q1 = k1·ω + k2·I 2 where k1 and k2 represent coefficients, ω represents the rotational speed of the main shaft 2a, and I represents the current value of the main shaft motor 84. The function B is expressed as, for example, Q2 = k3·ω. Here, k3 represents a coefficient, and ω represents the rotational speed of the main shaft 2a. The function C is expressed as, for example, Q3=(T b (t) - T(t, z b ))·H. T b (t) represents the temperature of the slider 2b, T(t, z b ) represents the temperature of the track 12a, and H represents a predetermined coefficient. t represents a time point, and z b represents the vertical position of the slider 2b.

[0050] Heat conduction between the spindle head 2 and the column 12 is carried out via the slider 2b and the track 12a. The temperature distribution at the boundary between the spindle head 2 and the column 12 occurs in the Z direction of the track 12a, that is, in the vertical direction. Therefore, according to the vertical position z b of the slider 2b, by calculating the heat transfer amount, the calculation accuracy of the temperatures of the spindle head 2 and the column 12 can be improved.

[0051] The control unit 51 uses, for example, the finite element formula of the following formula (1) for temperature calculation. In formula (1), K represents the heat diffusion matrix of each node, C represents the heat capacity matrix of each node, F represents the heat flux vector of each node, T represents the temperature vector of each node, and Δt represents the time between time point n and time point n + 1. Time point n represents the current time point, and time point n + 1 represents the time point after Δt has elapsed from time point n. Δt is, for example, the control cycle of the control device 50.

[0052]

Equation

[0053] After executing the above-described temperature analysis, the control unit 51 calculates the thermal displacement of each node in the spindle head 2 over time using the finite element method, with the temperature of each node in the spindle head 2 calculated over time as the boundary condition. Further, the control unit 51 calculates the thermal displacement of each node in the column 12 over time using the finite element method, with the temperature of each node in the column 12 calculated over time as the boundary condition. That is, after executing the above-described temperature analysis, the control unit 51 performs a thermal displacement analysis on the spindle head 2 and the column 12 using the finite element method.

[0054] The control unit 51 uses, for example, the finite element formula of the following formula (2) for the calculation of displacement. In formula (2), δ represents the displacement vector of each node, P represents the multiplication matrix of the inverse matrix of the stiffness matrix and the nodal force coefficient matrix, and T represents the temperature vector of each node.

[0055]

Equation

[0056] The control unit 51 calculates the displacement of the spindle 2a based on the thermal displacement of each node in the spindle head 2 and the thermal displacement of each node in the column 12.

[0057] Figure 4 is a flowchart for explaining the temperature calculation process of the spindle head 2 by the control unit 51. The control unit 51 measures the vertical position z b of each slider 2b (S1). Since the distance between the upper slider 2b and the lower slider 2b is stored in the ROM 52 in advance, when the detection result of the encoder 33a indicates the position of the lower slider 2b, the position of the upper slider 2b may be obtained by adding the distance stored in the ROM 52 to the detection result. The control unit 51 calculates, that is, measures, the vertical position z b of each slider 2b based on the detection result of the encoder 33a.

[0058] The control unit 51 calculates the heat generation amount Q1 of the spindle motor 84 (S2). For example, the control unit 51 obtains the rotational speed of the spindle 2a at the time when the position of the slider 2b is measured, that is, the current time, from the machining program, and applies the rotational speed of the spindle 2a to the function A to calculate the heat generation amount Q1. The control unit 51 calculates the heat generation amount Q2 of the bearing 2c (S3). For example, the control unit 51 obtains the rotational speed of the spindle 2a at the current time from the machining program, and applies the rotational speed of the spindle 2a to the function B to calculate the heat generation amount Q2.

[0059] The control unit 51 calculates the heat transfer amount Q3 from the column 12 to the spindle head 2 (S4). For example, the control unit 51 substitutes the temperature T b (t) of the slider 2b and the temperature T(t, z b ) of the track 12a into the function C to calculate the heat transfer amount Q3. In the initial state, the temperature T b (t) and the temperature T(t, z b ) are set to a predetermined temperature, for example, 0 °C. In step S4, first, the control unit 51 uses the predetermined temperature, but from the next calculation, it uses the temperature T b (t) calculated in step S6 and the temperature T(t, z b ) calculated in step S14. Since heat conducts at each position of each slider 2b, that is, at four positions, the control unit 51 calculates the heat transfer amount Q3 from the column 12 to the spindle head 2 at each position.

[0060] The control unit 51 updates the boundary conditions (S5). That is, the control unit 51 updates the heat generation amounts Q1, Q2, and the heat transfer amount Q3. The control unit 51 calculates the temperature of each node of the spindle head 2 based on Equation (1) using the heat generation amounts Q1, Q2, and the heat transfer amount Q3 as boundary conditions (S6). The control unit 51 returns the process to step S1. The control unit 51 repeatedly executes the temperature calculation process of the spindle head 2 every control cycle Δt and stores the calculated temperature. In step S6, the control unit 51 calculates the temperature T b (t) of the slider 2b. In step S14 described later, the control unit 51 calculates the temperature T(t, z b) The control unit 51 does not necessarily need to execute the temperature calculation process of the spindle head 2 every control period Δt. For example, the temperature calculation process of the spindle head 2 may be executed when several control periods Δt have elapsed, such as 2Δt, 3Δt, etc., or the temperature calculation process of the spindle head 2 may be executed when 2Δt has elapsed, and thereafter, the temperature calculation process of the spindle head 2 may be executed when 3Δt has elapsed. In other words, the temperature calculation process of the spindle head 2 may be executed every time an irregular period has elapsed.

[0061] The control unit 51 that executes steps S2 and S3 constitutes a heat generation amount calculation unit. The control unit 51 that executes step S6 constitutes a second temperature calculation unit.

[0062] FIG. 5 is a flow chart for explaining the temperature calculation process of the upright pillar 12 by the control unit 51. b The distance between the upper slider 2b and the lower slider 2b is stored in advance in the ROM 52. Therefore, when the detection result of the encoder 33a indicates the position of the lower slider 2b, the position of the upper slider 2b can be calculated by adding the distance stored in the ROM 52 to the detection result. The control unit 51 calculates the vertical position z of each slider 2b based on the detection result of the encoder 33a. b The control unit 51 calculates, i.e., measures, the amount of heat transfer Q3' from the spindle head 2 to the upright pillar 12 (S12). Since the amount of heat transfer Q3' is a value obtained by reversing the positive and negative values ​​of the amount of heat transfer Q3, the control unit 51 can calculate the amount of heat transfer Q3' from the upright pillar 12 to the spindle head 2 at each position of each slider 2b based on the function C. In other words, the control unit 51 that calculates the amount of heat transfer Q3 is also the control unit 51 that calculates the amount of heat transfer Q3'.

[0063] The control unit 51 updates the boundary condition (S13). That is, the control unit 51 updates the amount of heat transfer Q3'. The control unit 51 calculates the temperature of each node of the upright pillar 12 based on the equation (1) using the amount of heat transfer Q3' as the boundary condition (S14). In step S14, the control unit 51 calculates the temperature T(t,z b) is calculated. The control unit 51 returns the process to step S11. The control unit 51 repeatedly executes the temperature calculation process for the column 12 every control period Δt and stores the calculated temperature. Note that the control unit 51 does not necessarily need to execute the temperature calculation process for the column 12 every control period Δt. For example, the temperature calculation process for the column 12 may be executed when the control period Δt has elapsed several times, such as 2Δt, 3Δt, etc. The temperature calculation process for the column 12 may be executed when 2Δt has elapsed, and then the temperature calculation process for the column 12 may be executed when 3Δt has elapsed. That is, the temperature calculation process for the column 12 may be executed every time an indefinite period has elapsed.

[0064] The control unit 51 that executes step S11, step S12, and step S13 constitutes a position measurement unit, a heat transfer amount calculation unit, and a first temperature calculation unit.

[0065] FIG. 6 is a flowchart for explaining a position correction process for correcting the position of the tool, FIG. 7 is a right side explanatory view for explaining the thermal displacement of the spindle head 2, FIG. 8 is a right side explanatory view for explaining the thermal displacement of the column 12, and FIG. 9 is a right side explanatory view for explaining the thermal displacement of the spindle head attached to the column. In FIG. 7, the broken line indicates the spindle head 2, the spindle motor 84, and the spindle 2a before thermal displacement. In FIG. 8, the broken line indicates the column 12 before thermal displacement.

[0066] As shown in FIG. 6, the control unit 51 calculates the thermal displacement amount of each node in the spindle head 2 using the temperature of each node in the spindle head 2 as a boundary condition (S21). Note that the temperature of each node in the spindle head 2 has been obtained in advance by the above-described temperature calculation process for the spindle head 2 (see FIG. 4). The control unit 51 stores the thermal displacement amount of the spindle head 2 (S22). For example, it stores in the auxiliary storage unit 58. In steps S21 and S22, the control unit 51 calculates and stores, for example, the thermal displacement amount of each node in the spindle head 2 in the horizontal direction. For example, as shown in FIG. 7, the spindle head 2 extends forward due to thermal displacement.

[0067] The control unit 51 calculates the thermal displacement amount of each node in the column 12 with the temperature of each node in the column 12 as the boundary condition (S23). The temperature of each node in the column 12 has been obtained in advance by the above-described temperature calculation process of the column 12 (see FIG. 5). The control unit 51 measures the position z b of each slider 2b (S24).

[0068] Based on the thermal displacement amount of each node in the column 12, the control unit 51 calculates the position of the track 12a at the position z b after thermal displacement (S25). The position of the track 12a at the position z b is the position of the connection part between the track 12a and the slider 2b. The control unit 51 calculates the displacement amount of the track 12a at the positions z b before and after thermal displacement (S26).

[0069] In step S26, for example, as shown in FIG. 8, let the position of the slider 2b arranged above one track 12a be P1, the position of the slider 2b arranged below one track 12a be P2, the line segment connecting P1 and P2 be L1, and the vertical line be L2. The control unit 51 calculates the angle θ formed by the line segment L1 and the vertical line L2. Due to thermal displacement, the column 12 is deformed so as to warp. Therefore, the spindle head 2 rotates by the angle θ. That is, the displacement amount calculated by the control unit 51 in step S26 includes the displacement amount of the track 12a at the position z b in the horizontal direction and the angle θ. The positions P1 and P2 are the positions after thermal displacement. The control unit 51 calculates, for example, as shown in FIG. 8, the displacement amount H1 of the track 12a at the positions z b before and after thermal displacement in the horizontal direction. P1' in FIG. 8 is the position of the track 12a at the position z b before thermal displacement. The position after thermal displacement of the position P1' is the position P1. Due to thermal displacement, the track 12a extends in the longitudinal direction, that is, the vertical direction. Therefore, for example, the vertical position of the position P1' is slightly lower than the position P1.

[0070] Based on the displacement amount calculated in step S26, the control unit 51 calculates the corrected position of the tool t after thermal displacement (S27). For example, the control unit 51 calculates the first position of the tool t in the horizontal direction. Specifically, as shown in FIG. 9, for the trajectory 12a at the position z b the control unit 51 calculates the displacement amount H2 in the horizontal direction caused by rotating by the angle θ. For example, as shown in FIG. 7, the control unit 51 calculates the displacement amount H3 of the spindle 2a in the horizontal direction based on the thermal displacement amounts of the respective nodes of the spindle head 2 memorized in step S22. The control unit 51 adds the displacement amount H1, the displacement amount H2, and the displacement amount H3 to the position of the tool t before thermal displacement to calculate the corrected position of the tool t. Note that the control unit 51 may calculate the corrected position of the tool t in the vertical direction.

[0071] The control unit 51 that executes steps S21, S23, and S27 constitutes a second thermal displacement calculation unit, a first thermal displacement calculation unit, and an addition unit.

[0072] The control unit 51 returns the process to step S21. The control unit 51 repeatedly executes the position correction process at every predetermined control cycle and memorizes the corrected position of the tool t. The control unit 51 can improve the machining accuracy by reflecting the corrected position on the position of the tool t indicated by the machining program. Note that the control unit 51 does not necessarily need to repeatedly execute the position correction process at every control cycle. For example, the position correction process may be executed when the control cycle Δt has elapsed several times, such as 2Δt, 3Δt, etc., or the position correction process may be executed when 2Δt has elapsed, and then the position correction process may be executed when 3Δt has elapsed. That is, the position correction process may be executed at every indefinite cycle elapsed.

[0073] In the machine tool according to the embodiment, the position of the spindle head 2, that is, the position of the slider 2b is measured, the heat transfer amount from the spindle head 2 to the column 12 at the measured position of the slider 2b is calculated, and based on the calculated heat transfer amount, the temperature and thermal displacement of the column 12 are calculated. Therefore, the position of the spindle head 2 can be reflected on the thermal displacement of the column 12 to improve the calculation accuracy of the thermal displacement.

[0074] Also, calculate the heat generation amount of the spindle head 2, and calculate the temperature of the spindle head 2 based on the heat generation amount and the heat transfer amount. Calculate the thermal displacement of the spindle head 2 based on the calculated temperature.

[0075] Also, add up the displacement of the spindle head 2 based on the thermal displacement of the column 12 and the thermal displacement of the spindle head 2.

[0076] Also, calculate the heat transfer amount from the slider 2b to the track 12a, and calculate the temperature T(t, z of the track 12a based on the heat transfer amount. b ) Calculate, and calculate the thermal displacement of the track 12a based on the temperature T(t, z b )

[0077] Also, calculate the temperature of the column 12 by the finite element method including the heat transfer amount as a boundary condition, and calculate the thermal displacement of the column 12 by the finite element method including the temperature of the column 12 as a boundary condition.

[0078] Also, calculate the temperature of the spindle head 2 by the finite element method including the heat generation amount and the heat transfer amount Q3 of the spindle head 2 as boundary conditions, and calculate the thermal displacement of the spindle head 2 by the finite element method including the temperature of the spindle head 2 as a boundary condition.

[0079] Also, calculate the heat generation amount of the spindle head 2 based on predetermined information showing the relationship between the rotational speed of the spindle 2a and the heat generation amount of the spindle head 2, for example, functions A and B.

[0080] In the above-described embodiment, the spindle head 2 corresponds to the driving part, and the column 12 corresponds to the supporting part, but it is not limited thereto. For example, the Y-axis direction moving mechanism 17 may correspond to the driving part and the base 11 may correspond to the supporting part, or the X-axis direction moving mechanism 20 may correspond to the driving part and the Y-axis direction moving mechanism 17 may correspond to the supporting part.

[0081] Note that the computer program can be deployed to be executed on a single computer, or placed at one site, or distributed over a plurality of sites and executed on a plurality of computers interconnected by a communication network.

[0082] Note that the control device 50 may include a plurality of control units 51, and each process may be executed in a distributed manner by the plurality of control units 51.

[0083] The embodiments disclosed this time should be considered as illustrative in all respects and not restrictive. The scope of the present invention is intended to include all modifications within the scope of the claims and the scope equivalent to the claims. The matters described in each embodiment can be combined with each other. In addition, the independent claims and dependent claims described in the claims can be combined with each other in all possible combinations regardless of the citation format. Furthermore, although the claims use a format (multi-claim format) of describing claims that cite two or more other claims, it is not limited thereto. A format of describing a multi-claim (multi-multi-claim) that cites at least one multi-claim may be used.

Explanation of Reference Numerals

[0084] 2 Spindle head (drive unit) 2a Spindle 2b Slider 12 Column (support unit) 12a Track 50 Control device 51 Control unit 53 Main storage unit 58 Auxiliary storage unit

Claims

1. A position measuring unit that measures the position of a movable drive unit supported by a support unit, A heat transfer amount calculation unit that calculates the amount of heat transfer from the drive unit to the support unit at the position of the drive unit measured by the position measuring unit, A first temperature calculation unit that calculates the temperature of the support unit based on the amount of heat transfer calculated by the heat transfer amount calculation unit, A first thermal displacement calculation unit that calculates the thermal displacement of the support unit based on the temperature calculated by the first temperature calculation unit and comprising, The position measuring unit measures the position of the drive unit over time, In response to the position measuring unit measuring the position of the drive unit, the heat transfer amount calculation unit calculates the heat transfer amount, the first temperature calculation unit calculates the temperature of the support unit, and the first thermal displacement calculation unit calculates the thermal displacement of the support unit. An arithmetic unit.

2. A heat generation amount calculation unit that calculates the heat generation amount of the drive unit, A second temperature calculation unit that calculates the temperature of the drive unit based on the heat generation amount calculated by the heat generation amount calculation unit and the heat transfer amount calculated by the heat transfer amount calculation unit, A second thermal displacement calculation unit that calculates the thermal displacement of the drive unit based on the temperature calculated by the second temperature calculation unit and comprising, In response to the position measuring unit measuring the position of the drive unit, the heat generation amount calculation unit calculates the heat generation amount, the heat transfer amount calculation unit calculates the heat transfer amount, the second temperature calculation unit calculates the temperature of the drive unit, and the second thermal displacement calculation unit calculates the thermal displacement of the drive unit. The arithmetic unit according to claim 1.

3. A summing unit that sums the displacement of the drive unit based on the thermal displacement of the support unit calculated by the first thermal displacement calculation unit and the thermal displacement of the drive unit calculated by the second thermal displacement calculation unit in response to the position measuring unit measuring the position of the drive unit. The arithmetic unit according to claim 2.

4. The support unit has a track, The driving part has a plurality of sliders that can slide on the track, The position measurement part measures the positions of the respective sliders over time, In response to the position measurement of each slider by the position measurement part, the heat transfer amount calculation part calculates the heat transfer amount from each slider to the track, the first temperature calculation part calculates the temperature of the track, and the first thermal displacement calculation part calculates the thermal displacement of the track. The arithmetic unit according to any one of claims 1 to 3.

5. The first temperature calculation part calculates the temperature of the support part by the finite element method including the heat transfer amount calculated by the heat transfer amount calculation part as a boundary condition, The first thermal displacement calculation part calculates the thermal displacement of the support part by the finite element method including the temperature calculated by the first temperature calculation part as a boundary condition. The arithmetic unit according to any one of claims 1 to 3.

6. The second temperature calculation part calculates the temperature of the driving part by the finite element method including the heat generation amount calculated by the heat generation amount calculation part and the heat transfer amount calculated by the heat transfer amount calculation part as boundary conditions, The second thermal displacement calculation part calculates the thermal displacement of the driving part by the finite element method including the temperature calculated by the second temperature calculation part as a boundary condition. The arithmetic unit according to claim 2 or 3.

7. A column, A spindle head that is movably supported by the column and supports a spindle, The arithmetic unit according to any one of claims 1 to 3, wherein the support part is the column and the driving part is the spindle head, and A machine tool comprising the same.

8. A column, A spindle head that is movably supported by the column and supports a spindle, The arithmetic unit according to claim 2, wherein the support part is the column and the driving part is the spindle head, and A machine tool comprising the same. The calorific value calculation unit calculates the calorific value of the spindle head based on predetermined information indicating the relationship between the rotational speed of the spindle and the calorific value of the spindle head. Machine tool. **Claim 9** Measure the position of the movable drive unit supported by the support unit, calculate the heat transfer amount from the drive unit to the support unit at the measured position of the drive unit, calculate the temperature of the support unit based on the calculated heat transfer amount, calculate the thermal displacement of the support unit based on the calculated temperature of the support unit, Measure the position of the drive unit over time, According to the measurement of the position of the drive unit, calculate the heat transfer amount, calculate the temperature of the support unit, and calculate the thermal displacement of the support unit. Calculation method. **Claim 10** In a computer program executable by a computing device, cause the computing device to Measure the position of the movable drive unit supported by the support unit, calculate the heat transfer amount from the drive unit to the support unit at the measured position of the drive unit, calculate the temperature of the support unit based on the calculated heat transfer amount, calculate the thermal displacement of the support unit based on the calculated temperature of the support unit, Measure the position of the drive unit over time, According to the measurement of the position of the drive unit, calculate the heat transfer amount, calculate the temperature of the support unit, and calculate the thermal displacement of the support unit. Computer program for executing the process.

Citation Information

Patent Citations

  • Manufacture of plywood

    JP1983011102A