WO2011024840A1 - Method for thermal displacement correction in machine tool, and thermal displacement correction device - Google Patents

Method for thermal displacement correction in machine tool, and thermal displacement correction device Download PDF

Info

Publication number
WO2011024840A1
WO2011024840A1 PCT/JP2010/064346 JP2010064346W WO2011024840A1 WO 2011024840 A1 WO2011024840 A1 WO 2011024840A1 JP 2010064346 W JP2010064346 W JP 2010064346W WO 2011024840 A1 WO2011024840 A1 WO 2011024840A1
Authority
WO
WIPO (PCT)
Prior art keywords
thermal displacement
amount
shaft
correction
ball screw
Prior art date
Application number
PCT/JP2010/064346
Other languages
French (fr)
Japanese (ja)
Inventor
治夫 小林
初 倉橋
Original Assignee
ブラザー工業株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by ブラザー工業株式会社 filed Critical ブラザー工業株式会社
Priority to CN201080037053.0A priority Critical patent/CN102481674B/en
Publication of WO2011024840A1 publication Critical patent/WO2011024840A1/en

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/18Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
    • G05B19/404Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by control arrangements for compensation, e.g. for backlash, overshoot, tool offset, tool wear, temperature, machine construction errors, load, inertia
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/49Nc machine tool, till multiple
    • G05B2219/49212Using lookup table, map, position error, temperature and position

