Thermal displacement correction device and thermal displacement correction method for industrial machinery
The thermal displacement correction device uses a degenerate model and calculation units to reduce calculation load, enabling real-time correction of position errors in industrial machinery.
Patent Information
- Application Number
- JP2024012126
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2024-01-30
- Publication Date
- 2025-08-12
AI Technical Summary
Existing methods for estimating thermal displacement in industrial machinery using finite element analysis result in high calculation loads, making real-time correction of position errors challenging.
A thermal displacement correction device that utilizes a degenerate model, temperature data acquisition, and calculation units to estimate thermal displacement with reduced calculation load, including a model storage unit, temperature data acquisition unit, thermal displacement amount calculation unit, and correction value calculation unit.
Enables real-time correction of position errors caused by thermal displacement in industrial machinery by suppressing calculation load and improving estimation accuracy.
Smart Images

Figure 2025117340000001_ABST
Abstract
Description
[Technical Field]
[0001] The present disclosure relates to a thermal displacement correction device and a thermal displacement correction method for industrial machinery. [Background technology]
[0002] In the technical field related to thermal displacement compensation devices, there is known a thermal displacement compensation device such as that disclosed in Patent Document 1. In Patent Document 1, the thermal displacement compensation device estimates the amount of thermal displacement of a structure of a machine tool by analysis using the finite element method. [Prior art documents] [Patent documents]
[0003] [Patent Document 1] Patent No. 5811102 Summary of the Invention [Problem to be solved by the invention]
[0004] When thermal displacement is estimated using finite element analysis, the calculation load can be high, which can make it difficult to correct position errors in the moving parts of industrial machinery caused by thermal displacement in real time while the machinery is in operation.
[0005] The present disclosure aims to suppress the high calculation load when estimating the amount of thermal displacement and to correct position errors in the movable space of an industrial machine caused by thermal displacement in real time during operation of the industrial machine. [Means for solving the problem]
[0006] According to the present disclosure, there is provided a thermal displacement correction device for industrial machinery, comprising: a model memory unit that stores a model of the industrial machinery; a temperature data acquisition unit that acquires temperature data of the industrial machinery; a thermal displacement amount calculation unit that calculates, based on the model and the temperature data, a thermal displacement amount of the industrial machinery when a movable part of the industrial machinery moves to each of a plurality of predetermined calculation points; a thermal displacement amount map calculation unit that calculates, based on the thermal displacement amount at each of the plurality of calculation points, thermal displacement amount data of the industrial machinery when the movable part moves to an interpolation point different from the calculation point; and a correction value calculation unit that calculates a correction value for a command position of the movable part based on the thermal displacement amount data. [Effects of the Invention]
[0007] According to the present disclosure, it is possible to suppress the calculation load when estimating the amount of thermal displacement and to correct the position error of the movable space of the industrial machine caused by thermal displacement in real time during operation of the industrial machine. [Brief explanation of the drawings]
[0008] [Figure 1] FIG. 1 is a perspective view schematically showing an industrial machine according to an embodiment. [Figure 2] FIG. 2 is a side view schematically showing the industrial machine according to the embodiment. [Figure 3] FIG. 3 is a block diagram showing a part of the industrial machine according to the embodiment. [Figure 4] FIG. 4 is a flowchart showing a method for calculating a degenerate model according to the embodiment. [Figure 5] FIG. 5 is a diagram schematically showing a movable space of the movable portion according to the embodiment. [Figure 6] FIG. 6 is a diagram for explaining a three-dimensional model of an industrial machine according to the embodiment. [Figure 7] FIG. 7 is a diagram for explaining a degenerate model according to the embodiment. [Figure 8] FIG. 8 is a diagram for explaining a thermal change amount map according to the embodiment. [Figure 9]FIG. 9 is a flowchart showing a thermal displacement correcting method for an industrial machine according to the embodiment. [Figure 10] FIG. 10 is a block diagram illustrating a computer system according to an embodiment. DETAILED DESCRIPTION OF THE INVENTION
[0009] Hereinafter, embodiments will be described with reference to the drawings. The components of the embodiments described below can be combined as appropriate. In addition, some components may not be used.
[0010] In the following description, a three-dimensional Cartesian coordinate system is set, and the positional relationship of each part is described with reference to the three-dimensional Cartesian coordinate system. The direction parallel to the X axis within a predetermined plane is defined as the X-axis direction, the direction parallel to the Z axis perpendicular to the X axis within the predetermined plane is defined as the Z-axis direction, and the direction parallel to the Y axis perpendicular to the X and Z axes is defined as the Y-axis direction. Furthermore, the direction of rotation or tilt around the X axis is defined as the θX direction, the direction of rotation or tilt around the Z axis is defined as the θZ direction, and the direction of rotation or tilt around the Y axis is defined as the θY direction. The predetermined plane is the XZ plane, which is parallel to the horizontal plane in this embodiment. The Y-axis direction is the vertical direction.
[0011] [Industrial machinery] Fig. 1 is a perspective view schematically showing an industrial machine 1 according to an embodiment. Fig. 2 is a side view schematically showing the industrial machine 1 according to an embodiment. In the embodiment, the industrial machine 1 is a machining center, which is a type of machine tool controlled by an NC program.
[0012] As shown in FIGS. 1 and 2, the industrial machine 1 includes a bed 10, a column 20, a saddle 30, a rotating main shaft 40, a table 50, a turntable 60, and a temperature sensor 70.
[0013] The column 20 is movably supported on the bed 10. A pair of X-axis guide rails 11 are arranged on the upper surface of the bed 10. The X-axis guide rails 11 are arranged to extend in the X-axis direction. The pair of X-axis guide rails 11 are arranged parallel to each other. A pair of X-axis guide grooves 21 are formed on the lower surface of the column 20. The X-axis guide rails 11 are arranged inside the X-axis guide grooves 21. The column 20 is movable in the X-axis direction while being guided by the X-axis guide rails 11. The column 20 moves in the X-axis direction by an X-axis ball screw 12. The X-axis ball screw 12 is actuated by an X-axis motor 13. The X-axis motor 13 rotates the X-axis ball screw 12, causing the column 20 to move in the X-axis direction.
[0014] The saddle 30 is movably supported by the column 20. A pair of Y-axis guide rails 23 are arranged on a side surface 22 of the column 20 facing the +Z side. The Y-axis guide rails 23 are arranged to extend in the Y-axis direction. The pair of Y-axis guide rails 23 are arranged parallel to each other. A pair of Y-axis guide grooves 32 are formed on a side surface 31 of the saddle 30 facing the -Z side. The Y-axis guide rails 23 are arranged inside the Y-axis guide grooves 32. The saddle 30 is movable in the Y-axis direction while being guided by the Y-axis guide rails 23. The saddle 30 moves in the Y-axis direction by a Y-axis ball screw 24. The Y-axis ball screw 24 is actuated by a Y-axis motor 25. The Y-axis motor 25 rotates the Y-axis ball screw 24, thereby moving the saddle 30 in the Y-axis direction.
[0015] The rotating spindle 40 holds a tool 42. The rotating spindle 40 is rotatably supported by the saddle 30. The rotating spindle 40 is rotatable around a rotation axis parallel to the Z axis. A spindle motor 41 is disposed inside the saddle 30. The rotating spindle 40 is rotatable by the spindle motor 41.
[0016] The tool 42 is fixed to the tip of the rotating spindle 40 and rotates with the rotation of the rotating spindle 40. Examples of the tool 42 include a ball end mill, an end mill, a drill, and a tap.
[0017] Table 50 is movably supported on bed 10. A pair of Z-axis guide rails 14 are arranged on the upper surface of bed 10. Z-axis guide rails 14 are arranged to extend in the Z-axis direction. The pair of Z-axis guide rails 14 are arranged parallel to each other. Table 50 is movable in the Z-axis direction while being guided by Z-axis guide rails 14. Table 50 moves in the Z-axis direction by Z-axis ball screw 15. Z-axis ball screw 15 is actuated by Z-axis motor 16. Z-axis motor 16 rotates Z-axis ball screw 15, causing table 50 to move in the Z-axis direction.
[0018] The turntable 60 holds the workpiece W. The turntable 60 is rotatably supported by the table 50. The turntable 60 is rotatable about a B-axis that is parallel to the Y-axis. A B-axis motor 61 is disposed on the turntable 60. The turntable 60 is rotated by the B-axis motor 61.
[0019] The workpiece W is machined by the tool 42. The tool 42 moves in the X-axis direction and the Y-axis direction due to the movement of the column 20 and the saddle 30. The workpiece W moves in the Z-axis direction and the θY direction due to the movement of the table 50 and the rotation of the turntable 60.
[0020] The temperature sensor 70 detects the temperature of the structure of the industrial machine 1. The temperature sensor 70 is attached to any position of the structure of the industrial machine 1. The structure of the industrial machine 1 includes the bed 10, the column 20, the saddle 30, the rotating spindle 40, the table 50, and the turntable 60. The temperature sensor may also be attached to the workpiece W and the tool 42.
[0021] 3 is a block diagram showing a part of the industrial machine 1 according to the embodiment. The industrial machine 1 includes a control device 80 and a thermal displacement correction device 90.
[0022] The control device 80 controls the industrial machine 1. The control device 80 includes an operation data collection unit 81 and a motor control unit .
[0023] The operation data collection unit 81 collects operation data of the industrial machine 1. The operation data includes the heat generation amount and heat transfer coefficient of the ball screws (X-axis ball screw 12, Z-axis ball screw 15, Y-axis ball screw 24). The operation data may also include the heat generation amount and heat transfer coefficient of operating parts other than the ball screws, such as bearings that support the ball screws and bearings that support the rotating spindle 40. In an embodiment, the operation data collection unit 81 calculates the heat generation amount and heat transfer coefficient of the ball screws based on control commands for driving the motors that operate the ball screws (X-axis motor 13, Z-axis motor 16, Y-axis motor 25). Note that if a heat generation amount sensor that detects the heat generation amount of the ball screws is provided, the operation data collection unit 81 may collect detection data from the heat generation amount sensor as the heat generation amount of the ball screws.
[0024] The motor control unit 82 outputs control commands to drive the motors (X-axis motor 13, Z-axis motor 16, Y-axis motor 25, spindle motor 41, and B-axis motor 61). The motor control unit 82 controls the spindle motor 41 to rotate the tool 42. The motor control unit 82 controls the X-axis motor 13, Z-axis motor 16, Y-axis motor 25, and B-axis motor 61 to relatively move the workpiece W and the tool 42 in the X-axis direction, Z-axis direction, Y-axis direction, and rotational direction about the B-axis, thereby machining the workpiece W.
[0025] The thermal displacement compensation device 90 compensates in real time for position errors of the moving parts of the industrial machine 1 caused by thermal displacement during operation of the industrial machine 1. The moving parts of the industrial machine 1 include the workpiece W held on the turntable 60 and the tool 42 held on the rotating spindle 40 that processes the workpiece W. In other words, the moving parts of the industrial machine 1 are the turntable 60 that holds the workpiece W and the tool 42. The thermal displacement compensation device 90 eliminates deviations in the relative position between the workpiece W and the tool 42 caused by thermal displacement of the structure of the industrial machine 1. Ball screws (X-axis ball screw 12, Z-axis ball screw 15, Y-axis ball screw 24) move the moving parts. Motors (X-axis motor 13, Z-axis motor 16, Y-axis motor 25) operate the ball screws.
[0026] The thermal displacement correction device 90 includes a model storage unit 91 , a temperature data acquisition unit 92 , an operation data acquisition unit 93 , a thermal displacement amount calculation unit 94 , a thermal displacement amount map calculation unit 95 , and a correction value calculation unit 96 .
[0027] The model storage unit 91 stores a model of the industrial machine 1. In the embodiment, the model storage unit 91 stores a degenerate model of the industrial machine 1 as the model of the industrial machine 1. The degenerate model is a model created by reducing the dimensions (degeneration) while maintaining the essential behavior of a three-dimensional model (prediction model) of the industrial machine 1. By estimating the thermal displacement of the industrial machine 1 based on the degenerate model, the calculation load when estimating the thermal displacement is suppressed from increasing, and the analysis time and data volume are reduced. The degenerate model is created in advance based on a three-dimensional model including a heat transfer model and a structural model of the industrial machine 1, and is stored in the model storage unit 91.
[0028] The temperature data acquisition unit 92 acquires temperature data of the industrial machine 1. The temperature data of the industrial machine 1 is temperature data of the structures of the industrial machine 1. The temperature data of the industrial machine 1 includes detection data of the temperature sensor 70. The temperature data acquisition unit 92 acquires the detection data of the temperature sensor 70 as the temperature data of the industrial machine 1. Furthermore, if temperature sensors are provided to detect the temperatures of operating parts such as ball screws (X-axis ball screw 12, Z-axis ball screw 15, Y-axis ball screw 24) and spindle motor 41, the temperature data acquisition unit 92 may collect the detection data of the temperature sensors as the ball screw temperature and spindle temperature instead of the operation data collection unit 81. Furthermore, if temperature sensors are provided in the workpiece W and the tool 42, the temperature data acquisition unit 92 may collect the detection data of the temperature sensors as the workpiece and tool temperatures.
[0029] The operation data acquiring unit 93 acquires operation data of the industrial machine 1. As described above, the operation data of the industrial machine 1 includes the heat generation amount and heat transfer coefficient related to operating parts such as the ball screw and the rotating main shaft. The operation data acquiring unit 93 acquires the operation data of the industrial machine 1 from the operation data collecting unit 81.
[0030] The thermal displacement amount calculation unit 94 calculates the amount of thermal displacement of the structure of the industrial machinery 1 when the moving part of the industrial machinery 1 moves to each of the plurality of predetermined calculation points 100, based on the degenerate model stored in the model storage unit 91 and the temperature data acquired by the temperature data acquisition unit 92. In the embodiment, the thermal displacement amount calculation unit 94 calculates the amount of thermal displacement of the structure of the industrial machinery 1 when the moving part of the industrial machinery 1 moves to each of the plurality of calculation points 100, based on the degenerate model stored in the model storage unit 91, the temperature data acquired by the temperature data acquisition unit 92, and the operation data acquired by the operation data acquisition unit 93.
[0031] The thermal change amount map calculation unit 95 calculates thermal change amount data indicating the amount of thermal change of the structure of the industrial machine 1 when the movable part moves to an interpolation point 200 different from the calculation point 100, based on the amount of thermal change of the structure of the industrial machine 1 at each of the plurality of calculation points 100 calculated by the thermal change amount calculation unit 94. The thermal change amount map calculation unit 95 calculates the thermal change amount data by three-dimensionally interpolating the amount of thermal change of the structure of the industrial machine 1 at each of the plurality of calculation points 100. In other words, the thermal change amount map calculation unit 95 can calculate in real time the amount of thermal change of the structure of the industrial machine 1 when the tool 42 moves to an interpolation point 200 different from the calculation point 100, based on the amount of thermal change of the structure of the industrial machine 1 at each of the plurality of calculation points 100 calculated by the thermal change amount calculation unit 94.
[0032] In the embodiment, the thermal change amount data is a three-dimensional map showing the amount of thermal change. In the following description, the thermal change amount data will be referred to as a thermal change amount map as appropriate. Note that the thermal change amount data does not have to be a three-dimensional map, and may be, for example, table data or a formulated mathematical model.
[0033] The correction value calculation unit 96 calculates a correction value for the commanded position of the movable part based on the thermal change amount map calculated by the thermal change amount map calculation unit 95. The correction value calculation unit 96 calculates the correction value based on the difference between the commanded position of the movable part by the NC program and the calculated position of the movable part calculated based on the thermal change amount map.
[0034] [Calculation method for reduced model] Next, a method for calculating a reduced model will be described with reference to Fig. 4. Fig. 4 is a flowchart showing a method for calculating a reduced model according to an embodiment.
[0035] A plurality of calculation points 100 are set in the movable space of the movable part (step SA1).
[0036] FIG. 5 is a diagram schematically illustrating a movable space 43 of the movable part according to the embodiment. As described above, in the embodiment, the movable part of the industrial machine 1 includes the workpiece W and the tool 42. The workpiece W and the tool 42 move relatively in the X-axis direction, the Z-axis direction, the Y-axis direction, and a rotational direction about the B-axis. The movable part moves in a predetermined movable space 43. The movable space 43 indicates the movable range of the movable part. In the example shown in FIG. 5, the movable space 43 is rectangular parallelepiped-shaped.
[0037] A plurality of calculation points 100 are defined in the movable space 43. The plurality of calculation points 100 are defined at intervals from one another. The number of calculation points 100 is arbitrary. The greater the number of calculation points 100, the more accurately the thermal displacement can be calculated, but the greater the calculation load. In this embodiment, seven calculation points 100 are defined in the movable space 43.
[0038] At least one calculation point 100 among the multiple calculation points 100 is defined at an end of the movable space 43. In the embodiment, the calculation points 100 are defined at the center of the movable space 43, the end on the +X side, the end on the -X side, the end on the +Y side, the end on the -Y side, the end on the +Z side, and the end on the -Z side.
[0039] Next, a three-dimensional model and mesh of the industrial machine 1 when the movable part is placed at each of the seven calculation points 100 are created (step SA2).
[0040] FIG. 6 is a diagram illustrating a three-dimensional model 300 of industrial machinery 1 according to an embodiment. As shown in FIG. 6, the three-dimensional model 300 of industrial machinery 1 includes a heat transfer model 301 of industrial machinery 1 and a structural model 302 of industrial machinery 1. In the example shown in FIG. 6, the three-dimensional model 300 of industrial machinery 1 is a three-dimensional model of the structure of industrial machinery 1. The heat transfer model 301 of industrial machinery 1 is a heat transfer model of the structure of industrial machinery 1. The structural model 302 of industrial machinery 1 is a structural model of the structure of industrial machinery 1. As described above, the structure of industrial machinery 1 includes the bed 10, column 20, saddle 30, rotating spindle 40, table 50, and turntable 60. The workpiece W and the tool 42 may also be included in the structural model.
[0041] 6, three-dimensional model 300 has a heat conduction equation as heat transfer model 301 and a motion equation as structural model 302. In the analysis of three-dimensional model 300 by the finite element method, the heat conduction equation and the motion equation are calculated, thereby calculating temperature, stress, and elastic strain.
[0042] After the three-dimensional model 300 and the mesh are created, the three-dimensional model 300 is reduced to create a reduced model of the industrial machine 1 (step SA3). A plurality of reduced models are created in which the movable part is disposed at each of a plurality of calculation points 100. If there are seven calculation points 100, a first reduced model is created when the movable part is disposed at the first calculation point 100, a second reduced model is created when the movable part is disposed at the second calculation point 100, and similarly, third to seventh reduced models are created when the movable part is disposed at each of the third to seventh calculation points 100. For example, first to seventh reduced models may be created when the turntable 60 and the tool 42, which are the movable parts, move and the tip of the tool 42 is disposed at each of the first to seventh calculation points 100.
[0043] The multiple degenerate models created in step SA3 are stored in the model storage unit 91 (step SA4).
[0044] [Thermal displacement calculation processing] 7 is a diagram for explaining a degenerate model according to an embodiment. As shown in FIG. 7, the degenerate model is a one-dimensional model. The degenerate model is expressed by a linear expression.
[0045] Based on the degenerate model, the temperature data, and the operation data, the thermal displacement amount calculation unit 94 calculates the thermal displacement amount of the structure of the industrial machinery 1 when the movable part of the industrial machinery 1 moves to each of the multiple calculation points 100. As shown in Fig. 7, by inputting the temperature data and the operation data into the degenerate model, the thermal displacement amount and average temperature of the structure of the industrial machinery 1 are output.
[0046] For example, if there are seven calculation points and first to seventh degenerate models are created, the temperature data and operation data are input into the first degenerate model to calculate the amount of thermal displacement of the structure of the industrial machinery 1 when the movable part moves to the first calculation point 100. The temperature data and operation data are input into the second degenerate model to calculate the amount of thermal displacement of the structure of the industrial machinery 1 when the movable part moves to the second calculation point 100. Similarly, the temperature data and operation data are input into each of the third to seventh degenerate models to calculate the amount of thermal displacement of the structure of the industrial machinery 1 when the movable part moves to each of the third to seventh calculation points 100.
[0047] The process of calculating the amount of thermal displacement of the structure of the industrial machinery 1 when the movable part moves may be a parallel process in which the amount of thermal displacement when the movable part moves to each of the first to seventh calculation points 100 is calculated simultaneously, or a serial process in which the amounts are calculated sequentially.
[0048] [Thermal displacement map processing] The thermal displacement amount map calculation unit 95 calculates a thermal displacement amount map of the structure of the industrial machinery 1 when the movable part moves to an interpolation point 200 different from the calculation point 100, based on the thermal displacement amount of the structure of the industrial machinery 1 at each of the multiple calculation points 100. As shown in FIG. 5, the interpolation point 200 is defined in the movable space 43. The interpolation points 200 include positions other than the calculation points 100 in the movable space 43. Although FIG. 5 simply illustrates 19 interpolation points 200, the number of interpolation points 200 is actually large.
[0049] The thermal displacement map indicates the amount of thermal displacement of the structure of the industrial machinery 1 when the movable part moves in the movable space 43. The thermal displacement map indicates the amount of thermal displacement of each of the structures of the industrial machinery 1 when the movable part is positioned at each of the multiple interpolation points 200.
[0050] Fig. 8 is a diagram for explaining a thermal displacement map according to the embodiment. In Fig. 8, the horizontal axis represents the position of the movable space 43, and the vertical axis represents the amount of thermal displacement of the structure of the industrial machine 1. Note that Fig. 8 shows the position of the movable space 43 two-dimensionally, but in reality, it is a position in a three-dimensional space.
[0051] The thermal displacement amount map calculation unit 95 calculates a thermal displacement amount map by three-dimensionally interpolating the amount of thermal displacement of the structure of the industrial machinery 1 at each of the multiple calculation points 100. As an example, Fig. 8 shows the amount of thermal displacement of the structure of the industrial machinery 1 when the movable part moves to each of the first to fifth calculation points 100. The thermal displacement amount map calculation unit 95 performs three-dimensional interpolation from the amount of thermal displacement of the structure of the industrial machinery 1 at each of the multiple calculation points 100 to calculate a thermal displacement amount map that indicates the amount of thermal displacement of the structure of the industrial machinery 1 when the movable part is positioned at each of the multiple interpolation points 200.
[0052] The amount of thermal displacement of the structure of the industrial machine 1 may be calculated for each of the meshes created in step SA2 of Fig. 4. For example, the amount of thermal displacement may be displayed as a contour map on the mesh of the structure.
[0053] [Thermal displacement compensation method] FIG. 9 is a flowchart showing a thermal displacement correcting method for the industrial machine 1 according to the embodiment.
[0054] When the operation of the industrial machine 1 starts, the temperature data acquisition unit 92 acquires the temperature data of the industrial machine 1, and the operation data acquisition unit 93 acquires the operation data of the industrial machine 1 (step SB1).
[0055] The thermal change amount calculation unit 94 inputs the temperature data and operation data acquired in step SB1 to each of the multiple degenerate models stored in the model storage unit 91. If first to seventh degenerate models are stored in the model storage unit 91, the thermal change amount calculation unit 94 inputs the temperature data and operation data to each of the first to seventh degenerate models (step SB2).
[0056] The thermal change amount calculation unit 94 inputs the temperature data and operation data into each of the multiple degenerate models, thereby calculating the thermal change amount of the structure of the industrial machine 1 at each of the multiple calculation points 100 (step SB3).
[0057] Based on the amount of thermal displacement of the structure of the industrial machinery 1 at each of the plurality of calculation points 100 calculated in step SB3, the thermal displacement amount map calculation unit 95 calculates a thermal displacement amount map indicating the amount of thermal displacement of the structure of the industrial machinery 1 when the movable part moves to an interpolation point 200 different from the calculation point 100. The thermal displacement amount map calculation unit 95 three-dimensionally interpolates the amount of thermal displacement of the structure of the industrial machinery 1 at each of the plurality of calculation points 100 to calculate the thermal displacement amount map (step SB4).
[0058] The correction value calculation unit 96 calculates a correction value for the commanded position of the movable part based on the thermal change amount map calculated by the thermal change amount map calculation unit 95. The correction value calculation unit 96 calculates the correction value based on the difference between the commanded position of the movable part by the NC program and the calculated position of the movable part calculated based on the thermal change amount map (step SB5).
[0059] The motor control unit 82 outputs a control command to drive the motors (X-axis motor 13, Z-axis motor 16, Y-axis motor 25, spindle motor 41, and B-axis motor 61) based on the correction value calculated in step SB5. That is, the motor control unit 82 outputs a control command to eliminate the deviation in the relative position between the workpiece W and the tool 42 caused by thermal displacement of the structure of the industrial machine 1 (step SB6).
[0060] [Computer System] FIG. 10 is a block diagram showing a computer system 1000 according to an embodiment. The control device 80 and the thermal displacement correction device 90 described above each include the computer system 1000. The computer system 1000 includes a processor 1001 such as a central processing unit (CPU), a main memory 1002 including a nonvolatile memory such as a read-only memory (ROM) and a volatile memory such as a random access memory (RAM), a storage device 1003, and an interface 1004 including an input / output circuit. The functions of the control device 80 and the thermal displacement correction device 90 described above are stored in the storage device 1003 as computer programs. The processor 1001 reads the computer programs from the storage device 1003, loads them into the main memory 1002, and executes the above-described processes according to the programs. The computer programs may be distributed to the computer system 1000 via a network.
[0061] According to the above-described embodiment, the computer program or computer system 1000 can perform the following operations: create a model of the industrial machine 1; acquire temperature data of the industrial machine 1; calculate, based on the model and the temperature data, the amount of thermal change of the industrial machine 1 when a movable part of the industrial machine 1 moves to each of a plurality of predetermined calculation points 100; calculate, based on the amount of thermal change at each of the plurality of calculation points 100, thermal change amount data of the industrial machine 1 when the movable part moves to an interpolation point 200 different from the calculation point 100; and calculate a correction value for the command position of the movable part based on the thermal change amount data.
[0062] The computer program or computer system 1000 may be implemented in a CNC of the industrial machine 1. The computer program or computer system 1000 may be implemented by an industrial PC or an edge computer. The computer program or computer system 1000 may be implemented via a network such as the cloud.
[0063] [effect] As described above, according to the embodiment, the amount of thermal displacement of the industrial machine 1 is estimated using a degenerate model of the industrial machine 1, thereby preventing the calculation load from increasing when estimating the amount of thermal displacement. Because the calculation load is prevented from increasing, it is possible to correct in real time the position error in the movable space of the industrial machine 1 caused by thermal displacement during operation of the industrial machine 1.
[0064] A thermal displacement map showing the overall thermal displacement when the movable part moves through the movable space 43 is calculated based on a small number of calculation points 100, which prevents the calculation load from becoming too high and corrects the position error in the movable space of the industrial machinery 1 caused by thermal displacement in real time.
[0065] By defining at least one calculation point 100 at the end of the movable space 43, the accuracy of estimating the amount of thermal change using the thermal change amount map is improved.
[0066] Since the calculation load can be prevented from increasing, it is also possible to improve the accuracy of estimating the amount of thermal displacement by increasing the number of temperature sensors used for estimating the thermal displacement.
[0067] [Another embodiment] In the above-described embodiment, the model of the industrial machinery 1 is a degenerate model created based on a three-dimensional model including a heat transfer model and a structural model of the industrial machinery 1. The model of the industrial machinery 1 may be a one-dimensional model of the industrial machinery (1DCAE model). The model of the industrial machinery 1 may also be a model in which the dimension of the three-dimensional model is reduced by other methods such as a machine learning model. The degenerate model may be, for example, a mathematical model or an experimental model. The model of the industrial machinery 1 may also be a three-dimensional FE model of the industrial machinery 1.
[0068] In the above-described embodiment, the industrial machine 1 does not have to be a machine tool, and may be, for example, a robot manipulator. [Explanation of symbols]
[0069] 1...industrial machine, 10...bed, 11...X-axis guide rail, 12...X-axis ball screw, 13...X-axis motor, 14...Z-axis guide rail, 15...Z-axis ball screw, 16...Z-axis motor, 20...column, 21...X-axis guide groove, 22...side surface, 23...Y-axis guide rail, 24...Y-axis ball screw, 25...Y-axis motor, 30...saddle, 31...side surface, 32...Y-axis guide groove, 40...rotating spindle, 41...spindle motor, 42...tool, 43...moving space, 50...table, 60...turntable, 61...B-axis motor, 70...temperature sensor 80...control device, 81...operation data collection unit, 82...motor control unit, 90...thermal displacement correction device, 91...model memory unit, 92...temperature data acquisition unit, 93...operation data acquisition unit, 94...thermal displacement amount calculation unit, 95...thermal displacement amount map calculation unit, 96...correction value calculation unit, 100...calculation point, 200...interpolation point, 300...three-dimensional model, 301...heat transfer model, 302...structural model, 1000...computer system, 1001...processor, 1002...main memory, 1003...storage, 1004...interface.
Claims
1. a model storage unit that stores a model of the industrial machine; a temperature data acquisition unit that acquires temperature data of the industrial machine; a thermal displacement amount calculation unit that calculates a thermal displacement amount of the industrial machine when a movable part of the industrial machine moves to each of a plurality of predetermined calculation points based on the model and the temperature data; a thermal displacement amount map calculation unit that calculates thermal displacement amount data of the industrial machine when the movable part moves to an interpolation point different from the calculation point, based on the thermal displacement amount at each of the plurality of calculation points; a correction value calculation unit that calculates a correction value for a command position of the movable part based on the thermal displacement amount data, Thermal displacement compensation device for industrial machinery.
2. The movable portion moves in a predetermined movable space, the interpolation point is defined in the movable space; The thermal displacement amount data indicates a thermal displacement amount of the industrial machine when the movable part moves in the movable space. The thermal displacement correction device for industrial machinery according to claim 1.
3. At least one of the calculation points is defined at an end of the movable space. The thermal displacement correction device for industrial machinery according to claim 2.
4. the thermal change amount map calculation unit calculates the thermal change amount data by three-dimensionally interpolating the thermal change amounts at each of the plurality of calculation points. The thermal displacement correction device for industrial machinery according to claim 1.
5. the industrial machine includes a ball screw that moves the movable part and a motor that operates the ball screw; an operation data acquisition unit that acquires operation data of the industrial machine including a heat generation amount and a heat transfer coefficient of the ball screw; the thermal change amount calculation unit calculates the thermal change amount based on the model, the temperature data, and the operation data. The thermal displacement correction device for industrial machinery according to claim 1.
6. the industrial machine is a machine tool controlled by an NC program, the movable part includes a workpiece and a tool of the machine tool that processes the workpiece, the correction value calculation unit calculates the correction value based on a difference between a command position of the movable part according to the NC program and a calculated position of the movable part calculated based on the thermal displacement amount data. The thermal displacement correction device for industrial machinery according to claim 1.
7. the model is a degenerate model created based on a three-dimensional model including a heat transfer model and a structural model of the industrial machine. The thermal displacement correction device for industrial machinery according to claim 1.
8. the model is a one-dimensional model of the industrial machine; The thermal displacement correction device for industrial machinery according to claim 1.
9. correcting position errors of the moving parts of the industrial machine in real time; The thermal displacement correction device for industrial machinery according to claim 1.
10. Creating a model of an industrial machine; acquiring temperature data of the industrial machine; calculating, based on the model and the temperature data, a thermal displacement amount of the industrial machinery when a movable part of the industrial machinery moves to each of a plurality of predetermined calculation points; calculating, based on the thermal displacement amounts at each of the plurality of calculation points, thermal displacement amount data of the industrial machine when the movable part moves to an interpolation point different from the calculation point; calculating a correction value for a command position of the movable part based on the thermal displacement amount data; A method for compensating for thermal displacement in industrial machinery.
Citation Information
Patent Citations
Manufacture of plywood
JP1983011102A