Definitions

  • the present invention relates to a thermal displacement correction method and a thermal displacement correction apparatus for machine tools.
  • Machine tools use a ball screw mechanism as a positioning mechanism.
  • the ball screw mechanism causes a pitch error between the amount of rotation of the ball screw shaft and the amount of movement of the nut due to manufacturing tolerances and the like. Therefore, the machine tool corrects the pitch error based on a preset table of pitch error correction amounts.
  • the ball screw mechanism causes thermal expansion due to temperature rise due to the frictional resistance between the ball screw shaft, the nut, and each bearing, causing thermal displacement.
  • the thermal displacement of the ball screw shaft results in a positioning error.
  • the machine tool uses a system in which pre-tension is applied to the ball screw shaft to absorb thermal expansion.
  • the machine tool uses a thick ball screw shaft and the feed rate is very fast, so the heat generation increases.
  • the machine tool must apply a very large tension to the ball screw shaft.
  • a very large tension is applied to the machine tool, there is a problem that the ball screw mechanism is deformed.
  • an excessive force is applied to the thrust bearing and seizes.
  • the method for correcting the thermal displacement of the ball screw shaft disclosed in Patent Document 1 does not apply excessive tension to the ball screw shaft and does not require a special measuring device.
  • the amount of heat generated by the ball screw shaft is calculated from the product of the armature current and voltage of the servo motor. Based on the heat generation amount of the ball screw shaft and the ratio (heat distribution coefficient) obtained in advance, the heat generation amount of nut movement due to the movement of the nut, the heat generation amount of the front bearing due to the rotation of the front bearing, and the rotation amount of the rear bearing Calculate the rear bearing heat value.
  • the temperature distribution is obtained from the unsteady heat conduction equation based on the calculated calorific value.
  • the method of correcting the thermal displacement of the ball screw shaft while the machine tool is operating predicts the thermal displacement amount of the ball screw shaft from moment to moment, and gives the predicted thermal displacement amount to the numerical controller as a correction amount for correcting the pitch error correction amount.
  • This method has a problem that the correction amount becomes larger than the actual elongation when the number of times of acceleration / deceleration of the servo motor is large.
  • Patent Document 2 focuses on the fact that the acceleration / deceleration energy of the servo motor itself is included in the calorific value as a factor of the problem in Patent Document 1.
  • the thermal displacement correction method disclosed in Patent Document 2 calculates the heat generation amount of the ball screw shaft from the rotation speed of the servo motor, and based on the heat generation amount of the ball screw shaft, the nut movement heat generation amount, the front bearing heat generation amount, and the rear bearing Calculate calorific value.
  • Patent Document 2 does not take into account the amount of heat generated by the servo motor when a drive current flows through the servo motor.
  • the amount of heat generated by the servo motor is applied to the ball screw shaft through the front bearing. Therefore, in order to perform highly accurate thermal displacement correction, not only the nut movement heat generation amount, the front bearing heat generation amount, and the rear bearing heat generation amount are calculated, but also the servo motor heat generation as in the method of Patent Document 1. It is necessary to consider the amount.
  • a fixed bearing 18 is fixed to a support base 10 via a bearing holder 20.
  • the fixed bearing 18 supports an end portion 81 e (end portion on the X-axis motor 71 side) of the X-axis ball screw shaft 81.
  • the movable bearing 19 is movable in the axial direction of the X-axis ball screw shaft 81.
  • the movable bearing 19 supports an end portion 81 f of the X-axis ball screw shaft 81 on the side opposite to the fixed bearing 18.
  • a path for radiating a part of the heat generated by the X-axis motor 71 includes a path for radiating heat to the periphery of the X-axis motor 71, a path for radiating heat from the X-axis motor 71 to the support base 10 via the bearing holder 20, and an X-axis motor.
  • 71 is a path for radiating heat from 71 to the surroundings via the bearing holder 20.
  • the amount of heat radiation is determined by a temperature difference between two objects, such as a temperature difference between the motor temperature and the ambient temperature.
  • the method of Patent Document 1 does not take into consideration that a part of the heat generated by the servo motor radiates heat.
  • the temperature of the X-axis motor 71 rises.
  • the increased temperature enters the bearing holder 20, and the temperature of the bearing holder 20 increases.
  • the temperature of the bearing holder 20 enters the motor side end 81e of the ball screw shaft 81, and the temperature of the motor side end 81e rises.
  • the temperature rise of the motor side end portion 81e is after a predetermined time has elapsed since the X-axis motor 71 was driven.
  • the front bearing heat generation amount is calculated based on the heat generation amount supplied from the X-axis motor 71 to the ball screw shaft 81 and the heat distribution coefficient, but the predetermined time is not taken into consideration.
  • the heat distribution coefficient is a constant value. Therefore, the method of Patent Document 1 cannot accurately calculate the temperature change of the motor side end portion 81e and cannot accurately correct the thermal displacement.
  • An object of the present invention is to provide a thermal displacement correction method and a thermal displacement correction apparatus for a machine tool capable of performing highly accurate thermal displacement correction.
  • the machine tool thermal displacement correction method is a ball screw mechanism for feed driving, a servo motor that rotationally drives a shaft into which a nut of the ball screw mechanism is screwed, and a control device that controls the servo motor based on control data And calculating a heat generation amount generated in a plurality of sections obtained by dividing the overall length of the shaft into a plurality of sections at predetermined intervals based on the rotation speed of the servo motor and control data.
  • the unsteady heat conduction equation uses an increase in the temperature of the bearing holder that is increased by the amount of heat input from the servo motor. Therefore, the amount of heat displacement can be calculated using the amount of heat generated in consideration of the amount of heat released from the amount of heat generated by the servo motor.
  • the temperature rise of the bearing holder is calculated every predetermined time. Therefore, it is possible to calculate the amount of thermal displacement taking into account the time delay from when the current flows to the servo motor until the end of the shaft on the motor side is thermally affected by the servo motor. Since the thermal displacement correction method of the machine tool can calculate the thermal displacement amount considering the heat radiation of the servo motor and the time delay, the thermal displacement correction can be performed with high accuracy.
  • the temperature rise of the bearing holder is calculated based on a rotation speed and a drive current value of the servo motor.
  • the thermal displacement correction method for a machine tool according to claim 2 calculates the temperature rise of the bearing holder based on the rotation speed of the servo motor and the drive current value. Therefore, highly accurate thermal displacement correction can be performed using an existing sensor without newly providing a sensor or the like.
  • a thermal displacement correction device for a machine tool is a ball screw mechanism for driving driving, a servo motor that rotationally drives a shaft into which a nut of the ball screw mechanism is screwed, and a control device that controls the servo motor based on control data
  • a thermal displacement correction device for a machine tool having a speed detection device for detecting the rotational speed of the servo motor, and the amount of heat generated in a plurality of sections obtained by dividing the overall length of the shaft, the rotational speed of the servo motor
  • a calorific value calculation unit to obtain every predetermined time based on the control data, a temperature calculation unit to detect a temperature rise of the bearing holder that rotatably supports the motor side of the shaft via a bearing, at each predetermined time; Instead of the total calorific value of the calorific value of the plurality of sections accumulated for a predetermined period and the temperature rise at the motor side end of the shaft, the bearing ho A temperature distribution calculation unit that calculates a temperature distribution of a pluralit
  • a correction amount for correcting the control data for each of a plurality of correction sections obtained by dividing a plurality of nut movement ranges of the shaft based on the thermal displacement amount calculation section for each predetermined period and the plurality of sections.
  • a correction amount calculation unit that calculates the value for each predetermined period.
  • the thermal displacement correction device for a machine tool includes a temperature calculation unit for calculating a temperature rise of the bearing holder every predetermined time, a total heat generation amount obtained by accumulating a heat generation amount of a plurality of sections for a predetermined period, and a motor side of the shaft
  • a temperature distribution calculation unit that calculates the temperature distribution of a plurality of sections for each predetermined period based on the unsteady heat conduction equation using the temperature increase of the bearing holder instead of the temperature increase of the end portion. 1 has the same effect.
  • the temperature calculation unit calculates a temperature rise of the bearing holder based on a rotation speed and a drive current value of the servo motor.
  • the temperature calculation unit calculates the temperature rise of the bearing holder based on the rotation speed of the servo motor and the drive current value. Therefore, the manufacturing cost can be reduced by using an existing sensor without newly providing a sensor or the like.
  • FIG. 1 is an overall perspective view of a machine tool M.
  • FIG. The side view of the machine tool M.
  • the graph which shows the relationship between time t and the temperature rise (theta) 0 (t) of a bearing holder.
  • the configuration of the machine tool M will be described with reference to FIGS.
  • the lower right of FIG. 1 is the front of the machine tool M.
  • the workpiece (not shown) and the tool 6 are independently moved relative to each other in the XYZ rectangular coordinate system to perform desired machining (for example, “milling”, “drilling”, “ Cutting "etc.).
  • the X-axis direction, Y-axis direction, and Z-axis direction of the machine tool M (machine main body 2) are the left-right direction, front-rear direction, and vertical direction of the machine tool M (machine main body 2), respectively.
  • the machine tool M includes a base 1, a machine body 2, and a cover (not shown) as main constituents.
  • the base 1 is a substantially rectangular parallelepiped casting that is long in the Y-axis direction.
  • the machine body 2 is provided on the upper part of the base 1.
  • the machine body 2 performs a cutting process on the workpiece.
  • the cover is fixed to the upper part of the base 1.
  • the cover has a box shape covering the machine body 2 and the upper part of the base 1.
  • the machine body 2 includes a column 4, a spindle head 5, a spindle 5A, a tool changer 7, and a table 8 as main constituents.
  • the column 4 has a substantially prismatic shape and is fixed to a column seat portion 3 provided at the rear portion of the base 1.
  • the spindle head 5 can be moved up and down along the column 4.
  • the spindle head 5 rotatably supports the spindle 5A.
  • the tool changer 7 is provided on the right side of the spindle head 5.
  • the tool changer 7 exchanges the tool 6 at the tip of the spindle 5A and the tool stored in the tool magazine 14.
  • the table 8 is provided on the upper part of the base 1.
  • the table 8 fixes the work so as to be detachable.
  • the control box 9 is box-shaped.
  • the control box 9 is provided on the back side of the column 4.
  • the numerical control device 50 (see FIG. 4) is provided inside the control box 9.
  • the numerical controller 50 controls the operation of the machine tool M.
  • An X-axis motor 71 that is a servomotor drives the table 8 to move in the X-axis direction.
  • the X-axis motor 71 is provided on the rectangular parallelepiped support base 10.
  • a Y-axis motor 72 which is a servo motor, drives the table 8 to move in the Y-axis direction.
  • the Y-axis motor 72 is provided on the base 1.
  • the support base 10 is provided below the table 8.
  • the support base 10 includes a pair of X-axis feed guides (not shown) extending along the X-axis direction on the upper surface thereof.
  • the pair of X-axis feed guides support the table 8 movably on the upper part thereof.
  • the nut portion 8 a is arranged on the lower surface of the table 8.
  • the nut portion 8a is screwed with the X-axis ball screw shaft 81 to constitute an X-axis ball screw mechanism.
  • the X-axis ball screw shaft 81 is connected to the X-axis motor 71 via the coupling 17.
  • the fixed bearing 18 is fixed to the support base 10.
  • the fixed bearing 18 supports a fixed-side end portion 81e of the X-axis ball screw shaft 81 on the X-axis motor 71 side (fixed side).
  • the movable bearing 19 supports the movable side end 81f.
  • the movable end 81f is on the opposite side (movable side) of the fixed end 81e.
  • the movable bearing 19 is movable along the axial direction of the X-axis ball screw shaft 81.
  • a pair of Y-axis feed guides (not shown) are provided on the upper side of the base 1 and extend along the Y-axis direction.
  • the pair of Y-axis feed guides support the support 10 so as to be movable.
  • the table 8 moves in the X-axis direction along the pair of X-axis feed guides when the X-axis motor 71 is driven.
  • the support base 10 is moved in the Y-axis direction along the pair of Y-axis feed guides when the Y-axis motor 72 is driven.
  • the Y-axis moving mechanism is a ball screw mechanism, similar to the X-axis moving mechanism.
  • Covers 11 and 12 cover the X-axis feed guide on the left and right sides of the table 8.
  • the covers 11 and 12 can be expanded and contracted.
  • the cover 13 and the Y-axis rear cover (not shown) cover the Y-axis feed guide on both the front and rear sides of the support base 10, respectively. Even when the table 8 moves in either the X-axis direction or the Y-axis direction, the covers 11, 12, 13 and the Y-axis rear cover always cover the X-axis feed guide and the Y-axis feed guide.
  • the covers 11, 12, 13 and the Y-axis rear cover prevent chips and coolant liquid scattered from the processing area from falling on the rails of the respective feed guides.
  • the lifting mechanism of the spindle head 5 will be described with reference to FIGS.
  • the column 4 supports a Z-axis ball screw shaft (not shown) extending in the vertical direction.
  • the nut portion (not shown) is screwed with the Z-axis ball screw shaft.
  • the nut portion supports the spindle head 5.
  • a Z-axis motor 73 (see FIG. 4) rotates the Z-axis ball screw shaft in forward and reverse directions. Based on the forward / reverse rotation drive of the Z-axis ball screw shaft, the spindle head 5 is driven up and down in the Z-axis direction.
  • the axis controller 63a drives the Z-axis motor 73 based on a control signal from the CPU 51 (see FIG. 4) of the numerical controller 50. Therefore, the spindle head 5 is driven up and down by driving the Z-axis motor 73.
  • the tool changer 7 includes a tool magazine 14 and a tool change arm 15.
  • the tool magazine 14 stores a plurality of tool holders (not shown) that support the tool 6.
  • the tool exchange arm 15 grasps a tool holder attached to the main shaft 5A and another tool holder, and conveys and exchanges them.
  • the tool magazine 14 includes a plurality of tool pots (not shown) and a transport mechanism (not shown) inside.
  • the tool pot supports the tool holder.
  • the transport mechanism transports the tool pot in the tool magazine 14.
  • the numerical controller 50 includes a microcomputer.
  • the numerical controller 50 includes an input / output interface 54, a CPU 51, a ROM 52, a flash memory 53, axis control units 61a to 64a and 75a, servo amplifiers 61 to 64, differentiators 71b to 74b, and the like.
  • the axis controllers 61a to 64a are connected to the servo amplifiers 61 to 64, respectively.
  • the servo amplifiers 61 to 64 are connected to an X-axis motor 71, a Y-axis motor 72, a Z-axis motor 73, and a main shaft motor 74, respectively.
  • the shaft control unit 75 a is connected to the magazine motor 75.
  • the X-axis motor 71 and the Y-axis motor 72 are motors for moving the table 8 in the X-axis direction and the Y-axis direction, respectively.
  • the Z-axis motor 73 is a motor for driving the spindle head 5 up and down in the Z-axis direction.
  • the magazine motor 75 is a motor for rotating the tool magazine 14.
  • the main shaft motor 74 is a motor for rotating the main shaft 5A.
  • the X-axis motor 71, Y-axis motor 72, Z-axis motor 73, and main shaft motor 74 are provided with encoders 71a to 74a, respectively.
  • the axis controllers 61a to 64a receive the movement command amount from the CPU 51 and output a current command (motor torque command value) to the servo amplifiers 61 to 64.
  • the servo amplifiers 61 to 64 receive a current command and output a drive current to the motors 71 to 74.
  • the axis controllers 61a to 64a receive position feedback signals from the encoders 71a to 74a and perform position feedback control. Differentiators 71b to 74b differentiate the position feedback signals output from the encoders 71a to 74a and convert them into speed feedback signals. Differentiators 71b to 74b output speed feedback signals to the axis controllers 61a to 64a.
  • the axis controllers 61a to 64a receive the speed feedback signal from the differentiators 71b to 74b and control the speed feedback.
  • the current detectors 61b to 64b detect drive currents output from the servo amplifiers 61 to 64 to the motors 71 to 74.
  • the current detectors 61b to 64b feed back the detected drive current to the axis controllers 61a to 64a.
  • the shaft controllers 61a to 64a perform current (torque) control based on the drive current fed back by the current detectors 61b to 64b.
  • the shaft control unit 75 a receives the movement command amount from the CPU 51 and drives the magazine motor 75.
  • the ROM 52 is a main control program for executing a machining program for the machine tool M, a control program for thermal displacement correction control (see FIG. 12), and a control program for correction amount calculation processing for calculating the correction amount of the pitch error correction amount (FIG. 13). Etc.) are stored.
  • the flash memory 53 stores parameters relating to the mechanical structure, parameters relating to physical properties, heat distribution coefficients (ratio) ⁇ N , ⁇ F and ⁇ B , a table of pitch error correction amounts, and the like.
  • the parameter relating to the mechanical structure is, for example, the length and diameter of the ball screw shaft 81. Parameters relating to physical properties are, for example, density and specific heat.
  • the flash memory 53 includes a data area for updating and storing the heat generation amount, the total heat generation amount, the rotation speed and driving current of the motor 71, and the distributed heat generation amount shown in FIG.
  • the flash memory 53 also appropriately stores a plurality of machining programs for machining various workpieces.
  • the pitch error correction amount table is a table for correcting pitch errors of the ball screw mechanisms of the X axis, the Y axis, and the Z axis.
  • the pitch error of the ball screw mechanism is caused by manufacturing tolerances.
  • the pitch error between the rotation amount of the ball screw shaft 81 and the movement amount of the nut portion 8a is corrected based on a preset pitch error correction amount table.
  • the thermal displacement correction method of this embodiment is performed by correcting the pitch error correction amount using the calculated thermal displacement when correcting the thermal displacement.
  • This embodiment is an example in which the thermal displacement of the X-axis ball screw shaft 81 is corrected, but basically the same applies to the Y-axis ball screw mechanism and the Z-axis ball screw mechanism.
  • the nut portion 8 a is movable in the nut portion moving range 81 b of the X-axis ball screw shaft 81.
  • Pitch error correction is performed for each correction section.
  • the correction sections are 15 sections obtained by dividing the nut portion movement range 81b by a set length of 20 mm, for example.
  • the pitch error correction amount for correcting the pitch error is a value obtained by the following procedure in the adjustment stage before shipment.
  • the nut portion 8a moves from the position X0 to the position X300 for each correction section at intervals of 20 mm in the X-axis direction according to the movement command value. In this embodiment, an error (target value ⁇ actual movement amount) with respect to the movement command value is accurately measured.
  • a table of pitch error correction amounts is created based on the measurement results.
  • the created table is stored in advance in the flash memory 53 and shipped.
  • a table of pitch error correction amounts is similarly created for the Y-axis and Z-axis directions.
  • the amount of thermal displacement is generated along with the numerical control during the operation of the machine tool M. As shown in FIG. 5, in this embodiment, the amount of heat generated in three regions of the front shaft portion 81 a of the ball screw shaft 81, the nut portion moving range 81 b, and the rear shaft portion 81 c of the ball screw shaft 81 is obtained.
  • the section from the end 81e to the end 81f of the ball screw shaft 81 is divided into four.
  • the calculation sections 1 to 3 are divided into 120 mm (six times the set length of the correction section), and the calculation section 4 is divided into 140 mm (seven times the set length of the correction section).
  • the four divisions are merely an example, and the present embodiment is not limited to the four divisions.
  • the calorific value for each calculation section is obtained for each of the plurality of calculation sections at a predetermined time (for example, 50 ms).
  • the flash memory 53 is a predetermined time period (e.g., 6400ms) calorific value of the total generated in the arithmetic section 1-4 Q 1 ⁇ Q 4, the total heat generation of the calorific value Q 1 ⁇ Q 4
  • a data area for storing the quantity Q T , the rotational speed ⁇ of the X-axis motor 71 and the drive current i is provided.
  • the calorific value is calculated according to the following equation based on the feed speed of the table 8.
  • the feed speed of the table 8 is determined based on the actual rotational speed of the X-axis motor 71.
  • the actual rotational speed of the X-axis motor 71 is determined based on the detection signal of the encoder 71a.
  • the data area of the flash memory 53 stores the calculated heat generation amount.
  • the calorific value is calculated according to the following equation.
  • Q K 1 ⁇ F T (1)
  • Q is a calorific value.
  • F is the feed speed of the table 8.
  • K 1 and T are predetermined constants.
  • the calorific value due to the movement of the nut portion 8a in each calculation section is calculated 128 times every 50 ms for a predetermined period (for example, 6400 ms).
  • the calorific values calculated during a predetermined period are totaled for each computation interval, and calorific values Q 1 to Q 4 for each computation interval are calculated.
  • the heat generation amounts Q 1 to Q 4 are stored in the flash memory 53 in association with the calculation sections 1 to 4.
  • the total calorific value Q T is calculated and stored in the flash memory 53.
  • the total calorific value Q T is a calorific value obtained by summing the calorific values Q 1 to Q 4 .
  • the data of the rotational speed ⁇ that is, ⁇ 0 , ⁇ 1 ,..., ⁇ 127
  • the data of i that is, i 0 , i 1 ,... i 127
  • the data of i is stored in the flash memory 53 respectively.
  • the distribution method of the total calorific value Q T shown below is based on the same method as that of Japanese Patent Publication No. 1992-240045. That is, the nut portion moving range 81b, the front shaft portion 81a, and the rear shaft portion 81c of the ball screw shaft 81 are regarded as being thermally independent from each other without causing heat conduction to other portions. The ratio of each heat generating portion to the total heat generation amount Q T is substantially constant regardless of the change in the feed rate.
  • the CPU 51 calculates the distributed heat generation amount of each heat generating part according to the following equation.
  • Q F ⁇ F ⁇ Q T
  • Q N ⁇ N ⁇ Q T
  • Q B ⁇ B ⁇ Q T
  • the calorific value Q F is the calorific value of the front shaft portion 81 a due to the rotation of the fixed bearing 18.
  • the heat generation amount Q N is the heat generation amount of the nut portion moving range 81b.
  • the heat generation amount Q B is the heat generation amount of the rear shaft portion 81 c due to the rotation of the movable bearing 19.
  • Ratio eta F is the ratio of the calorific value Q F with respect to the total heat generation amount Q T.
  • Ratio eta N is the ratio of the calorific value Q N to the total heat generation amount Q T.
  • Ratio eta B is the ratio of the calorific value Q B to the total heat generation amount Q T.
  • the ratios ⁇ F , ⁇ N and ⁇ B are constant as shown in the method. Therefore, the ratios ⁇ F , ⁇ N , and ⁇ B are values obtained in advance by measuring Q F , Q N , and Q B using an actual machine.
  • the heat generation amount Q N of the nut portion movement range 81b is distributed to the bearing holder 20 and four calculation section separation positions (positions corresponding to ⁇ 2 to ⁇ 5 in FIG. 5).
  • distribution ratios X 1 to X 4 are obtained according to the following equations based on the calorific values Q 1 to Q 4 and the total calorific values Q T of the four calculation sections stored in the data area.
  • the distribution ratios X 1 to X 4 are ratios for distributing the calorific value Q N to the calorific values of the four calculation sections.
  • the heat generation amounts Q 1 to Q 4 and the total heat generation amount Q T are stored in the data areas, respectively.
  • the distribution heat generation amounts Q N1 to Q N4 for the four calculation sections 1 to 4 are calculated from the distribution ratios X 1 to X 4 of the four calculation sections and the distribution heat generation amount Q N of the nut portion movement range 81b by the following equation. Is calculated.
  • the temperature distribution is calculated from each distribution heat generation amount.
  • the temperature distribution can be obtained by solving the following unsteady heat conduction equation.
  • [C] is a heat capacity matrix
  • [H] is a heat conduction matrix
  • is a temperature distribution
  • ⁇ Q ⁇ is a calorific value
  • t is time.
  • the temperature distribution multiplied by the heat conduction matrix is called a temperature rise matrix.
  • the temperature distribution ⁇ and the calorific value ⁇ Q ⁇ can be expressed by the following equations, respectively.
  • the conventional method using the unsteady heat conduction equation of Equation (3) uses a calorific value Q F calculated based on a calorific value supplied from the X-axis motor 71 to the ball screw shaft 81 and a heat distribution coefficient. .
  • the heat distribution coefficient is a constant value. Therefore, the conventional method cannot accurately estimate the temperature change of the ball screw shaft end portion 81e.
  • the conventional method does not consider the time delay from when the current flows to the X-axis motor 71 until the temperature of the ball screw shaft end portion 81e rises.
  • the conventional method does not take into consideration that part of the heat generated by the X-axis motor 71 radiates heat.
  • a point that a part of the heat generation amount of the X-axis motor 71 dissipates heat and the time delay are considered.
  • the temperature rise ⁇ 0 of the bearing holder 20 is used instead of the temperature rise ⁇ 1 of the ball screw shaft end portion 81e in the temperature rise matrix of the expression (3).
  • a time variable is added as will be described later.
  • the unsteady heat conduction equation is as follows.
  • Equation (4) can be transformed and expressed as the following equation (5).
  • Equation (5) is obtained by using a time variable with respect to the temperature of the bearing holder 20, the ball screw shaft end portion 81e, and four calculation section separation positions (positions corresponding to ⁇ 2 to ⁇ 5 in FIG. 5). It can be expressed as (6). In this embodiment, a known value is substituted for the right side of the equation (6). In the present embodiment, it is possible to calculate the gradient of the temperature rise at the ball screw shaft end portion 81e and the four calculation section break positions at the time n ⁇ t on the left side.
  • the temperature rise ⁇ 0 (t) of the bearing holder 20 is calculated.
  • the temperature rise ⁇ 0 (t) of the bearing holder 20 is calculated based on the drive current of the X-axis motor 71 and the rotational speed of the X-axis motor 71.
  • the current detector 61b detects the drive current of the X-axis motor 71.
  • the rotational speed of the X-axis motor 71 is based on the detection signal of the encoder 71a.
  • ⁇ i ( ⁇ t) ⁇ i (0) + d ⁇ i (0) / dt ⁇ ⁇ t (7)
  • i 1 to 5
  • the temperature distribution ⁇ with the passage of time can be calculated at the ball screw shaft end portion 81e and the four calculation section break positions.
  • the temperatures ⁇ 1 to ⁇ 5 of the ball screw shaft end portion 81e and the four calculation section break positions are calculated.
  • the thermal displacement amounts of the ball screw shaft end portion 81e and the four calculation section break positions are calculated.
  • the thermal displacement amount between the ball screw shaft end portion 81e and the four calculation section break positions is calculated from the following equation (8).
  • ⁇ L ⁇ L 0 ⁇ ⁇ ⁇ (L) dL ⁇ (8) ⁇ L is the amount of thermal displacement. ⁇ is the coefficient of linear expansion of the ball screw shaft material.
  • the integration symbol indicates integration over a range of 0 to L. L indicates the length up to the four calculation section break positions. Specifically, the integration over a range of 0 to 120, 0 to 240, 0 to 360,.
  • FIG. 11 is an explanatory diagram for calculating a correction amount for correcting the pitch error correction amount.
  • the vertical axis represents the amount of thermal displacement based on the position of the fixed bearing 18.
  • the upper horizontal axis is the position of each part of the ball screw shaft 81 with respect to the fixed bearing 18.
  • the horizontal axis on the lower side is a delimiter position (X0, X20..., X300) of 15 correction sections.
  • D F1 is a thermal displacement amount in the calculation section 1.
  • D F2 is the total amount of thermal displacement in the calculation section 1 and the calculation section 2.
  • D F4 is the total amount of thermal displacement in the calculation section 1 to the calculation section 4.
  • correction amount of X0 thermal displacement amount of calculation section 1 ⁇ ⁇ (length between left delimiter position of calculation section 1 and X0) / length of calculation section 1 ⁇
  • Correction amount of X20 thermal displacement amount of calculation section 1 ⁇ ⁇ (length between the left delimiter position of calculation section 1 and X20) / length of calculation section 1 ⁇ ⁇ correction amount of X0
  • correction amount of X40 calculation section 1 Heat displacement amount + heat displacement amount in computation interval 2 ⁇ ⁇ (length between left separation position of computation interval 2 and X40) / length of computation interval 2 ⁇ ⁇ correction amount of X20
  • correction amount calculation interval 1 Thermal displacement amount + thermal displacement amount in computation interval 2 ⁇ ⁇ (length between left delimiter position of computation interval 2 and X60) / length of computation interval 2 ⁇ ⁇ correction amount of X20
  • the numerical control device 50 functions as a thermal displacement correction device of the present invention.
  • the thermal displacement correction control executes the above-described thermal displacement correction method. Therefore, since this control has many parts which overlap with the above-mentioned content, it demonstrates easily. Numerical control of machining on the workpiece is executed in parallel with thermal displacement correction control.
  • the CPU 51 of the numerical controller 50 first performs initial setting in S1 (S1).
  • S1 initial setting
  • a matrix and an initial temperature necessary for calculation by the finite element method are set from setting data such as parameters.
  • the CPU 51 executes processing such as clearing the related area of the flash memory 53.
  • the CPU 51 divides the ball screw shaft 81 into four calculation sections 1 to 4 (S2).
  • the CPU 51 sets the counter I to 0 (S3).
  • the CPU 51 reads the X-axis feed data, the detection signal of the encoder 71a, and the drive current value of the current detector 61b (S4).
  • the CPU 51 calculates the amount of heat generated every 50 ms in the calculation sections 1 to 4 and the temperature ⁇ 0 of the bearing holder 20 and stores them in the flash memory 53 (S5).
  • the CPU 51 adds “1” to the counter I (S6).
  • the CPU 51 determines whether or not the counter value of the counter I is “127” (S7). While determining that the counter value of the counter I is not “127” (S7: NO), the CPU 51 returns to S4 and repeats the processes of S4 to S6.
  • the CPU 51 determines that the counter value of the counter I is “127” (S7: YES)
  • the CPU 51 calculates the heat generation amounts Q 1 to Q 4 and the total heat generation amount Q T for 6400 ms in the calculation sections 1 to 4.
  • the data is stored in the flash memory 53 (S8).
  • the CPU 51 calculates the calorific values Q N and Q B of each part described above, stores them in the flash memory 53, and computes the calorific values Q N1 to Q N4 distributed to the calculation sections 1 to 4 distributed to the calorific values Q N. And stored in the flash memory 53.
  • the CPU 51 also calculates the distribution heat generation amount shown in FIG. 7 for the bearing holder 20 and the four calculation section break positions and stores them in the flash memory 53 (S9).
  • the CPU 51 calculates the temperatures ⁇ 1 to ⁇ 5 of the ball screw shaft end portion 81e and the four calculation section break positions based on the distributed heat generation amount shown in FIG. 7, and stores them in the flash memory 53 (S10).
  • the CPU 51 calculates the thermal displacement amount at the calculation section break position for the four calculation sections based on the above formula (8) and stores it in the flash memory 53 (S11).
  • the CPU 51 calculates the correction amounts at the 16 correction section break positions as described above based on the correction amount calculation formula described above (S12).
  • the CPU 51 uses the correction amount calculated in S12 to execute correction processing for the preset pitch error correction amount for the 16 correction section break positions, and performs feed amount correction processing using the corrected pitch error correction amount. (S13).
  • the CPU 51 determines whether or not to end the thermal displacement correction process (S14). When it is determined that the thermal displacement correction process is not to be ended (S14: NO), the CPU 51 returns to S3 and repeatedly executes the processes after S3. When it is determined that the thermal displacement correction process is finished (S14: YES), the thermal displacement correction control is finished.
  • the following formula simply represents the correction amount calculation formula described above.
  • D F The total amount of thermal displacement generated in the calculation section on the fixed side with respect to the position Xn.
  • ⁇ D n thermal displacement amount generated in the calculation section including the position Xn.
  • X F Left separation position of the calculation section including the position Xn.
  • L n the length of the calculation section including the position Xn.
  • ⁇ M ⁇ 20 used for obtaining ⁇ M 0 is 0.
  • the CPU 51 adds 20 to n (S22).
  • Encoder 71a corresponds to “speed detection device”.
  • the CPU 51 that executes S3 to S7 corresponds to a “heat generation amount calculation unit” and a “temperature calculation unit”.
  • the CPU 51 that executes S8 to S10 corresponds to a “temperature distribution calculation unit”.
  • the CPU 51 that executes S11 corresponds to a “thermal displacement calculation unit”.
  • the CPU 51 that executes S12 corresponds to a “correction amount calculation unit”.
  • the amount of heat generated in a plurality of sections obtained by dividing the entire length of the ball screw shaft 81 is calculated every 50 ms based on the rotational speed of the X-axis motor 71 and control data.
  • the temperature rise of the bearing holder 20 is calculated every 50 ms.
  • the present embodiment is based on the unsteady heat conduction equation using the total heat generation amount accumulated for 6400 ms and the temperature rise of the ball screw shaft end portion 81e instead of the temperature rise of the bearing holder 20 based on the unsteady heat conduction equation.
  • the temperature distribution is calculated every 6400 ms.
  • the thermal displacement amount of a plurality of sections of the ball screw shaft 81 is calculated every 6400 ms based on the temperature distribution.
  • a correction amount for correcting the control data is calculated every 6400 ms for each of a plurality of correction sections obtained by dividing the nut movement range 81b of the ball screw shaft 81 based on the thermal displacement amounts of the plurality of sections. Therefore, the present embodiment can obtain the following effects.
  • the unsteady heat conduction equation uses the temperature rise of the bearing holder 20 that has risen due to the amount of heat input from the X-axis motor 71. Therefore, in this embodiment, the heat displacement amount can be calculated using the heat generation amount considering the heat radiation amount in the heat generation amount of the X-axis motor 71.
  • the temperature rise of the bearing holder 20 is calculated every predetermined time. Therefore, this embodiment can calculate the amount of thermal displacement taking into account the time delay from when the current flows to the X-axis motor 71 until the ball screw shaft end portion 81 e is thermally affected by the X-axis motor 71.
  • the thermal displacement amount is calculated in consideration of the fact that a part of the heat generation amount of the X-axis motor 71 dissipates heat and the occurrence of the time delay. Therefore, highly accurate thermal displacement correction can be performed.
  • the temperature rise of the bearing holder 20 is calculated based on the rotational speed of the X-axis motor 71 and the drive current value. Therefore, in this embodiment, it is possible to perform highly accurate thermal displacement correction using an existing sensor without newly providing a sensor or the like, and to reduce the manufacturing cost.
  • the above embodiment uses the drive current of the X-axis motor 71 and the rotational speed of the X-axis motor 71 when calculating the temperature rise of the bearing holder 20.
  • the modification example may be calculated using only the drive current of the X-axis motor 71 or only the rotation speed of the X-axis motor 71.
  • a temperature sensor may be attached to the bearing holder 20, and the temperature rise of the bearing holder 20 may be calculated using the detection result of the temperature sensor.
  • the calculation cycle for calculating the calorific value is described as an example, but the calculation cycle is not limited to 50 ms.
  • the predetermined period of 6400 ms is only an example. In the modified example, for example, the predetermined period may be set in units of seconds longer than that of the present embodiment.

Abstract

A numerical control device obtains the generated heat in a plurality of intervals into which a ball screw shaft is segmented, said obtainment being performed every 50 ms on the basis of control data and the rotation speed of an X-axis motor, and computes the temperature increase of a bearing holder every 50 ms. The temperature distribution of the plurality of intervals is computed every 6400 ms on the basis of an unsteady heat conduction equation that uses the temperature increase of the bearing holder and the total amount of generated heat that is 6400 ms of cumulative amounts of generated heat of the plurality of intervals. The magnitudes of thermal displacement of the plurality of intervals of the ball screw shaft are computed every 6400 ms on the basis of the temperature distribution. A compensation value is computed every 6400 ms for each compensation interval into which the net range of motion is segmented, said computation being performed on the basis of the magnitude of thermal displacement of the plurality of intervals.

Description

工作機械の熱変位補正方法及び熱変位補正装置Thermal displacement correction method and thermal displacement correction apparatus for machine tool
 本発明は工作機械の熱変位補正方法及び熱変位補正装置に関する。 The present invention relates to a thermal displacement correction method and a thermal displacement correction apparatus for machine tools.
 工作機械は位置決め機構としてボールねじ機構を用いている。ボールネジ機構は製造公差等により、ボールネジシャフトの回転量とナットの移動量とのピッチ誤差を生じる。故に、工作機械は予め設定したピッチ誤差補正量のテーブルに基づいてピッチ誤差を補正する。 Machine tools use a ball screw mechanism as a positioning mechanism. The ball screw mechanism causes a pitch error between the amount of rotation of the ball screw shaft and the amount of movement of the nut due to manufacturing tolerances and the like. Therefore, the machine tool corrects the pitch error based on a preset table of pitch error correction amounts.
 ボールネジ機構はボールネジシャフトとナット及び各軸受部との摩擦抵抗により温度上昇による熱膨張を起こし、熱変位を生じる。ボールネジシャフトの熱変位は位置決め誤差となる。前述した位置決め誤差の問題を解決する為に、工作機械はボールネジシャフトに予張力を与え、熱膨張を吸収する方式を使用していた。 ¡The ball screw mechanism causes thermal expansion due to temperature rise due to the frictional resistance between the ball screw shaft, the nut, and each bearing, causing thermal displacement. The thermal displacement of the ball screw shaft results in a positioning error. In order to solve the above-described positioning error problem, the machine tool uses a system in which pre-tension is applied to the ball screw shaft to absorb thermal expansion.
 工作機械は太いボールネジシャフトを使用し、且つ送り速度が非常に速くなっているので、発熱量は増大する。予張力方式を用いる場合、工作機械はボールネジシャフトに非常に大きな張力を加えなければならない。工作機械に非常に大きな張力を加える場合、ボールネジ機構は変形するという問題がある。更にスラスト軸受に無理な力が加わり、焼き付くという問題がある。 ¡The machine tool uses a thick ball screw shaft and the feed rate is very fast, so the heat generation increases. When using the pre-tension method, the machine tool must apply a very large tension to the ball screw shaft. When a very large tension is applied to the machine tool, there is a problem that the ball screw mechanism is deformed. Furthermore, there is a problem that an excessive force is applied to the thrust bearing and seizes.
 特許文献1が開示するボールネジシャフトの熱変位補正方法はボールネジシャフトに無理な張力を与えず、特別な測定装置を必要としない。特許文献1の方法はサーボモータの電機子電流と電圧の積からボールネジシャフトの発熱量を演算する。ボールネジシャフトの発熱量と予め求めておいた比率(熱分配係数)とに基づいて、ナットの移動によるナット移動発熱量と、前部軸受の回転による前部軸受発熱量と、後部軸受の回転による後部軸受発熱量を演算する。演算した発熱量に基づいて非定常熱伝導方程式から温度分布を求める。 The method for correcting the thermal displacement of the ball screw shaft disclosed in Patent Document 1 does not apply excessive tension to the ball screw shaft and does not require a special measuring device. In the method of Patent Document 1, the amount of heat generated by the ball screw shaft is calculated from the product of the armature current and voltage of the servo motor. Based on the heat generation amount of the ball screw shaft and the ratio (heat distribution coefficient) obtained in advance, the heat generation amount of nut movement due to the movement of the nut, the heat generation amount of the front bearing due to the rotation of the front bearing, and the rotation amount of the rear bearing Calculate the rear bearing heat value. The temperature distribution is obtained from the unsteady heat conduction equation based on the calculated calorific value.
 ボールネジシャフトの熱変位を工作機械稼動中で補正する方法はボールネジシャフトの熱変位量を時々刻々に予想し、予想した熱変位量を数値制御装置にピッチ誤差補正量を補正する補正量として与える。本方法はサーボモータの加減速の回数が多い場合、実際の伸びよりも補正量の方が大きくなるという問題があった。 The method of correcting the thermal displacement of the ball screw shaft while the machine tool is operating predicts the thermal displacement amount of the ball screw shaft from moment to moment, and gives the predicted thermal displacement amount to the numerical controller as a correction amount for correcting the pitch error correction amount. This method has a problem that the correction amount becomes larger than the actual elongation when the number of times of acceleration / deceleration of the servo motor is large.
 特許文献2は特許文献1における問題の要因として、サーボモータ自体の加減速のエネルギーが発熱量に含まれることに着目している。特許文献2が開示する熱変位量補正方法はサーボモータの回転速度からボールネジシャフトの発熱量を演算し、該ボールネジシャフトの発熱量に基づいて、ナット移動発熱量と前部軸受発熱量と後部軸受発熱量を演算する。 Patent Document 2 focuses on the fact that the acceleration / deceleration energy of the servo motor itself is included in the calorific value as a factor of the problem in Patent Document 1. The thermal displacement correction method disclosed in Patent Document 2 calculates the heat generation amount of the ball screw shaft from the rotation speed of the servo motor, and based on the heat generation amount of the ball screw shaft, the nut movement heat generation amount, the front bearing heat generation amount, and the rear bearing Calculate calorific value.
特開昭63-256336号公報JP 63-256336 A 特開平4-240045号公報JP-A-4-240045
 特許文献2の方法は、サーボモータに駆動電流が流れたときに発生するサーボモータの発熱量を考慮していない。サーボモータの発熱量は前部軸受を介してボールネジシャフトに入熱する。故に、高精度な熱変位補正を行うには、ナット移動発熱量と、前部軸受発熱量と、後部軸受発熱量を算出するだけでなく、特許文献1の方法のように、サーボモータの発熱量を考慮する必要がある。 The method of Patent Document 2 does not take into account the amount of heat generated by the servo motor when a drive current flows through the servo motor. The amount of heat generated by the servo motor is applied to the ball screw shaft through the front bearing. Therefore, in order to perform highly accurate thermal displacement correction, not only the nut movement heat generation amount, the front bearing heat generation amount, and the rear bearing heat generation amount are calculated, but also the servo motor heat generation as in the method of Patent Document 1. It is necessary to consider the amount.
 図3に示すボールネジ機構は、支持台10にベアリングホルダ20を介して固定軸受18を固定している。固定軸受18はX軸ボールネジシャフト81の端部81e(X軸モータ71側の端部)を支持している。可動軸受19はX軸ボールネジシャフト81の軸方向に可動する。可動軸受19はX軸ボールネジシャフト81の固定軸受18と反対側の端部81fを支持している。 In the ball screw mechanism shown in FIG. 3, a fixed bearing 18 is fixed to a support base 10 via a bearing holder 20. The fixed bearing 18 supports an end portion 81 e (end portion on the X-axis motor 71 side) of the X-axis ball screw shaft 81. The movable bearing 19 is movable in the axial direction of the X-axis ball screw shaft 81. The movable bearing 19 supports an end portion 81 f of the X-axis ball screw shaft 81 on the side opposite to the fixed bearing 18.
 X軸モータ71の発熱量の一部を放熱する経路はX軸モータ71の周囲へ放熱する経路と、X軸モータ71からベアリングホルダ20を介して支持台10に放熱する経路と、X軸モータ71からベアリングホルダ20を介して周囲へ放熱する経路である。放熱量は、例えばモータ温度と周囲温度との温度差など2物体間の温度差で決まる。特許文献1の方法はサーボモータの発熱量の一部が放熱する点を考慮していない。 A path for radiating a part of the heat generated by the X-axis motor 71 includes a path for radiating heat to the periphery of the X-axis motor 71, a path for radiating heat from the X-axis motor 71 to the support base 10 via the bearing holder 20, and an X-axis motor. 71 is a path for radiating heat from 71 to the surroundings via the bearing holder 20. The amount of heat radiation is determined by a temperature difference between two objects, such as a temperature difference between the motor temperature and the ambient temperature. The method of Patent Document 1 does not take into consideration that a part of the heat generated by the servo motor radiates heat.
 X軸モータ71を駆動すると、X軸モータ71の温度は上昇する。該上昇した温度はベアリングホルダ20に入熱し、ベアリングホルダ20の温度は上昇する。ベアリングホルダ20の温度はボールネジシャフト81のモータ側端部81eに入熱し、モータ側端部81eの温度は上昇する。モータ側端部81eの温度上昇はX軸モータ71を駆動してから所定時間経過後となる。 When the X-axis motor 71 is driven, the temperature of the X-axis motor 71 rises. The increased temperature enters the bearing holder 20, and the temperature of the bearing holder 20 increases. The temperature of the bearing holder 20 enters the motor side end 81e of the ball screw shaft 81, and the temperature of the motor side end 81e rises. The temperature rise of the motor side end portion 81e is after a predetermined time has elapsed since the X-axis motor 71 was driven.
 特許文献1の方法は、X軸モータ71からボールネジシャフト81に供給する発熱量と熱分配係数とに基づいて前部軸受発熱量を算出しているが、前記所定時間は考慮していない。熱分配係数は一定値である。故に、特許文献1の方法はモータ側端部81eの温度変化を正確に演算することができず、精度良く熱変位補正を行うことができない。 In the method of Patent Document 1, the front bearing heat generation amount is calculated based on the heat generation amount supplied from the X-axis motor 71 to the ball screw shaft 81 and the heat distribution coefficient, but the predetermined time is not taken into consideration. The heat distribution coefficient is a constant value. Therefore, the method of Patent Document 1 cannot accurately calculate the temperature change of the motor side end portion 81e and cannot accurately correct the thermal displacement.
 本発明の目的は、高精度な熱変位補正を行うことができる工作機械の熱変位補正方法及び熱変位補正装置を提供することである。 An object of the present invention is to provide a thermal displacement correction method and a thermal displacement correction apparatus for a machine tool capable of performing highly accurate thermal displacement correction.
 請求項1の工作機械の熱変位補正方法は、送り駆動用ボールネジ機構と、該ボールネジ機構のナットが螺合したシャフトを回転駆動するサーボモータと、該サーボモータを制御データに基づき制御する制御機器とを有する工作機械の熱変位補正方法において、前記シャフトの全長を複数分割した複数区間に発生する発熱量を、前記サーボモータの回転速度と制御データとに基づいて所定時間毎に求め、軸受を介してシャフトのモータ側を回転自在に支持するベアリングホルダの温度上昇を前記所定時間毎に演算する第1ステップと、前記複数区間の発熱量を所定期間分累積した合計発熱量と、前記シャフトのモータ側端部の温度上昇の代わりに前記ベアリングホルダの温度上昇を用いた非定常熱伝導方程式とに基づいて、複数区間の温度分布を前記所定期間毎に演算する第2ステップと、前記温度分布から前記シャフトの複数区間の熱変位量を前記所定期間毎に演算する第3ステップと、前記複数区間の熱変位量に基づいて、前記シャフトのナット移動範囲を複数分割した複数の補正区間毎に前記制御データを夫々補正する補正量を前記所定期間毎に演算する第4ステップとを備えている。 The machine tool thermal displacement correction method according to claim 1 is a ball screw mechanism for feed driving, a servo motor that rotationally drives a shaft into which a nut of the ball screw mechanism is screwed, and a control device that controls the servo motor based on control data And calculating a heat generation amount generated in a plurality of sections obtained by dividing the overall length of the shaft into a plurality of sections at predetermined intervals based on the rotation speed of the servo motor and control data. A first step of calculating the temperature rise of the bearing holder that rotatably supports the motor side of the shaft via the predetermined time, a total calorific value obtained by accumulating the calorific values of the plurality of sections for a predetermined period, Based on the unsteady heat conduction equation using the temperature rise of the bearing holder instead of the temperature rise of the motor side end, On the basis of the second step of calculating the thermal displacement amount of the plurality of sections of the shaft from the temperature distribution, the third step of calculating the thermal displacement amount of the plurality of sections of the shaft for each predetermined period from the temperature distribution, And a fourth step of calculating a correction amount for correcting the control data for each of the predetermined periods for each of a plurality of correction sections obtained by dividing the nut movement range of the shaft.
 請求項1の工作機械の熱変位補正方法では、非定常熱伝導方程式は、サーボモータから入熱した発熱量によって上昇したベアリングホルダの温度上昇を用いる。故に、サーボモータの発熱量の内の放熱分を考慮した発熱量を用いて熱変位量を演算できる。ベアリングホルダの温度上昇は所定時間毎に演算する。故に、サーボモータに電流が流れてからシャフトのモータ側端部がサーボモータからの熱的影響を受けるまでの時間遅れを考慮した熱変位量を演算できる。工作機械の熱変位補正方法はサーボモータの放熱及び前記時間遅れを考慮した熱変位量を演算できるので、高精度な熱変位補正を行うことができる。 In the thermal displacement correction method for a machine tool according to claim 1, the unsteady heat conduction equation uses an increase in the temperature of the bearing holder that is increased by the amount of heat input from the servo motor. Therefore, the amount of heat displacement can be calculated using the amount of heat generated in consideration of the amount of heat released from the amount of heat generated by the servo motor. The temperature rise of the bearing holder is calculated every predetermined time. Therefore, it is possible to calculate the amount of thermal displacement taking into account the time delay from when the current flows to the servo motor until the end of the shaft on the motor side is thermally affected by the servo motor. Since the thermal displacement correction method of the machine tool can calculate the thermal displacement amount considering the heat radiation of the servo motor and the time delay, the thermal displacement correction can be performed with high accuracy.
 請求項2の工作機械の熱変位補正方法では、前記ベアリングホルダの温度上昇は、前記サーボモータの回転速度と駆動電流値とに基づいて演算する。 In the thermal displacement correction method for a machine tool according to claim 2, the temperature rise of the bearing holder is calculated based on a rotation speed and a drive current value of the servo motor.
 請求項2の工作機械の熱変位補正方法は、ベアリングホルダの温度上昇をサーボモータの回転速度と駆動電流値とに基づいて演算する。故に別途センサ等を新たに設けることなく、既存のセンサを使用して高精度な熱変位補正を行うことができる。 The thermal displacement correction method for a machine tool according to claim 2 calculates the temperature rise of the bearing holder based on the rotation speed of the servo motor and the drive current value. Therefore, highly accurate thermal displacement correction can be performed using an existing sensor without newly providing a sensor or the like.
 請求項3の工作機械の熱変位補正装置は、送り駆動用ボールネジ機構と、該ボールネジ機構のナットが螺合したシャフトを回転駆動するサーボモータと、該サーボモータを制御データに基づき制御する制御機器とを有する工作機械の熱変位補正装置において、前記サーボモータの回転速度を検出する速度検出機器と、前記シャフトの全長を複数分割した複数区間に発生する発熱量を、前記サーボモータの回転速度と制御データとに基づいて所定時間毎に求める発熱量演算部と、軸受を介して前記シャフトのモータ側を回転自在に支持するベアリングホルダの温度上昇を前記所定時間毎に検知する温度演算部と、前記複数区間の発熱量を所定期間分累積した合計発熱量と、前記シャフトのモータ側端部の温度上昇の代わりに前記ベアリングホルダの温度上昇を用いた非定常熱伝導方程式とに基づいて、複数区間の温度分布を前記所定期間毎に演算する温度分布演算部と、前記温度分布から前記シャフトの複数区間の熱変位量を前記所定期間毎に演算する熱変位量演算部と、前記複数区間の熱変位量に基づいて、前記シャフトのナット移動範囲を複数分割した複数の補正区間毎に前記制御データを夫々補正する補正量を前記所定期間毎に演算する補正量演算部とを備えている。 A thermal displacement correction device for a machine tool according to claim 3 is a ball screw mechanism for driving driving, a servo motor that rotationally drives a shaft into which a nut of the ball screw mechanism is screwed, and a control device that controls the servo motor based on control data In a thermal displacement correction device for a machine tool having a speed detection device for detecting the rotational speed of the servo motor, and the amount of heat generated in a plurality of sections obtained by dividing the overall length of the shaft, the rotational speed of the servo motor A calorific value calculation unit to obtain every predetermined time based on the control data, a temperature calculation unit to detect a temperature rise of the bearing holder that rotatably supports the motor side of the shaft via a bearing, at each predetermined time; Instead of the total calorific value of the calorific value of the plurality of sections accumulated for a predetermined period and the temperature rise at the motor side end of the shaft, the bearing ho A temperature distribution calculation unit that calculates a temperature distribution of a plurality of sections for each of the predetermined periods based on an unsteady heat conduction equation using a temperature rise of the power source, and a thermal displacement amount of the plurality of sections of the shaft from the temperature distribution. A correction amount for correcting the control data for each of a plurality of correction sections obtained by dividing a plurality of nut movement ranges of the shaft based on the thermal displacement amount calculation section for each predetermined period and the plurality of sections. And a correction amount calculation unit that calculates the value for each predetermined period.
 請求項3の工作機械の熱変位補正装置は、ベアリングホルダの温度上昇を所定時間毎に演算する温度演算部と、複数区間の発熱量を所定期間分累積した合計発熱量と、シャフトのモータ側端部の温度上昇の代わりにベアリングホルダの温度上昇を用いた非定常熱伝導方程式とに基づいて、複数区間の温度分布を所定期間毎に演算する温度分布演算部とを備えたので、請求項1と同様の効果を奏する。 The thermal displacement correction device for a machine tool according to claim 3 includes a temperature calculation unit for calculating a temperature rise of the bearing holder every predetermined time, a total heat generation amount obtained by accumulating a heat generation amount of a plurality of sections for a predetermined period, and a motor side of the shaft A temperature distribution calculation unit that calculates the temperature distribution of a plurality of sections for each predetermined period based on the unsteady heat conduction equation using the temperature increase of the bearing holder instead of the temperature increase of the end portion. 1 has the same effect.
 請求項4の工作機械の熱変位補正装置では、前記温度演算部は、前記サーボモータの回転速度と駆動電流値とに基づいて前記ベアリングホルダの温度上昇を演算する。 In the thermal displacement correction apparatus for a machine tool according to claim 4, the temperature calculation unit calculates a temperature rise of the bearing holder based on a rotation speed and a drive current value of the servo motor.
 請求項4の工作機械の熱変位補正装置では、温度演算部は、サーボモータの回転速度と駆動電流値とに基づいてベアリングホルダの温度上昇を演算する。故に、別途センサ等を新たに設けることなく、既存のセンサを使用することで製作コストを低減できる。 In the thermal displacement correction device for a machine tool according to claim 4, the temperature calculation unit calculates the temperature rise of the bearing holder based on the rotation speed of the servo motor and the drive current value. Therefore, the manufacturing cost can be reduced by using an existing sensor without newly providing a sensor or the like.
工作機械Mの全体斜視図。1 is an overall perspective view of a machine tool M. FIG. 工作機械Mの側面図。The side view of the machine tool M. X軸ボールネジ機構の構成図。The block diagram of an X-axis ball screw mechanism. 工作機械Mの制御系のブロック図。The block diagram of the control system of the machine tool M. ボールネジシャフトを複数分割した複数演算区間の説明図。Explanatory drawing of the several calculation area which divided | segmented the ball screw shaft into multiple. 複数演算区間の合計の発熱量等の記憶データの説明図。Explanatory drawing of memory | storage data, such as the total calorific value of several calculation area. ベアリングホルダと複数演算区間の区切り位置に分配した分配発熱量と温度の説明図。Explanatory drawing of the calorific value and temperature distributed to the bearing holder and the dividing position of a plurality of calculation sections. 時間tとベアリングホルダの温度上昇θ0(t)との関係を示すグラフ。The graph which shows the relationship between time t and the temperature rise (theta) 0 (t) of a bearing holder. ベアリングホルダの温度上昇θi(t)の傾きの算出方法の説明図。Explanatory drawing of the calculation method of the inclination of temperature rise (theta) i (t) of a bearing holder. ピッチ誤差補正の為の補正区間の説明図。Explanatory drawing of the correction area for pitch error correction. 固定軸受からの各演算区間区切り位置における熱変位量を示す説明図。Explanatory drawing which shows the thermal displacement amount in each calculation area division | segmentation position from a fixed bearing. 熱変位補正制御プログラムのフローチャート。The flowchart of a thermal displacement correction control program. 補正量演算処理プログラムのフローチャート。The flowchart of a correction amount calculation processing program.
発明を実施する為の形態BEST MODE FOR CARRYING OUT THE INVENTION
 以下、本発明を実施する為の形態について説明する。図1~図4に基づいて工作機械Mの構成について説明する。図1の右下は、工作機械Mの前方である。工作機械Mは、ワーク(図示略)と工具6とがXYZ直交座標系における各軸方向へ独立に相対移動してワークに所望の機械加工(例えば、「フライス削り」、「穴空け」、「切削」等)を施すことができる。工作機械M(機械本体2)のX軸方向、Y軸方向、Z軸方向は夫々工作機械M(機械本体2)の左右方向、前後方向、上下方向である。 Hereinafter, modes for carrying out the present invention will be described. The configuration of the machine tool M will be described with reference to FIGS. The lower right of FIG. 1 is the front of the machine tool M. In the machine tool M, the workpiece (not shown) and the tool 6 are independently moved relative to each other in the XYZ rectangular coordinate system to perform desired machining (for example, “milling”, “drilling”, “ Cutting "etc.). The X-axis direction, Y-axis direction, and Z-axis direction of the machine tool M (machine main body 2) are the left-right direction, front-rear direction, and vertical direction of the machine tool M (machine main body 2), respectively.
 図1に示すように、工作機械Mはベース1と、機械本体2と、カバー(図示略)を構成の主体とする。ベース1はY軸方向に長い略直方体状の鋳造品である。機械本体2は、ベース1の上部に設けてある。機械本体2は、ワークに切削加工を行う。カバーは、ベース1上部に固定してある。カバーは、機械本体2とベース1上部とを覆う箱状である。 As shown in FIG. 1, the machine tool M includes a base 1, a machine body 2, and a cover (not shown) as main constituents. The base 1 is a substantially rectangular parallelepiped casting that is long in the Y-axis direction. The machine body 2 is provided on the upper part of the base 1. The machine body 2 performs a cutting process on the workpiece. The cover is fixed to the upper part of the base 1. The cover has a box shape covering the machine body 2 and the upper part of the base 1.
 機械本体2について説明する。機械本体2はコラム4、主軸ヘッド5、主軸5A、工具交換装置7、テーブル8を構成の主体とする。コラム4は略角柱形状であり、ベース1後部に設けたコラム座部3に固定してある。主軸ヘッド5はコラム4に沿って昇降可能である。主軸ヘッド5はその内部に主軸5Aを回転可能に支持する。工具交換装置7は主軸ヘッド5の右側に設けてある。工具交換装置7は主軸5A先端にある工具6と工具マガジン14が収納した工具を交換する。テーブル8はベース1の上部に設けてある。テーブル8はワークを着脱可能に固定する。制御ボックス9は箱状である。制御ボックス9はコラム4の背面側に設けてある。数値制御装置50(図4参照)は制御ボックス9の内側に設けてある。数値制御装置50は工作機械Mの動作を制御する。数値制御装置50は熱変位量補正装置としての機能を備える。 The machine body 2 will be described. The machine body 2 includes a column 4, a spindle head 5, a spindle 5A, a tool changer 7, and a table 8 as main constituents. The column 4 has a substantially prismatic shape and is fixed to a column seat portion 3 provided at the rear portion of the base 1. The spindle head 5 can be moved up and down along the column 4. The spindle head 5 rotatably supports the spindle 5A. The tool changer 7 is provided on the right side of the spindle head 5. The tool changer 7 exchanges the tool 6 at the tip of the spindle 5A and the tool stored in the tool magazine 14. The table 8 is provided on the upper part of the base 1. The table 8 fixes the work so as to be detachable. The control box 9 is box-shaped. The control box 9 is provided on the back side of the column 4. The numerical control device 50 (see FIG. 4) is provided inside the control box 9. The numerical controller 50 controls the operation of the machine tool M. The numerical control device 50 has a function as a thermal displacement correction device.
 図1、図4を参照して、テーブル8の移動機構について説明する。サーボモータであるX軸モータ71はテーブル8をX軸方向に移動駆動する。X軸モータ71は直方体状の支持台10上に設けてある。サーボモータであるY軸モータ72はテーブル8をY軸方向に移動駆動する。Y軸モータ72はベース1上に設けてある。支持台10はテーブル8の下側に設けてある。支持台10はその上面に、X軸方向に沿って延びる一対のX軸送りガイド(図示略)を備える。一対のX軸送りガイドはその上部にテーブル8を移動可能に支持する。 The moving mechanism of the table 8 will be described with reference to FIGS. An X-axis motor 71 that is a servomotor drives the table 8 to move in the X-axis direction. The X-axis motor 71 is provided on the rectangular parallelepiped support base 10. A Y-axis motor 72, which is a servo motor, drives the table 8 to move in the Y-axis direction. The Y-axis motor 72 is provided on the base 1. The support base 10 is provided below the table 8. The support base 10 includes a pair of X-axis feed guides (not shown) extending along the X-axis direction on the upper surface thereof. The pair of X-axis feed guides support the table 8 movably on the upper part thereof.
 図3に示すように、ナット部8aはテーブル8の下面に配置してある。ナット部8aはX軸ボールネジシャフト81と螺合することでX軸ボールネジ機構を構成する。X軸ボールネジシャフト81はカップリング17を介してX軸モータ71と接続している。固定軸受18は支持台10に固定してある。固定軸受18はX軸ボールネジシャフト81のX軸モータ71側(固定側)の固定側端部81eを支持する。可動軸受19は可動側端部81fを支持する。可動側端部81fは固定側端部81eの反対側(可動側)にある。可動軸受19はX軸ボールネジシャフト81の軸方向に沿って移動可能である。 As shown in FIG. 3, the nut portion 8 a is arranged on the lower surface of the table 8. The nut portion 8a is screwed with the X-axis ball screw shaft 81 to constitute an X-axis ball screw mechanism. The X-axis ball screw shaft 81 is connected to the X-axis motor 71 via the coupling 17. The fixed bearing 18 is fixed to the support base 10. The fixed bearing 18 supports a fixed-side end portion 81e of the X-axis ball screw shaft 81 on the X-axis motor 71 side (fixed side). The movable bearing 19 supports the movable side end 81f. The movable end 81f is on the opposite side (movable side) of the fixed end 81e. The movable bearing 19 is movable along the axial direction of the X-axis ball screw shaft 81.
 一対のY軸送りガイド(図示略)はベース1の上側に設けてあり、Y軸方向に沿って延びる。一対のY軸送りガイドは支持台10を移動可能に支持する。テーブル8はX軸モータ71が駆動することで、一対のX軸送りガイドに沿ってX軸方向に移動する。支持台10はY軸モータ72が駆動することで、一対のY軸送りガイドに沿ってY軸方向に移動する。Y軸の移動機構はX軸の移動機構と同様にボールネジ機構である。 A pair of Y-axis feed guides (not shown) are provided on the upper side of the base 1 and extend along the Y-axis direction. The pair of Y-axis feed guides support the support 10 so as to be movable. The table 8 moves in the X-axis direction along the pair of X-axis feed guides when the X-axis motor 71 is driven. The support base 10 is moved in the Y-axis direction along the pair of Y-axis feed guides when the Y-axis motor 72 is driven. The Y-axis moving mechanism is a ball screw mechanism, similar to the X-axis moving mechanism.
 カバー11、12はテーブル8の左右両側でX軸送りガイドを覆う。カバー11、12は伸縮可能である。カバー13とY軸後カバー(図示略)は夫々支持台10の前後両側でY軸送りガイドを覆う。テーブル8がX軸方向とY軸方向の何れの方向に移動した場合でも、カバー11、12、13とY軸後カバーは常にX軸送りガイドとY軸送りガイドを覆う。カバー11、12、13とY軸後カバーは、加工領域から飛散する切粉及びクーラント液が各送りガイドのレール上に落下するのを防止する。 Covers 11 and 12 cover the X-axis feed guide on the left and right sides of the table 8. The covers 11 and 12 can be expanded and contracted. The cover 13 and the Y-axis rear cover (not shown) cover the Y-axis feed guide on both the front and rear sides of the support base 10, respectively. Even when the table 8 moves in either the X-axis direction or the Y-axis direction, the covers 11, 12, 13 and the Y-axis rear cover always cover the X-axis feed guide and the Y-axis feed guide. The covers 11, 12, 13 and the Y-axis rear cover prevent chips and coolant liquid scattered from the processing area from falling on the rails of the respective feed guides.
 図1、図2を参照して、主軸ヘッド5の昇降機構について説明する。コラム4は上下方向に延びるZ軸ボールネジシャフト(図示略)を支持する。ナット部(図示略)は、Z軸ボールネジシャフトと螺合する。ナット部は主軸ヘッド5を支持する。Z軸モータ73(図4参照)はZ軸ボールネジシャフトを正逆方向に回転駆動する。Z軸ボールネジシャフトの正逆方向の回転駆動に基づいて、主軸ヘッド5はZ軸方向に昇降駆動する。軸制御部63a(図4参照)は数値制御装置50のCPU51(図4参照)の制御信号に基づいて、Z軸モータ73を駆動する。故に、主軸ヘッド5はZ軸モータ73が駆動することで、昇降駆動する。 The lifting mechanism of the spindle head 5 will be described with reference to FIGS. The column 4 supports a Z-axis ball screw shaft (not shown) extending in the vertical direction. The nut portion (not shown) is screwed with the Z-axis ball screw shaft. The nut portion supports the spindle head 5. A Z-axis motor 73 (see FIG. 4) rotates the Z-axis ball screw shaft in forward and reverse directions. Based on the forward / reverse rotation drive of the Z-axis ball screw shaft, the spindle head 5 is driven up and down in the Z-axis direction. The axis controller 63a (see FIG. 4) drives the Z-axis motor 73 based on a control signal from the CPU 51 (see FIG. 4) of the numerical controller 50. Therefore, the spindle head 5 is driven up and down by driving the Z-axis motor 73.
 図1、図2に示すように、工具交換装置7は工具マガジン14と工具交換アーム15を備える。工具マガジン14は工具6を支持する工具ホルダ(図示略)を複数格納する。工具交換アーム15は主軸5Aに取付けた工具ホルダと他の工具ホルダを掴み、且つ搬送して交換する。工具マガジン14はその内側に複数の工具ポット(図示略)と搬送機構(図示略)を備える。工具ポットは工具ホルダを支持する。搬送機構は工具ポットを工具マガジン14内で搬送する。 1 and 2, the tool changer 7 includes a tool magazine 14 and a tool change arm 15. The tool magazine 14 stores a plurality of tool holders (not shown) that support the tool 6. The tool exchange arm 15 grasps a tool holder attached to the main shaft 5A and another tool holder, and conveys and exchanges them. The tool magazine 14 includes a plurality of tool pots (not shown) and a transport mechanism (not shown) inside. The tool pot supports the tool holder. The transport mechanism transports the tool pot in the tool magazine 14.
 図4を参照して、数値制御装置50の電気的構成について説明する。数値制御装置50はマイクロコンピュータを含む。数値制御装置50は入出力インタフェース54、CPU51、ROM52、フラッシュメモリ53、軸制御部61a~64a及び75a、サーボアンプ61~64、微分器71b~74b等を備える。軸制御部61a~64aは夫々サーボアンプ61~64に接続している。サーボアンプ61~64は夫々X軸モータ71、Y軸モータ72、Z軸モータ73、主軸モータ74に接続している。軸制御部75aはマガジンモータ75に接続している。 The electrical configuration of the numerical control device 50 will be described with reference to FIG. The numerical controller 50 includes a microcomputer. The numerical controller 50 includes an input / output interface 54, a CPU 51, a ROM 52, a flash memory 53, axis control units 61a to 64a and 75a, servo amplifiers 61 to 64, differentiators 71b to 74b, and the like. The axis controllers 61a to 64a are connected to the servo amplifiers 61 to 64, respectively. The servo amplifiers 61 to 64 are connected to an X-axis motor 71, a Y-axis motor 72, a Z-axis motor 73, and a main shaft motor 74, respectively. The shaft control unit 75 a is connected to the magazine motor 75.
 X軸モータ71及びY軸モータ72はテーブル8を夫々X軸方向、Y軸方向に移動する為のモータである。Z軸モータ73は主軸ヘッド5をZ軸方向に昇降駆動する為のモータである。マガジンモータ75は工具マガジン14を回転移動する為のモータである。主軸モータ74は主軸5Aを回転する為のモータである。X軸モータ71、Y軸モータ72、Z軸モータ73、主軸モータ74は夫々エンコーダ71a~74aを備えている。 The X-axis motor 71 and the Y-axis motor 72 are motors for moving the table 8 in the X-axis direction and the Y-axis direction, respectively. The Z-axis motor 73 is a motor for driving the spindle head 5 up and down in the Z-axis direction. The magazine motor 75 is a motor for rotating the tool magazine 14. The main shaft motor 74 is a motor for rotating the main shaft 5A. The X-axis motor 71, Y-axis motor 72, Z-axis motor 73, and main shaft motor 74 are provided with encoders 71a to 74a, respectively.
 軸制御部61a~64aはCPU51からの移動指令量を受けて、電流指令(モータトルク指令値)をサーボアンプ61~64に出力する。サーボアンプ61~64は電流指令を受けてモータ71~74に駆動電流を出力する。軸制御部61a~64aはエンコーダ71a~74aから位置フィードバック信号を受けて、位置のフィードバック制御を行う。微分器71b~74bはエンコーダ71a~74aが出力した位置フィードバック信号を微分して速度フィードバック信号に変換する。微分器71b~74bは軸制御部61a~64aに速度フィードバック信号を出力する。 The axis controllers 61a to 64a receive the movement command amount from the CPU 51 and output a current command (motor torque command value) to the servo amplifiers 61 to 64. The servo amplifiers 61 to 64 receive a current command and output a drive current to the motors 71 to 74. The axis controllers 61a to 64a receive position feedback signals from the encoders 71a to 74a and perform position feedback control. Differentiators 71b to 74b differentiate the position feedback signals output from the encoders 71a to 74a and convert them into speed feedback signals. Differentiators 71b to 74b output speed feedback signals to the axis controllers 61a to 64a.
 軸制御部61a~64aは微分器71b~74bから速度フィードバック信号を受けて、速度フィードバックの制御を行う。電流検出器61b~64bは、サーボアンプ61~64がモータ71~74に出力した駆動電流を検出する。電流検出器61b~64bは検出した駆動電流を、軸制御部61a~64aにフィードバックする。軸制御部61a~64aは、電流検出器61b~64bがフィードバックした駆動電流に基づいて電流(トルク)制御を行う。軸制御部75aはCPU51からの移動指令量を受けて、マガジンモータ75を駆動する。 The axis controllers 61a to 64a receive the speed feedback signal from the differentiators 71b to 74b and control the speed feedback. The current detectors 61b to 64b detect drive currents output from the servo amplifiers 61 to 64 to the motors 71 to 74. The current detectors 61b to 64b feed back the detected drive current to the axis controllers 61a to 64a. The shaft controllers 61a to 64a perform current (torque) control based on the drive current fed back by the current detectors 61b to 64b. The shaft control unit 75 a receives the movement command amount from the CPU 51 and drives the magazine motor 75.
 ROM52は工作機械Mの加工プログラムを実行するメインの制御プログラム、熱変位量補正制御の制御プログラム(図12参照)、ピッチ誤差補正量の補正量を演算する補正量演算処理の制御プログラム(図13参照)等を記憶している。フラッシュメモリ53は機械構造に関するパラメータ、物理的性質に関するパラメータ、熱分配係数(比率)ηN 、ηF及びηB、ピッチ誤差補正量のテーブル等を記憶している。機械構造に関するパラメータは、例えばボールネジシャフト81の長さ及び直径である。物理的性質に関するパラメータは、例えば密度と比熱である。フラッシュメモリ53は図6に示す発熱量、合計発熱量、モータ71の回転速度及び駆動電流、図7に示す分配発熱量を更新して記憶するデータ領域を備えている。フラッシュメモリ53は種々のワークを機械加工する為の複数の加工プログラムも適宜記憶する。 The ROM 52 is a main control program for executing a machining program for the machine tool M, a control program for thermal displacement correction control (see FIG. 12), and a control program for correction amount calculation processing for calculating the correction amount of the pitch error correction amount (FIG. 13). Etc.) are stored. The flash memory 53 stores parameters relating to the mechanical structure, parameters relating to physical properties, heat distribution coefficients (ratio) η N , η F and η B , a table of pitch error correction amounts, and the like. The parameter relating to the mechanical structure is, for example, the length and diameter of the ball screw shaft 81. Parameters relating to physical properties are, for example, density and specific heat. The flash memory 53 includes a data area for updating and storing the heat generation amount, the total heat generation amount, the rotation speed and driving current of the motor 71, and the distributed heat generation amount shown in FIG. The flash memory 53 also appropriately stores a plurality of machining programs for machining various workpieces.
 ピッチ誤差補正量のテーブルはX軸とY軸とZ軸の各軸ボールネジ機構のピッチ誤差を夫々補正する為のテーブルである。ボールネジ機構のピッチ誤差は製造公差等に起因して生じる。本実施例はボールネジシャフト81の回転量とナット部8aの移動量とのピッチ誤差を、予め設定したピッチ誤差補正量のテーブルに基づいて補正する。
 本実施例の熱変位量補正方法は熱変位を補正する場合、演算した熱変位を用いて前記ピッチ誤差補正量を補正することにより行う。 
The pitch error correction amount table is a table for correcting pitch errors of the ball screw mechanisms of the X axis, the Y axis, and the Z axis. The pitch error of the ball screw mechanism is caused by manufacturing tolerances. In this embodiment, the pitch error between the rotation amount of the ball screw shaft 81 and the movement amount of the nut portion 8a is corrected based on a preset pitch error correction amount table.
The thermal displacement correction method of this embodiment is performed by correcting the pitch error correction amount using the calculated thermal displacement when correcting the thermal displacement.
 本実施例はX軸ボールネジシャフト81の熱変位を補正する例であるが、Y軸のボールネジ機構、Z軸のボールネジ機構についても基本的に同様である。 This embodiment is an example in which the thermal displacement of the X-axis ball screw shaft 81 is corrected, but basically the same applies to the Y-axis ball screw mechanism and the Z-axis ball screw mechanism.
  図10に示すように、ナット部8aはX軸ボールネジシャフト81のナット部移動範囲81bを移動可能である。ピッチ誤差補正は補正区間毎に行う。補正区間はナット部移動範囲81bを、例えば20mmの設定長で分割した15個の区間である。ピッチ誤差を補正するピッチ誤差補正量は、出荷前の調整段階に以下の手順で取得した値である。ナット部8aは移動指令値に応じて、位置X0から位置X300までX軸方向へ20mm間隔にて補正区間毎に移動する。本実施例は移動指令値に対する誤差(目標値-実移動量)を精密に測定する。本実施例は測定結果に基づき、ピッチ誤差補正量のテーブルを作成する。本実施例は作成したテーブルをフラッシュメモリ53に予め記憶して出荷する。本実施例はY軸及びZ軸方向についても同様にピッチ誤差補正量のテーブルを作成する。 As shown in FIG. 10, the nut portion 8 a is movable in the nut portion moving range 81 b of the X-axis ball screw shaft 81. Pitch error correction is performed for each correction section. The correction sections are 15 sections obtained by dividing the nut portion movement range 81b by a set length of 20 mm, for example. The pitch error correction amount for correcting the pitch error is a value obtained by the following procedure in the adjustment stage before shipment. The nut portion 8a moves from the position X0 to the position X300 for each correction section at intervals of 20 mm in the X-axis direction according to the movement command value. In this embodiment, an error (target value−actual movement amount) with respect to the movement command value is accurately measured. In this embodiment, a table of pitch error correction amounts is created based on the measurement results. In this embodiment, the created table is stored in advance in the flash memory 53 and shipped. In the present embodiment, a table of pitch error correction amounts is similarly created for the Y-axis and Z-axis directions.
 熱変位量の演算方法について説明する。熱変位量は工作機械Mの稼働中に数値制御に付随して発生する。図5に示すように、本実施例はボールネジシャフト81の前側軸部81a、ナット部移動範囲81b、ボールネジシャフト81の後側軸部81cの3領域の発熱量を求める。 熱 Explain how to calculate thermal displacement. The amount of thermal displacement is generated along with the numerical control during the operation of the machine tool M. As shown in FIG. 5, in this embodiment, the amount of heat generated in three regions of the front shaft portion 81 a of the ball screw shaft 81, the nut portion moving range 81 b, and the rear shaft portion 81 c of the ball screw shaft 81 is obtained.
 図5に示すように、本実施例はボールネジシャフト81の端部81eから端部81fまでの区間を4分割する。本実施例は、例えば演算区間1~3を120mm(補正区間の設定長の6倍)の区間長に分割し、演算区間4を140mm(補正区間の設定長の7倍)の区間長に分割する。但し、4分割は一例に過ぎず、本実施例は4分割に限定しない。本実施例は上記の複数の演算区間について、所定時間(例えば、50ms)毎に演算区間毎の発熱量を求める。 As shown in FIG. 5, in this embodiment, the section from the end 81e to the end 81f of the ball screw shaft 81 is divided into four. In this embodiment, for example, the calculation sections 1 to 3 are divided into 120 mm (six times the set length of the correction section), and the calculation section 4 is divided into 140 mm (seven times the set length of the correction section). To do. However, the four divisions are merely an example, and the present embodiment is not limited to the four divisions. In the present embodiment, the calorific value for each calculation section is obtained for each of the plurality of calculation sections at a predetermined time (for example, 50 ms).
  図5、図6に示すように、フラッシュメモリ53は所定期間(例えば、6400ms)に演算区間1~4で発生した合計の発熱量Q1 ~Q4 、発熱量Q1 ~Q4 の合計発熱量QT 、X軸モータ71の回転速度ω、駆動電流iを記憶するデータ領域を備えている。 As shown in FIGS. 5 and 6, the flash memory 53 is a predetermined time period (e.g., 6400ms) calorific value of the total generated in the arithmetic section 1-4 Q 1 ~ Q 4, the total heat generation of the calorific value Q 1 ~ Q 4 A data area for storing the quantity Q T , the rotational speed ω of the X-axis motor 71 and the drive current i is provided.
 [合計発熱量の演算]
  本実施例は上記の所定時間(例えば、50ms)毎に加工プログラムのX軸送りデータ(制御データ)に基づいて、ナット部8aがどの演算区間に存在するかを判別する。本実施例はテーブル8の送り速度に基づいて、次式に従って発熱量を演算する。テーブル8の送り速度はX軸モータ71の実回転数に基づき決まる。X軸モータ71の実回転数はエンコーダ71aの検出信号に基づいて決まる。フラッシュメモリ53のデータ領域は演算した発熱量を記憶する。発熱量は次式に従って演算する。
[Calculation of total calorific value]
In the present embodiment, it is determined in which calculation section the nut portion 8a exists based on the X-axis feed data (control data) of the machining program every predetermined time (for example, 50 ms). In this embodiment, the calorific value is calculated according to the following equation based on the feed speed of the table 8. The feed speed of the table 8 is determined based on the actual rotational speed of the X-axis motor 71. The actual rotational speed of the X-axis motor 71 is determined based on the detection signal of the encoder 71a. The data area of the flash memory 53 stores the calculated heat generation amount. The calorific value is calculated according to the following equation.
    Q=K1 ×FT   ・・・(1)
 Qは発熱量である。Fはテーブル8の送り速度である。K1及びTは所定の定数である。
Q = K 1 × F T (1)
Q is a calorific value. F is the feed speed of the table 8. K 1 and T are predetermined constants.
 本実施例は上記の発熱量演算式を用いて、各演算区間でのナット部8aの移動による発熱量を所定期間(例えば、6400ms)の間、50ms毎に128回演算する。本実施例は所定期間に演算した発熱量を演算区間毎に合計して、演算区間毎の発熱量Q1~Q4を演算する。図6に示すように、本実施例は発熱量Q1~Q4を演算区間1~4に対応させてフラッシュメモリ53に記憶する。本実施例は合計発熱量QTを演算し、フラッシュメモリ53に記憶する。合計発熱量QTは発熱量Q1~Q4を合計した発熱量である。本実施例は6400msの間におけるX軸モータ71の50ms毎の回転速度ω(つまり、ω 、ω 、・・ω127 )のデータと6400msの間におけるX軸モータ71の50ms毎の駆動電流i(つまり、i0 、i1 、・・i127 )のデータを夫々フラッシュメモリ53に記憶する。 In the present embodiment, using the above calorific value calculation formula, the calorific value due to the movement of the nut portion 8a in each calculation section is calculated 128 times every 50 ms for a predetermined period (for example, 6400 ms). In the present embodiment, the calorific values calculated during a predetermined period are totaled for each computation interval, and calorific values Q 1 to Q 4 for each computation interval are calculated. As shown in FIG. 6, in this embodiment, the heat generation amounts Q 1 to Q 4 are stored in the flash memory 53 in association with the calculation sections 1 to 4. In this embodiment, the total calorific value Q T is calculated and stored in the flash memory 53. The total calorific value Q T is a calorific value obtained by summing the calorific values Q 1 to Q 4 . In this embodiment, the data of the rotational speed ω (that is, ω 0 , ω 1 ,..., Ω 127 ) of the X-axis motor 71 every 6400 ms during 6400 ms and the drive current of the X-axis motor 71 every 50 ms during 6400 ms. The data of i (that is, i 0 , i 1 ,... i 127 ) is stored in the flash memory 53 respectively.
[合計発熱量の分配]
 以下に示す合計発熱量QTの分配方法は日本国特許公開1992年第240045号公報と同様の方法に基づいている。即ち、ボールネジシャフト81のナット部移動範囲81bと前側軸部81aと後側軸部81cとにおいて互いに他の部分への熱伝導が生じず、熱的には近似的に独立しているとみなす。合計発熱量QTに対する各発熱部の比率は送り速度の変化に関係なく、ほぼ一定である。
[Distribution of total calorific value]
The distribution method of the total calorific value Q T shown below is based on the same method as that of Japanese Patent Publication No. 1992-240045. That is, the nut portion moving range 81b, the front shaft portion 81a, and the rear shaft portion 81c of the ball screw shaft 81 are regarded as being thermally independent from each other without causing heat conduction to other portions. The ratio of each heat generating portion to the total heat generation amount Q T is substantially constant regardless of the change in the feed rate.
 CPU51は各発熱部の分配発熱量を、次式に従って演算する。
    QF=ηF ×QT
    QN=ηN ×QT
    QB=ηB ×QT
 発熱量QFは固定軸受18の回転に起因する前側軸部81aの発熱量である。発熱量QNはナット部移動範囲81bの発熱量である。発熱量QBは可動軸受19の回転に起因する後側軸部81cの発熱量である。比率ηFは合計発熱量QTに対する発熱量QFの比率である。比率ηNは合計発熱量QTに対する発熱量QNの比率である。比率ηBは合計発熱量QTに対する発熱量QBの比率である。比率ηF 、ηN 、ηBは前記方法に示すように、一定である。故に、比率ηF 、ηN 、ηBは実機を用いてQF 、QN 、QBを測定して予め求めた値とする。
The CPU 51 calculates the distributed heat generation amount of each heat generating part according to the following equation.
Q F = η F × Q T
Q N = η N × Q T
Q B = η B × Q T
The calorific value Q F is the calorific value of the front shaft portion 81 a due to the rotation of the fixed bearing 18. The heat generation amount Q N is the heat generation amount of the nut portion moving range 81b. The heat generation amount Q B is the heat generation amount of the rear shaft portion 81 c due to the rotation of the movable bearing 19. Ratio eta F is the ratio of the calorific value Q F with respect to the total heat generation amount Q T. Ratio eta N is the ratio of the calorific value Q N to the total heat generation amount Q T. Ratio eta B is the ratio of the calorific value Q B to the total heat generation amount Q T. The ratios η F , η N and η B are constant as shown in the method. Therefore, the ratios η F , η N , and η B are values obtained in advance by measuring Q F , Q N , and Q B using an actual machine.
[ナット部移動範囲における各演算区間への発熱量の分配]
 本実施例はナット部移動範囲81bの発熱量QNを、ベアリングホルダ20と四つの演算区間区切り位置(図5のθ2~θ5に対応する位置)に分配する。本実施例は前記データ領域に記憶する四つの演算区間の発熱量Q1~Q4と合計発熱量QTに基づいて、次式に従って分配比率X1~X4 を求める。分配比率X1~X4は夫々発熱量QNを四つの演算区間の発熱量に分配する比率である。発熱量Q1~Q4と合計発熱量QTは夫々データエリアに記憶してある。
[Distribution of calorific value to each calculation section in nut movement range]
In the present embodiment, the heat generation amount Q N of the nut portion movement range 81b is distributed to the bearing holder 20 and four calculation section separation positions (positions corresponding to θ 2 to θ 5 in FIG. 5). In the present embodiment, distribution ratios X 1 to X 4 are obtained according to the following equations based on the calorific values Q 1 to Q 4 and the total calorific values Q T of the four calculation sections stored in the data area. The distribution ratios X 1 to X 4 are ratios for distributing the calorific value Q N to the calorific values of the four calculation sections. The heat generation amounts Q 1 to Q 4 and the total heat generation amount Q T are stored in the data areas, respectively.
    X1 =演算区間1の発熱量Q1/ QT
            :
    X4 =演算区間4の発熱量Q4/ QT
 本実施例は四つの演算区間の分配比率X1~X4 とナット部移動範囲81bの分配発熱量QNから、次式により四つの演算区間1~4についての分配発熱量QN1~QN4を演算する。
X 1 = calorific value Q 1 / Q T of calculation section 1
:
X 4 = calorific value of calculation section 4 Q 4 / Q T
In the present embodiment, the distribution heat generation amounts Q N1 to Q N4 for the four calculation sections 1 to 4 are calculated from the distribution ratios X 1 to X 4 of the four calculation sections and the distribution heat generation amount Q N of the nut portion movement range 81b by the following equation. Is calculated.
    QN1=X1 ×QN
       :
    QN4=X4 ×QN
 本実施例は上記の結果を用いて、ベアリングホルダ20と四つの演算区間区切り位置の分配発熱量を図7のように表すことができる。
Q N1 = X 1 × Q N
:
Q N4 = X 4 × Q N
In the present embodiment, using the above result, the distribution heat generation amount at the bearing holder 20 and the four calculation section break positions can be expressed as shown in FIG.
[温度分布の演算]
 本実施例はベアリングホルダ20と四つの演算区間区切り位置の分配発熱量を演算した後、各分配発熱量から温度分布を演算する。温度分布は次の非定常熱伝導方程式を解けば求めることができる。但し、初期条件は{θ}t=0 ={θa}であり、θaは初期温度である。
[Calculation of temperature distribution]
In this embodiment, after calculating the distribution heat generation amount at the bearing holder 20 and the four calculation section break positions, the temperature distribution is calculated from each distribution heat generation amount. The temperature distribution can be obtained by solving the following unsteady heat conduction equation. However, the initial condition is {θ} t = 0 = {θ a }, and θ a is the initial temperature.
   [C]d{θ}/dt+[H]{θ}+{Q}=0  ・・・(2)
 [C]は熱容量マトリックス、[H]は熱伝導マトリックス、{θ}は温度分布、{Q}は発熱量、tは時間である。本実施例は熱伝導マトリックスに乗算する温度分布を温度上昇マトリックスと呼ぶ。温度分布{θ}と発熱量{Q}は夫々次式のように表すことができる。
[C] d {θ} / dt + [H] {θ} + {Q} = 0 (2)
[C] is a heat capacity matrix, [H] is a heat conduction matrix, {θ} is a temperature distribution, {Q} is a calorific value, and t is time. In this embodiment, the temperature distribution multiplied by the heat conduction matrix is called a temperature rise matrix. The temperature distribution {θ} and the calorific value {Q} can be expressed by the following equations, respectively.
Figure JPOXMLDOC01-appb-M000001
 QF:前側軸部81aの発熱量である。上記の式を式(2)に代入すると非定常熱伝導方程式は次のようになる。
Figure JPOXMLDOC01-appb-M000001
Q F is the amount of heat generated by the front shaft portion 81a. Substituting the above equation into equation (2) yields the unsteady heat conduction equation as follows:
Figure JPOXMLDOC01-appb-M000002
 式(3)の非定常熱伝導方程式を使用する従来の方法は、X軸モータ71からボールネジシャフト81に供給する発熱量と熱分配係数とに基づいて演算した発熱量QFを使用している。熱分配係数は一定値である。故に、従来の方法はボールネジシャフト端部81eの温度変化を正確に見積もることができない。従来の方法は、X軸モータ71に電流が流れてからボールネジシャフト端部81eの温度が上昇するまでの時間遅れについては考慮していない。従来の方法は、X軸モータ71の発熱量の一部が放熱する点についても考慮していない。
Figure JPOXMLDOC01-appb-M000002
The conventional method using the unsteady heat conduction equation of Equation (3) uses a calorific value Q F calculated based on a calorific value supplied from the X-axis motor 71 to the ball screw shaft 81 and a heat distribution coefficient. . The heat distribution coefficient is a constant value. Therefore, the conventional method cannot accurately estimate the temperature change of the ball screw shaft end portion 81e. The conventional method does not consider the time delay from when the current flows to the X-axis motor 71 until the temperature of the ball screw shaft end portion 81e rises. The conventional method does not take into consideration that part of the heat generated by the X-axis motor 71 radiates heat.
 本実施例は、X軸モータ71の発熱量の一部が放熱する点と前記時間遅れとを考慮する。本実施例は式(3)の温度上昇マトリックスにおいて、ボールネジシャフト端部81eの温度上昇θの代わりに、ベアリングホルダ20の温度上昇θ0を用いる。温度上昇θ0、θ2~θ5については、後述するように時間の変数を追加する。非定常熱伝導方程式は次のようになる。
Figure JPOXMLDOC01-appb-M000003
In the present embodiment, a point that a part of the heat generation amount of the X-axis motor 71 dissipates heat and the time delay are considered. In this embodiment, the temperature rise θ 0 of the bearing holder 20 is used instead of the temperature rise θ 1 of the ball screw shaft end portion 81e in the temperature rise matrix of the expression (3). For the temperature rises θ 0 and θ 2 to θ 5 , a time variable is added as will be described later. The unsteady heat conduction equation is as follows.
Figure JPOXMLDOC01-appb-M000003
 式(4)は、変形して次式(5)のように表すことができる。
Figure JPOXMLDOC01-appb-M000004
Equation (4) can be transformed and expressed as the following equation (5).
Figure JPOXMLDOC01-appb-M000004
 式(5)は、ベアリングホルダ20とボールネジシャフト端部81eと四つの演算区間区切り位置(図5のθ2からθ5に対応する位置)の温度に対して、時間の変数を用いて次式(6)のように表すことができる。
Figure JPOXMLDOC01-appb-M000005
 本実施例は式(6)の右辺に既知の値を代入する。本実施例は、左辺で時間nΔtにおけるボールネジシャフト端部81eと四つの演算区間区切り位置の温度上昇の傾きを演算することができる。
Equation (5) is obtained by using a time variable with respect to the temperature of the bearing holder 20, the ball screw shaft end portion 81e, and four calculation section separation positions (positions corresponding to θ 2 to θ 5 in FIG. 5). It can be expressed as (6).
Figure JPOXMLDOC01-appb-M000005
In this embodiment, a known value is substituted for the right side of the equation (6). In the present embodiment, it is possible to calculate the gradient of the temperature rise at the ball screw shaft end portion 81e and the four calculation section break positions at the time nΔt on the left side.
 本実施例はベアリングホルダ20の温度上昇θ0(t)を演算する。本実施例はX軸モータ71の駆動電流とX軸モータ71の回転速度に基づいてベアリングホルダ20の温度上昇θ0(t)を演算する。X軸モータ71の駆動電流は電流検出器61bが検出する。X軸モータ71の回転速度はエンコーダ71aの検出信号に基づく。本実施例は図8に示すように、演算周期をt=Δt(例えば、Δt=50ms)として、ベアリングホルダ20の温度上昇θ0(t)を次式によって演算する。
    θ0(Δt)=θ0(0)+k1×ω(Δt)+k2×(i(Δt))2-k3×
θ0(0)
    θ0(2Δt)=θ0(Δt)+k1×ω(2Δt)+k2×(i(2Δt))2
-k3×θ0(Δt)
    θ0(3Δt)=θ0(2Δt)+k1×ω(3Δt)+k2×(i(3Δt))2-k3×θ0(2Δt)
    θ0(4Δt)=θ0(3Δt)+k1×ω(4Δt)+k2×(i(4Δt))2-k3×θ0(3Δt)
                  :
    θ0(nΔt)=θ0((n-1)Δt)+k1×ω(nΔt)+k2×(i(nΔt))2-k3×θ0((n-1)Δt)
 k1、k2、k3は実験で求める値(X軸サーボモータ71とベアリングホルダ20を系とした固有の定数)である。ω(nΔt)はt=0~nΔtにおけるX軸モータ71の平均速度である。i(nΔt)はt=0~nΔtにおけるX軸モータ71の駆動電流の平均値である。θ0(0)はt=0におけるベアリングホルダ20の初期温度上昇である。
In this embodiment, the temperature rise θ 0 (t) of the bearing holder 20 is calculated. In this embodiment, the temperature rise θ 0 (t) of the bearing holder 20 is calculated based on the drive current of the X-axis motor 71 and the rotational speed of the X-axis motor 71. The current detector 61b detects the drive current of the X-axis motor 71. The rotational speed of the X-axis motor 71 is based on the detection signal of the encoder 71a. In this embodiment, as shown in FIG. 8, the calculation cycle is t = Δt (for example, Δt = 50 ms), and the temperature rise θ 0 (t) of the bearing holder 20 is calculated by the following equation.
θ 0 (Δt) = θ 0 (0) + k1 × ω (Δt) + k2 × (i (Δt)) 2 −k3 ×
θ 0 (0)
θ 0 (2Δt) = θ 0 (Δt) + k1 × ω (2Δt) + k2 × (i (2Δt)) 2
−k3 × θ 0 (Δt)
θ 0 (3Δt) = θ 0 (2Δt) + k1 × ω (3Δt) + k2 × (i (3Δt)) 2 −k3 × θ 0 (2Δt)
θ 0 (4Δt) = θ 0 (3Δt) + k1 × ω (4Δt) + k2 × (i (4Δt)) 2 −k3 × θ 0 (3Δt)
:
θ 0 (nΔt) = θ 0 ((n−1) Δt) + k1 × ω (nΔt) + k2 × (i (nΔt)) 2 −k3 × θ 0 ((n−1) Δt)
k1, k2, and k3 are values obtained by experiments (specific constants based on the X-axis servomotor 71 and the bearing holder 20). ω (nΔt) is the average speed of the X-axis motor 71 at t = 0 to nΔt. i (nΔt) is an average value of the drive current of the X-axis motor 71 at t = 0 to nΔt. θ 0 (0) is the initial temperature rise of the bearing holder 20 at t = 0.
 本実施例は、式(6)の右辺にベアリングホルダ20と四つの演算区間区切り位置における初期温度上昇と分配発熱量を代入する。図9に示すように、本実施例は、t=0におけるボールネジシャフト端部81eと四つの演算区間区切り位置の温度上昇の傾きを演算することができる。演算した傾きから次式(7)を得ることができる。式(7)は、t=Δtにおけるボールネジシャフト端部81eと四つの演算区間区切り位置の温度上昇を演算することができる。
    θi(Δt)=θi(0)+dθi(0)/dt×Δt  ・・・(7)
i=1から5、θi(0)はt=0における初期温度上昇である。
In the present embodiment, the initial temperature rise and the distribution heat generation amount at the bearing holder 20 and the four calculation section break positions are substituted into the right side of Expression (6). As shown in FIG. 9, in this embodiment, it is possible to calculate the gradient of the temperature rise between the ball screw shaft end portion 81 e and the four calculation section break positions at t = 0. The following equation (7) can be obtained from the calculated inclination. Equation (7) can calculate the temperature rise at the ball screw shaft end portion 81e and the four calculation section break positions at t = Δt.
θ i (Δt) = θ i (0) + dθ i (0) / dt × Δt (7)
i = 1 to 5, θ i (0) is the initial temperature rise at t = 0.
 本実施例は同様の演算を繰り返すことで、t=2Δt、t=3Δt、‥におけるボールネジシャフト端部81eと四つの演算区間区切り位置の温度上昇を演算することができる。本実施例はボールネジシャフト端部81eと四つの演算区間区切り位置において、時間経過に伴う温度分布{θ}を演算することができる。 In the present embodiment, by repeating the same calculation, it is possible to calculate the temperature rise of the ball screw shaft end portion 81e and the four calculation section break positions at t = 2Δt, t = 3Δt,. In this embodiment, the temperature distribution {θ} with the passage of time can be calculated at the ball screw shaft end portion 81e and the four calculation section break positions.
[熱変位量の演算]
 本実施例は、ボールネジシャフト端部81eと四つの演算区間区切り位置の温度θ1~θ5を演算する。本実施例は演算した温度θ1~θ5に基づいて、ボールネジシャフト端部81eと四つの演算区間区切り位置の熱変位量を演算する。ボールネジシャフト端部81eと四つの演算区間区切り位置の熱変位量は、次式(8)から演算する。
[Calculation of thermal displacement]
In this embodiment, the temperatures θ 1 to θ 5 of the ball screw shaft end portion 81e and the four calculation section break positions are calculated. In this embodiment, based on the calculated temperatures θ 1 to θ 5 , the thermal displacement amounts of the ball screw shaft end portion 81e and the four calculation section break positions are calculated. The thermal displacement amount between the ball screw shaft end portion 81e and the four calculation section break positions is calculated from the following equation (8).
    ΔL=∫L 0 β×θ(L)dL  ・・・(8)
 ΔLは熱変位量である。βはボールネジシャフト材料の線膨張係数である。積分記号は0~Lの範囲についての積分を示す。Lは四つの演算区間区切り位置までの長さを示す。具体的には、0~120、0~240、0~360、・・・等の範囲についての積分を示す。
ΔL = ∫ L 0 β × θ (L) dL ··· (8)
ΔL is the amount of thermal displacement. β is the coefficient of linear expansion of the ball screw shaft material. The integration symbol indicates integration over a range of 0 to L. L indicates the length up to the four calculation section break positions. Specifically, the integration over a range of 0 to 120, 0 to 240, 0 to 360,.
[補正量の演算]
 本実施例は、ボールネジシャフト81の四つの演算区間区切り位置の熱変位量を演算してから、15個の補正区間のピッチ誤差補正量を夫々補正する補正量を演算する。ナットの移動範囲がX0~X300(300mmの範囲)であり、各補正区間の長さが20mmであるので、15個の補正区間がある。15個の補正区間の補正量は図11と後述する補正量演算式によって演算する。
[Calculation of correction amount]
In this embodiment, after calculating the thermal displacement amounts at the four calculation section break positions of the ball screw shaft 81, the correction amounts for correcting the pitch error correction amounts of the 15 correction sections are calculated. Since the nut moving range is X0 to X300 (300 mm range) and the length of each correction section is 20 mm, there are 15 correction sections. The correction amounts of the 15 correction sections are calculated using FIG. 11 and a correction amount calculation formula described later.
 図11はピッチ誤差補正量を補正する補正量を演算する場合の説明図である。図11に示すように、縦軸は固定軸受18の位置を基準とする熱変位量である。上側の横軸は固定軸受18を基準とするボールネジシャフト81の各部の位置である。下側の横軸は15個の補正区間の区切り位置(X0、X20・・・、X300)である。
     DF1は演算区間1における熱変位量である。
     DF2は演算区間1と演算区間2における熱変位量の合計である。
             :
     DF4は演算区間1から演算区間4における熱変位量の合計である。
FIG. 11 is an explanatory diagram for calculating a correction amount for correcting the pitch error correction amount. As shown in FIG. 11, the vertical axis represents the amount of thermal displacement based on the position of the fixed bearing 18. The upper horizontal axis is the position of each part of the ball screw shaft 81 with respect to the fixed bearing 18. The horizontal axis on the lower side is a delimiter position (X0, X20..., X300) of 15 correction sections.
D F1 is a thermal displacement amount in the calculation section 1.
D F2 is the total amount of thermal displacement in the calculation section 1 and the calculation section 2.
:
D F4 is the total amount of thermal displacement in the calculation section 1 to the calculation section 4.
 図11に示すように、次式は15個の補正区間の区切り位置(X20、・・・、X300)の補正量を演算することができる。
[補正量演算式]
    X0の補正量=演算区間1の熱変位量×{(演算区間1の左区切り位置とX0間の長さ)/演算区間1の長さ}
    X20の補正量=演算区間1の熱変位量×{(演算区間1の左区切り位置とX20間の長さ)/演算区間1の長さ}-X0の補正量
    X40の補正量=演算区間1の熱変位量+演算区間2の熱変位量×{(演算区間2の左区切り位置とX40間の長さ)/演算区間2の長さ}-X20の補正量
    X60の補正量=演算区間1の熱変位量+演算区間2の熱変位量×{(演算区間2の左区切り位置とX60間の長さ)/演算区間2の長さ}-X40の補正量
    X80の補正量=演算区間1の熱変位量+演算区間2の熱変位量×{(演算区間2の左区切り位置とX80間の長さ)/演算区間2の長さ}-X60の補正量
                   :
    X300の補正量=演算区間1の熱変位量+演算区間2の熱変位量+演算区間3の熱変位量+演算区間4の熱変位量×{(演算区間4の左区切り位置とX300間の長さ)/演算区間4の長さ}-X280の補正量
As shown in FIG. 11, the following equation can calculate the correction amount at the delimiter positions (X20,..., X300) of the 15 correction sections.
[Correction amount calculation formula]
Correction amount of X0 = thermal displacement amount of calculation section 1 × {(length between left delimiter position of calculation section 1 and X0) / length of calculation section 1}
Correction amount of X20 = thermal displacement amount of calculation section 1 × {(length between the left delimiter position of calculation section 1 and X20) / length of calculation section 1} −correction amount of X0 correction amount of X40 = calculation section 1 Heat displacement amount + heat displacement amount in computation interval 2 × {(length between left separation position of computation interval 2 and X40) / length of computation interval 2} −correction amount of X20 X60 correction amount = calculation interval 1 Thermal displacement amount + thermal displacement amount in computation interval 2 × {(length between left delimiter position of computation interval 2 and X60) / length of computation interval 2} −correction amount of X40 correction amount of X80 = calculation interval 1 Thermal displacement amount + thermal displacement amount in computation interval 2 × {(length between left delimiter position of computation interval 2 and X80) / length of computation interval 2} −correction amount of X60:
Correction amount of X300 = thermal displacement amount of computation section 1 + thermal displacement amount of computation section 2 + thermal displacement amount of computation section 3 + thermal displacement amount of computation section 4 × {(between the left separation position of computation section 4 and X300 Length) / length of calculation section 4} −X280 correction amount
 図12を参照して、数値制御装置50が実行する熱変位補正制御の一実施例について説明する。数値制御装置50は本発明の熱変位補正装置として機能する。図中Si(i=1、2・・・)は各ステップを示す。熱変位補正制御は上記した熱変位補正方法を実行するものである。故に、本制御は上記した内容と重複する部分が多いので簡単に説明する。ワークに対する機械加工の数値制御は熱変位補正制御と並行に実行する。 With reference to FIG. 12, an embodiment of the thermal displacement correction control executed by the numerical controller 50 will be described. The numerical control device 50 functions as a thermal displacement correction device of the present invention. In the figure, Si (i = 1, 2,...) Indicates each step. The thermal displacement correction control executes the above-described thermal displacement correction method. Therefore, since this control has many parts which overlap with the above-mentioned content, it demonstrates easily. Numerical control of machining on the workpiece is executed in parallel with thermal displacement correction control.
 数値制御装置50のCPU51は最初にS1において、初期設定を実行する(S1)。初期設定においては、パラメータ等の設定データから有限要素法による演算に必要なマトリックス及び初期温度を設定する。CPU51は初期設定において、フラッシュメモリ53の関連する領域をクリアする等の処理を実行する。図5に示すように、CPU51はボールネジシャフト81を四つの演算区間1~4に分割する(S2)。 The CPU 51 of the numerical controller 50 first performs initial setting in S1 (S1). In the initial setting, a matrix and an initial temperature necessary for calculation by the finite element method are set from setting data such as parameters. In the initial setting, the CPU 51 executes processing such as clearing the related area of the flash memory 53. As shown in FIG. 5, the CPU 51 divides the ball screw shaft 81 into four calculation sections 1 to 4 (S2).
 CPU51はカウンタIを0に設定する(S3)。CPU51はX軸送りデータ、エンコーダ71aの検出信号、電流検出器61bの駆動電流値を読み込む(S4)。CPU51は演算区間1~4の50ms毎の発熱量とベアリングホルダ20の温度θ0を演算し、フラッシュメモリ53に記憶する(S5)。CPU51は、カウンタIを「1」加算する(S6)。CPU51は、カウンタIのカウンタ値が「127」か否かを判定する(S7)。CPU51は、カウンタIのカウンタ値が「127」でないと判定する間(S7:NO)S4に戻ってS4~S6の処理を繰り返す。CPU51は、カウンタIのカウンタ値が「127」であると判定した場合(S7:YES)、演算区間1~4における6400ms間の発熱量Q1~Q4、合計発熱量Qを演算してフラッシュメモリ53に記憶する(S8)。 The CPU 51 sets the counter I to 0 (S3). The CPU 51 reads the X-axis feed data, the detection signal of the encoder 71a, and the drive current value of the current detector 61b (S4). The CPU 51 calculates the amount of heat generated every 50 ms in the calculation sections 1 to 4 and the temperature θ 0 of the bearing holder 20 and stores them in the flash memory 53 (S5). The CPU 51 adds “1” to the counter I (S6). The CPU 51 determines whether or not the counter value of the counter I is “127” (S7). While determining that the counter value of the counter I is not “127” (S7: NO), the CPU 51 returns to S4 and repeats the processes of S4 to S6. When the CPU 51 determines that the counter value of the counter I is “127” (S7: YES), the CPU 51 calculates the heat generation amounts Q 1 to Q 4 and the total heat generation amount Q T for 6400 ms in the calculation sections 1 to 4. The data is stored in the flash memory 53 (S8).
 CPU51は、前述の各部の発熱量QN、QBを演算してフラッシュメモリ53に記憶し、発熱量QNに分配した演算区間1~4への分配発熱量QN1~QN4を演算してフラッシュメモリ53に記憶する。CPU51は、ベアリングホルダ20と四つの演算区間区切り位置についての図7に示す分配発熱量も演算してフラッシュメモリ53に記憶する(S9)。CPU51は図7に示す分配発熱量に基づいて、ボールネジシャフト端部81eと四つの演算区間区切り位置の温度θ1~θ5を演算してフラッシュメモリ53に記憶する(S10)。 The CPU 51 calculates the calorific values Q N and Q B of each part described above, stores them in the flash memory 53, and computes the calorific values Q N1 to Q N4 distributed to the calculation sections 1 to 4 distributed to the calorific values Q N. And stored in the flash memory 53. The CPU 51 also calculates the distribution heat generation amount shown in FIG. 7 for the bearing holder 20 and the four calculation section break positions and stores them in the flash memory 53 (S9). The CPU 51 calculates the temperatures θ 1 to θ 5 of the ball screw shaft end portion 81e and the four calculation section break positions based on the distributed heat generation amount shown in FIG. 7, and stores them in the flash memory 53 (S10).
 CPU51は前記の式(8)に基づいて、四つの演算区間についての演算区間区切り位置の熱変位量を演算してフラッシュメモリ53に記憶する(S11)。CPU51は前述した補正量演算式に基づいて、前述のようにして16個の補正区間区切り位置における補正量を演算する(S12)。CPU51はS12において演算した補正量を用いて、16個の補正区間区切り位置に対して予め設定したピッチ誤差補正量に対する補正処理を実行し、補正処理したピッチ誤差補正量による送り量補正処理を実行する(S13)。CPU51は熱変位補正の処理を終了するか否かを判定する(S14)。CPU51は熱変位補正の処理を終了しないと判定した場合(S14:NO)、S3に戻ってS3以降の処理を繰り返し実行する。熱変位補正の処理を終了すると判定した場合(S14:YES)、熱変位補正制御は終了する。 The CPU 51 calculates the thermal displacement amount at the calculation section break position for the four calculation sections based on the above formula (8) and stores it in the flash memory 53 (S11). The CPU 51 calculates the correction amounts at the 16 correction section break positions as described above based on the correction amount calculation formula described above (S12). The CPU 51 uses the correction amount calculated in S12 to execute correction processing for the preset pitch error correction amount for the 16 correction section break positions, and performs feed amount correction processing using the corrected pitch error correction amount. (S13). The CPU 51 determines whether or not to end the thermal displacement correction process (S14). When it is determined that the thermal displacement correction process is not to be ended (S14: NO), the CPU 51 returns to S3 and repeatedly executes the processes after S3. When it is determined that the thermal displacement correction process is finished (S14: YES), the thermal displacement correction control is finished.
 図13のフローチャートを参照して、S12のピッチ誤差補正量を補正する補正量を演算する補正量演算処理について説明する。図中Si(i=20、21・・・)は各ステップを示す。CPU51はカウンタnを0にリセットする(S20)。位置Xnの補正量ΔMnを次式により演算する(S21)。 With reference to the flowchart of FIG. 13, the correction amount calculation processing for calculating the correction amount for correcting the pitch error correction amount in S12 will be described. In the figure, Si (i = 20, 21...) Indicates each step. The CPU 51 resets the counter n to 0 (S20). A correction amount ΔM n for the position Xn is calculated by the following equation (S21).
 ΔMn=DF+ΔDn×{(Xn-XF)/Ln}-ΔMn-20、n=0により、位置X0の補正量ΔM0を求める。以下の式は、前述した補正量演算式を簡単に表したものである。
     DF:位置Xnよりも固定側の演算区間で発生した熱変位量の合計。
     ΔDn:位置Xnを含む演算区間で発生した熱変位量。
     XF:位置Xnを含む演算区間の左区切り位置。
     Ln:位置Xnを含む演算区間の長さ。
  ΔM0を求める場合に用いるΔM-20は0とする。
ΔM n = D F + ΔD n × {(Xn−X F ) / L n } −ΔM n−20 , n = 0, and the correction amount ΔM 0 of the position X0 is obtained. The following formula simply represents the correction amount calculation formula described above.
D F : The total amount of thermal displacement generated in the calculation section on the fixed side with respect to the position Xn.
ΔD n : thermal displacement amount generated in the calculation section including the position Xn.
X F : Left separation position of the calculation section including the position Xn.
L n : the length of the calculation section including the position Xn.
ΔM −20 used for obtaining ΔM 0 is 0.
 CPU51はnに20加算する(S22)。CPU51は、nが320であるか否か判定する(S23)。nが320でない場合(S23:NO)、位置X300までの補正量についての演算を終了していないものと判定し、S21へ戻って位置Xnの補正量ΔMnを演算する。位置X300の補正量ΔM300を演算するまではS21~S23を繰り返し実行する。CPU51は補正量ΔM300を演算した後(S21)、S22においてn=320となれば(S23:YES)本処理を終了して、図12のS14へ移行する。 The CPU 51 adds 20 to n (S22). The CPU 51 determines whether n is 320 (S23). If n is not a 320 (S23: NO), it is determined that not finished operation on the correction amount to the position X300, it calculates a correction amount .DELTA.M n positions Xn returns to S21. Until calculates a correction amount .DELTA.M 300 position X300 is repeatedly executes S21 ~ S23. After calculating the correction amount ΔM 300 (S21), if n = 320 in S22 (S23: YES), the CPU 51 ends this process and proceeds to S14 in FIG.
 エンコーダ71aは「速度検出機器」に相当する。S3~S7を実行するCPU51は「発熱量演算部」と「温度演算部」に相当する。S8~S10を実行するCPU51は「温度分布演算部」に相当する。S11を実行するCPU51は「熱変位量演算部」に相当する。S12を実行するCPU51は「補正量演算部」に相当する。 Encoder 71a corresponds to “speed detection device”. The CPU 51 that executes S3 to S7 corresponds to a “heat generation amount calculation unit” and a “temperature calculation unit”. The CPU 51 that executes S8 to S10 corresponds to a “temperature distribution calculation unit”. The CPU 51 that executes S11 corresponds to a “thermal displacement calculation unit”. The CPU 51 that executes S12 corresponds to a “correction amount calculation unit”.
 工作機械Mの熱変位補正方法及び熱変位補正装置である数値制御装置50の作用、効果について説明する。本実施例はボールネジシャフト81の全長を複数分割した複数区間に発生する発熱量を、X軸モータ71の回転速度と制御データに基づいて50ms毎に演算する。ベアリングホルダ20の温度上昇は50ms毎に演算する。本実施例は複数区間の発熱量を6400ms分累積した合計発熱量とボールネジシャフト端部81eの温度上昇の代わりにベアリングホルダ20の温度上昇を用いた非定常熱伝導方程式に基づいて、複数区間の温度分布を6400ms毎に演算する。 The operation and effect of the numerical control device 50, which is a thermal displacement correction method and a thermal displacement correction device for the machine tool M, will be described. In this embodiment, the amount of heat generated in a plurality of sections obtained by dividing the entire length of the ball screw shaft 81 is calculated every 50 ms based on the rotational speed of the X-axis motor 71 and control data. The temperature rise of the bearing holder 20 is calculated every 50 ms. The present embodiment is based on the unsteady heat conduction equation using the total heat generation amount accumulated for 6400 ms and the temperature rise of the ball screw shaft end portion 81e instead of the temperature rise of the bearing holder 20 based on the unsteady heat conduction equation. The temperature distribution is calculated every 6400 ms.
 本実施例は、温度分布に基づいてボールネジシャフト81の複数区間の熱変位量を6400ms毎に演算する。最後に、複数区間の熱変位量に基づいて、ボールネジシャフト81のナット移動範囲81bを複数分割した複数の補正区間毎に制御データを夫々補正する補正量を6400ms毎に演算する。故に、本実施例は次のような効果を得ることができる。 In the present embodiment, the thermal displacement amount of a plurality of sections of the ball screw shaft 81 is calculated every 6400 ms based on the temperature distribution. Finally, a correction amount for correcting the control data is calculated every 6400 ms for each of a plurality of correction sections obtained by dividing the nut movement range 81b of the ball screw shaft 81 based on the thermal displacement amounts of the plurality of sections. Therefore, the present embodiment can obtain the following effects.
 非定常熱伝導方程式は、X軸モータ71から入熱した発熱量によって上昇したベアリングホルダ20の温度上昇を用いる。故に、本実施例はX軸モータ71の発熱量の内の放熱分を考慮した発熱量を用いて、熱変位量を演算できる。ベアリングホルダ20の温度上昇は所定時間毎に演算する。故に、本実施例は、X軸モータ71に電流が流れてからボールネジシャフト端部81eがX軸モータ71からの熱的影響を受けるまでの時間遅れを考慮した熱変位量を演算できる。本実施例は、X軸モータ71の発熱量の一部が放熱する事と前記時間遅れが発生する事を考慮した熱変位量を演算するので、高精度な熱変位補正ができる。 The unsteady heat conduction equation uses the temperature rise of the bearing holder 20 that has risen due to the amount of heat input from the X-axis motor 71. Therefore, in this embodiment, the heat displacement amount can be calculated using the heat generation amount considering the heat radiation amount in the heat generation amount of the X-axis motor 71. The temperature rise of the bearing holder 20 is calculated every predetermined time. Therefore, this embodiment can calculate the amount of thermal displacement taking into account the time delay from when the current flows to the X-axis motor 71 until the ball screw shaft end portion 81 e is thermally affected by the X-axis motor 71. In the present embodiment, the thermal displacement amount is calculated in consideration of the fact that a part of the heat generation amount of the X-axis motor 71 dissipates heat and the occurrence of the time delay. Therefore, highly accurate thermal displacement correction can be performed.
 ベアリングホルダ20の温度上昇はX軸モータ71の回転速度と駆動電流値に基づいて演算する。故に、本実施例は別途センサ等を新たに設けることなく、既存のセンサを使用して高精度な熱変位補正を行うことができ、且つ製作コストを低減できる。 The temperature rise of the bearing holder 20 is calculated based on the rotational speed of the X-axis motor 71 and the drive current value. Therefore, in this embodiment, it is possible to perform highly accurate thermal displacement correction using an existing sensor without newly providing a sensor or the like, and to reduce the manufacturing cost.
 上記の実施形態を部分的に変更した変更例について説明する。上記の実施形態はベアリングホルダ20の温度上昇を演算する際に、X軸モータ71の駆動電流とX軸モータ71の回転速度を使用している。変更例はX軸モータ71の駆動電流のみ又はX軸モータ71の回転速度のみを使用して演算してもよい。変更例はベアリングホルダ20に温度センサを取り付けておき、温度センサの検知結果を用いてベアリングホルダ20の温度上昇を演算してもよい。 A modification example in which the above embodiment is partially modified will be described. The above embodiment uses the drive current of the X-axis motor 71 and the rotational speed of the X-axis motor 71 when calculating the temperature rise of the bearing holder 20. The modification example may be calculated using only the drive current of the X-axis motor 71 or only the rotation speed of the X-axis motor 71. In the modified example, a temperature sensor may be attached to the bearing holder 20, and the temperature rise of the bearing holder 20 may be calculated using the detection result of the temperature sensor.
 上記の実施形態は発熱量を演算する演算周期50msを例にして説明したが、演算周期は50msに限るものではない。前記の所定期間の6400msも一例に過ぎない。変更例は、例えば所定期間を本実施例よりも長い秒単位に設定してもよい。 In the above embodiment, the calculation cycle for calculating the calorific value is described as an example, but the calculation cycle is not limited to 50 ms. The predetermined period of 6400 ms is only an example. In the modified example, for example, the predetermined period may be set in units of seconds longer than that of the present embodiment.

Claims (4)

  1.  送り駆動用ボールネジ機構と、該ボールネジ機構のナットが螺合したシャフトを回転駆動するサーボモータと、該サーボモータを制御データに基づき制御する制御機器とを有する工作機械の熱変位補正方法において、
     前記シャフトの全長を複数分割した複数区間に発生する発熱量を、前記サーボモータの回転速度と制御データとに基づいて所定時間毎に求め、軸受を介してシャフトのモータ側を回転自在に支持するベアリングホルダの温度上昇を前記所定時間毎に演算する第1ステップと、
     前記複数区間の発熱量を所定期間分累積した合計発熱量と、前記シャフトのモータ側端部の温度上昇の代わりに前記ベアリングホルダの温度上昇を用いた非定常熱伝導方程式とに基づいて、複数区間の温度分布を前記所定期間毎に演算する第2ステップと、
     前記温度分布から前記シャフトの複数区間の熱変位量を前記所定期間毎に演算する第3ステップと、
     前記複数区間の熱変位量に基づいて、前記シャフトのナット移動範囲を複数分割した複数の補正区間毎に前記制御データを夫々補正する補正量を前記所定期間毎に演算する第4ステップと、
     を備えた工作機械の熱変位補正方法。
    In a thermal displacement correction method for a machine tool having a feed screw ball screw mechanism, a servo motor that rotationally drives a shaft into which a nut of the ball screw mechanism is screwed, and a control device that controls the servo motor based on control data.
    The amount of heat generated in a plurality of sections obtained by dividing the entire length of the shaft is obtained every predetermined time based on the rotation speed of the servo motor and control data, and the motor side of the shaft is rotatably supported via a bearing. A first step of calculating the temperature rise of the bearing holder every predetermined time;
    Based on the total calorific value obtained by accumulating the calorific value of the plurality of sections for a predetermined period, and an unsteady heat conduction equation using the temperature rise of the bearing holder instead of the temperature rise of the motor side end of the shaft, A second step of calculating the temperature distribution of the section for each predetermined period;
    A third step of calculating a thermal displacement amount of the plurality of sections of the shaft from the temperature distribution for each predetermined period;
    A fourth step of calculating, for each predetermined period, a correction amount for correcting the control data for each of a plurality of correction sections obtained by dividing the nut movement range of the shaft based on the amount of thermal displacement of the plurality of sections;
    A thermal displacement correction method for machine tools provided with
  2.  前記ベアリングホルダの温度上昇は、前記サーボモータの回転速度と駆動電流値とに基づいて演算する請求項1に記載の工作機械の熱変位補正方法。 The method for correcting a thermal displacement of a machine tool according to claim 1, wherein the temperature rise of the bearing holder is calculated based on a rotation speed and a drive current value of the servo motor.
  3.  送り駆動用ボールネジ機構と、該ボールネジ機構のナットが螺合したシャフトを回転駆動するサーボモータと、該サーボモータを制御データに基づき制御する制御機器とを有する工作機械の熱変位補正装置において、
     前記サーボモータの回転速度を検出する速度検出機器と、
     前記シャフトの全長を複数分割した複数区間に発生する発熱量を、前記サーボモータの回転速度と制御データとに基づいて所定時間毎に求める発熱量演算部と、
     軸受を介して前記シャフトのモータ側を回転自在に支持するベアリングホルダの温度上昇を前記所定時間毎に演算する温度演算部と、
     前記複数区間の発熱量を所定期間分累積した合計発熱量と、前記シャフトのモータ側端部の温度上昇の代わりに前記ベアリングホルダの温度上昇を用いた非定常熱伝導方程式とに基づいて、複数区間の温度分布を前記所定期間毎に演算する温度分布演算部と、
     前記温度分布から前記シャフトの複数区間の熱変位量を前記所定期間毎に演算する熱変位量演算部と、
     前記複数区間の熱変位量に基づいて、前記シャフトのナット移動範囲を複数分割した複数の補正区間毎に前記制御データを夫々補正する補正量を前記所定期間毎に演算する補正量演算部と、
     を備えた工作機械の熱変位補正装置。
    In a thermal displacement correction device for a machine tool having a feed screw ball screw mechanism, a servo motor that rotationally drives a shaft into which a nut of the ball screw mechanism is screwed, and a control device that controls the servo motor based on control data.
    A speed detection device for detecting the rotational speed of the servo motor;
    A calorific value calculation unit for obtaining a calorific value generated in a plurality of sections obtained by dividing the entire length of the shaft at a predetermined time based on a rotation speed of the servo motor and control data; and
    A temperature calculation unit that calculates a temperature rise of a bearing holder that rotatably supports the motor side of the shaft via a bearing, for each predetermined time;
    Based on the total calorific value obtained by accumulating the calorific value of the plurality of sections for a predetermined period, and an unsteady heat conduction equation using the temperature rise of the bearing holder instead of the temperature rise of the motor side end of the shaft, A temperature distribution calculator that calculates the temperature distribution of the section for each predetermined period;
    A thermal displacement calculation unit that calculates the thermal displacement of the plurality of sections of the shaft from the temperature distribution for each predetermined period;
    A correction amount calculation unit that calculates a correction amount for correcting each of the control data for each of a plurality of correction sections obtained by dividing a plurality of the nut movement ranges of the shaft based on the thermal displacement amount of the plurality of sections;
    Thermal displacement correction device for machine tools equipped with
  4.  前記温度演算部は、前記サーボモータの回転速度と駆動電流値とに基づいて前記ベアリングホルダの温度上昇を演算する請求項3に記載の工作機械の熱変位補正装置。 The thermal displacement correction device for a machine tool according to claim 3, wherein the temperature calculation unit calculates a temperature rise of the bearing holder based on a rotation speed and a drive current value of the servo motor.
PCT/JP2010/064346 2009-08-28 2010-08-25 Method for thermal displacement correction in machine tool, and thermal displacement correction device WO2011024840A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201080037053.0A CN102481674B (en) 2009-08-28 2010-08-25 Method for thermal displacement correction in machine tool, and thermal displacement correction device

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2009198378A JP5387838B2 (en) 2009-08-28 2009-08-28 Thermal displacement compensation method and thermal displacement compensation device for numerically controlled machine tool
JP2009-198378 2009-08-28

Publications (1)

Publication Number Publication Date
WO2011024840A1 true WO2011024840A1 (en) 2011-03-03

Family

ID=43627940

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2010/064346 WO2011024840A1 (en) 2009-08-28 2010-08-25 Method for thermal displacement correction in machine tool, and thermal displacement correction device

Country Status (3)

Country Link
JP (1) JP5387838B2 (en)
CN (1) CN102481674B (en)
WO (1) WO2011024840A1 (en)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5910331B2 (en) * 2012-06-07 2016-04-27 株式会社ジェイテクト Positioning device
JP6582522B2 (en) * 2015-04-30 2019-10-02 ブラザー工業株式会社 Machine tool, calculation method and computer program
JP6747894B2 (en) 2016-07-08 2020-08-26 ファナック株式会社 Diagnostic service system and diagnostic method using network
JP6612704B2 (en) * 2016-09-26 2019-11-27 ファナック株式会社 Factory monitoring system, factory monitoring method, and control device
CN107065771B (en) * 2017-05-05 2019-02-01 大连理工大学 The thermal expansion error of semiclosed loop feed shaft models and compensation method
CN110045681B (en) * 2019-03-12 2020-10-23 浙江大学 External compensation method for numerical control machine tool position-related errors based on position prediction

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002018677A (en) * 2000-07-06 2002-01-22 Fanuc Ltd Thermal displacement correcting method of machine tool
JP2004042260A (en) * 1994-06-16 2004-02-12 Mori Seiki Hitech Co Ltd Thermal displacement correcting method for machine tool, and device thereof
JP2007021721A (en) * 2006-09-20 2007-02-01 Jtekt Corp Device for correcting thermal displacement of ball screw
JP2010234500A (en) * 2009-03-31 2010-10-21 Brother Ind Ltd Numerical control machine tool and thermal displacement correction method for the same

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3136218A (en) * 1955-09-26 1964-06-09 Inductosyn Corp Thermal compensation
JPS63256336A (en) * 1987-04-13 1988-10-24 Yoshiaki Kakino Method for correcting thermal displacement of ball screw in nc machine
JPH0815702B2 (en) * 1991-01-17 1996-02-21 日立精機株式会社 Method for correcting thermal displacement of ball screw in NC machine tool
JP3792266B2 (en) * 1994-06-16 2006-07-05 森精機興産株式会社 Method and apparatus for correcting thermal displacement of machine tool
JP3154946B2 (en) * 1996-11-11 2001-04-09 ファナック株式会社 Thermal displacement compensation method for machine tools
US8666534B2 (en) * 2006-03-02 2014-03-04 Mikron Agie Charmilles Ag Method and apparatus for a displacement correction for a machine tool
CN1868666A (en) * 2006-06-28 2006-11-29 四川长征机床集团有限公司 Heat distortion compensation method of digial controlled machine tool main driving system
JP2009214283A (en) * 2008-03-13 2009-09-24 Brother Ind Ltd Thermal displacement correction method of machine tool, thermal displacement correction device and program for thermal displacement correction of the same

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004042260A (en) * 1994-06-16 2004-02-12 Mori Seiki Hitech Co Ltd Thermal displacement correcting method for machine tool, and device thereof
JP2002018677A (en) * 2000-07-06 2002-01-22 Fanuc Ltd Thermal displacement correcting method of machine tool
JP2007021721A (en) * 2006-09-20 2007-02-01 Jtekt Corp Device for correcting thermal displacement of ball screw
JP2010234500A (en) * 2009-03-31 2010-10-21 Brother Ind Ltd Numerical control machine tool and thermal displacement correction method for the same

Also Published As

Publication number Publication date
CN102481674B (en) 2014-11-12
CN102481674A (en) 2012-05-30
JP5387838B2 (en) 2014-01-15
JP2011045986A (en) 2011-03-10

Similar Documents

Publication Publication Date Title
KR101074206B1 (en) Heat dislocation compensation method of machine tool, heat dislocation compensation device of machine tool and computer readable medium in which program for heat dislocation compensation is stored
WO2011024840A1 (en) Method for thermal displacement correction in machine tool, and thermal displacement correction device
US8240060B2 (en) Methods and apparatus for compensating temperature-dependent changes of positions on machine tools
JP5418272B2 (en) Thermal displacement correction method and thermal displacement correction apparatus for machine tool
WO2012053353A1 (en) System for correcting thermal displacement of machine tool
JP5673855B2 (en) Machine Tools
JP4559277B2 (en) NC machine tool thermal displacement compensation method
JP2011140098A (en) Machine displacement correction system for machine tool
WO2011024833A1 (en) Method for heat displacement correction in machine tool and heat displacement correction device
JP5206555B2 (en) Numerically controlled machine tool and thermal displacement correction method thereof
JP5224177B2 (en) Thermal displacement correction method and thermal displacement correction apparatus for machine tool
JP2011240423A (en) Machine tool
WO2011024838A1 (en) Method for thermal displacement correction in machine tool and thermal displacement correction device
JP2010082724A (en) Thermal displacement correction device and thermal displacement correction method for machine tool
JP5786436B2 (en) Numerical control apparatus and processing method
JP5334932B2 (en) Parameter setting method and parameter setting device
JP6500602B2 (en) Machine tool, calculation method and computer program
JP2010099753A (en) Pitch error correction method and pitch error correction device of machine tool
JP6582522B2 (en) Machine tool, calculation method and computer program
JP5169946B2 (en) Numerically controlled machine tool and thermal displacement correction method thereof
JP6432424B2 (en) Machine tool and calculation method
JP2005052917A (en) Method and apparatus for compensating thermal displacement of numerically controlled machine tool
JP2021160004A (en) Derivation method of correction coefficient and machine tool

Legal Events

Date Code Title Description
WWE Wipo information: entry into national phase

Ref document number: 201080037053.0

Country of ref document: CN

121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 10811889

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 10811889

Country of ref document: EP

Kind code of ref document: A1