Machine learning device, control system, and machine learning method
11680916 · 2023-06-20
Assignee
Inventors
Cpc classification
G06N3/006
PHYSICS
G05B19/404
PHYSICS
G01N25/20
PHYSICS
G05B2219/49209
PHYSICS
H02P29/60
ELECTRICITY
G05B2219/49206
PHYSICS
International classification
G01N25/20
PHYSICS
G05B19/404
PHYSICS
Abstract
A machine learning device includes a virtual temperature model calculating unit having an equation including a first coefficient for determining a heat generation amount and a second coefficient for determining a heat dissipation amount. The virtual temperature model calculating unit is configured to calculate virtual temperature data by estimating a temperature of a specific portion of a machine by the equation using heat generation factor data. A thermal displacement model calculating unit is configured to calculate, using the calculated virtual temperature data and actual temperature data acquired from at least one temperature sensor mounted to a portion other than the specific portion, an error between thermal displacement estimated by the equation and actually measured thermal displacement, in which the virtual temperature model calculating unit performs machine learning to search for the first coefficient and the second efficient so that the error is minimized.
Claims
1. A machine learning device for calculating an optimized virtual temperature calculation equation including a first coefficient for determining a heat generation amount and a second coefficient for determining a heat dissipation amount in order to estimate a temperature of a specific portion of a machine based on heat generation factor data of the machine having a thermally expandable machine element, the machine learning device comprising: a memory configured to store a program; and a processor configured to execute the program and control the machine learning device to: acquire actual temperature data within a predetermined period from at least one temperature sensor mounted to a portion other than the specific portion of the machine; acquire, from the machine, heat generation factor data including any of a driving current of a motor, a rotation speed of a spindle of the machine, load of the motor, temperature of the motor, and an atmospheric temperature within a predetermined period; randomly set the first coefficient for determining the heat generation amount and the second coefficient for determining the heat dissipation amount of the specific portion of the machine, and use the heat generation factor data to acquire virtual temperature data within the predetermined period of the specific portion of the machine calculated by the virtual temperature calculation equation including the first coefficient and the second coefficient; acquire an actually measured value of a thermal displacement amount within the predetermined period of the specific portion of the machine; define the actual temperature data acquired, the heat generation factor data acquired, and the virtual temperature data acquired as input data, define the actually measured value of the thermal displacement amount acquired as a label, and store the input data and the label as training data in association with each other; calculate a thermal displacement estimation amount calculation equation optimized by performing machine learning and including a third coefficient based on an error between an estimated value of a thermal displacement amount of the specific portion of the machine calculated by substituting the input data stored as the training data in the thermal displacement estimation amount calculation equation including the third coefficient, and the actually measured value of the thermal displacement amount of the specific portion of the machine stored as the label; and calculate a virtual temperature calculation equation optimized by performing machine learning and including the first coefficient and the second coefficient to search for the first coefficient and the second coefficient based on an error between the thermal displacement estimation value of the specific portion calculated by the actual temperature data and the virtual temperature data obtained by the virtual temperature calculation equation, and the actually measured thermal displacement of the specific portion.
2. The machine learning device according to claim 1, wherein the first coefficient is a coefficient for determining a heat generation amount according to heat conduction from a motor that drives the machine and/or a coefficient for determining a heat generation amount according to bearing friction, and the second coefficient is a coefficient for determining a heat dissipation amount according to heat transfer from the specific portion of the machine to a fluid therearound.
3. The machine learning device according to claim 1, wherein the specific portion of the machine is a spindle of a machine tool.
4. The machine learning device according to claim 1, wherein the specific portion of the machine is a screw axis of a ball screw of the machine tool.
5. A machine learning device for calculating an optimized virtual temperature calculation equation including a first coefficient for determining a heat generation amount and a second coefficient for determining a heat dissipation amount in order to estimate a temperature of a specific portion of a machine based on heat generation factor data of the machine having a thermally expandable machine element, the machine learning device comprising: a memory configured to store a program; and a processor configured to execute the program and control the machine learning device to: acquire actual temperature data within a predetermined period from at least one temperature sensor mounted to the specific portion of the machine; acquire, from the machine, heat generation factor data including any of a driving current of a motor, a rotation speed of a spindle of the machine, load of the motor, temperature of the motor, and an atmospheric temperature within the predetermined period; randomly set the first coefficient for determining the heat generation amount and the second coefficient for determining the heat dissipation amount of the specific portion of the machine and based on an error between the virtual temperature data of the specific portion of the machine obtained by substituting the heat generation factor in the virtual temperature calculation equation and the actual temperature data acquired from the at least one temperature sensor mounted to the specific portion, calculate a virtual temperature calculation equation optimized by machine learning to search for the first coefficient and the second coefficient.
6. The machine learning device according to claim 5, wherein the processor is further configured to control the machine learning device to: acquire actual temperature data within the predetermined period from at least one temperature sensor mounted to a portion other than the specific portion of the machine; acquire virtual temperature data within the predetermined period of the specific portion of the machine calculated using the heat generation factor data by the optimized virtual temperature calculation equation calculated; acquire an actually measured value of a thermal displacement amount within the predetermined period of the specific portion of the machine; define actual temperature data of a portion other than the specific portion acquired and virtual temperature data acquired as input data, define actually measured value of the thermal displacement amount acquired as a label, and store the input data and the label as training data in association with each other, calculate a thermal displacement estimation amount calculation equation optimized by performing machine learning and including a third coefficient based on an error between an estimated value of a thermal displacement amount of the specific portion of the machine calculated by substituting the input data stored as the training data in the thermal displacement estimation amount calculation equation including the third coefficient, and the actually measured value of the thermal displacement amount of the specific portion of the machine stored as the label.
7. The machine learning device according to claim 5, wherein the specific portion of the machine is a turret of a machine tool.
8. A control system, comprising: the machine learning device according to claim 1; a memory configured to store a virtual temperature calculation equation and a thermal displacement estimation amount calculation equation outputted from the machine learning device, and a processor configured to calculate, using virtual temperature data calculated from the virtual temperature calculation equation and actual temperature data acquired from at least one temperature sensor mounted to a portion other than the specific portion, an estimated value of thermal displacement by the thermal displacement estimation amount calculation equation, and calculate a thermal displacement compensation amount based on the estimated value of the thermal displacement; and a numerical controller configured to compensate a control command outputted to a motor control unit that controls a motor based on the thermal displacement compensation amount.
9. A machine learning method executed by a machine learning device including a memory configured to store a program and a processor for calculating an optimized virtual temperature calculation equation including a first coefficient for determining a heat generation amount and a second coefficient for determining a heat dissipation amount in order to estimate a temperature of a specific portion of a machine based on heat generation factor data of the machine having a thermally expandable machine element, the processor executing the program to perform operations of the machine learning method comprising: acquiring actual temperature data within a predetermined period from at least one temperature sensor mounted to a portion other than the specific portion of the machine; acquiring, from the machine, heat generation factor data including any of a driving current of a motor, a rotation speed of a spindle of the machine, load of the motor, temperature of the motor, and an atmospheric temperature within the predetermined period; randomly setting the first coefficient for determining the heat generation amount and the second coefficient for determining the heat dissipation amount of the specific portion of the machine, and using the heat generation factor data to acquire virtual temperature data within the predetermined period of the specific portion of the machine calculated by the virtual temperature calculation equation including the first coefficient and the second coefficient; acquiring an actually measured value of a thermal displacement amount within the predetermined period of the specific portion of the machine; defining the actual temperature data acquired, the heat generation factor data acquired, and the virtual temperature data acquired as input data, defining the actually measured value of the thermal displacement amount acquired as a label, and storing the input data and the label as training data in association with each other; calculating a thermal displacement estimation amount calculation equation optimized by performing machine learning and including a third coefficient based on an error between an estimated value of a thermal displacement amount of the specific portion of the machine calculated by substituting the input data stored as the training data in the thermal displacement estimation amount calculation equation including the third coefficient, and the actually measured value of the thermal displacement amount of the specific portion of the machine stored as the label; calculating a virtual temperature calculation equation optimized by performing machine learning and including the first coefficient and the second coefficient to search for the first coefficient and the second coefficient based on an error between the thermal displacement estimation value of the specific portion calculated by the actual temperature data and the virtual temperature data obtained by the virtual temperature calculation equation, and the actually measured thermal displacement of the specific portion; and controlling the machine learning method based on the calculated virtual temperature calculation equation.
10. A machine learning method executed by a machine learning device including a memory configured to store a program and a processor for calculating an optimized virtual temperature calculation equation including a first coefficient for determining a heat generation amount and a second coefficient for determining a heat dissipation amount in order to estimate a temperature of a specific portion of a machine based on heat generation factor data of the machine having a thermally expandable machine element, the processor executing the program to perform operations of the machine learning method comprising: acquiring actual temperature data within a predetermined period from at least one temperature sensor mounted to the specific portion of the machine; acquiring, from the machine, heat generation factor data including any of a driving current of a motor, a rotation speed of a spindle of the machine, load of the motor, temperature of the motor, and an atmospheric temperature within the predetermined period; randomly setting the first coefficient for determining the heat generation amount and the second coefficient for determining the heat dissipation amount of the specific portion of the machine; calculating a virtual temperature calculation equation optimized by machine learning to search for the first coefficient and the second coefficient based on an error between the virtual temperature data of the specific portion of the machine obtained by substituting the heat generation factor in the virtual temperature calculation equation and the actual temperature data acquired from the at least one temperature sensor mounted to the specific portion; and controlling the machine learning method based on the calculated virtual temperature calculation equation.
11. A control system, comprising: the machine learning device according to claim 6; a memory configured to store a virtual temperature calculation equation and a thermal displacement estimation amount calculation equation outputted from the machine learning device, and a processor configured to calculate, using virtual temperature data calculated from the virtual temperature calculation equation and actual temperature data acquired from at least one temperature sensor mounted to a portion other than the specific portion, an estimated value of thermal displacement by the thermal displacement estimation amount calculation equation, and calculate a thermal displacement compensation amount based on the estimated value of the thermal displacement; and a numerical controller configured to compensate a control command outputted to a motor control unit that controls a motor based on the thermal displacement compensation amount.
Description
BRIEF DESCRIPTION OF THE DRAWINGS
(1)
(2)
(3)
(4)
(5)
(6)
(7)
(8)
(9)
(10)
(11)
(12)
(13)
(14)
DETAILED DESCRIPTION OF THE INVENTION
(15) Hereinafter, embodiments of the present disclosure will be described in detail with reference to the accompanying drawings.
First Embodiment
(16) First, a control system including a machine learning device of the present disclosure will be described.
(17) As shown in
(18) The control system 10 may be configured as one device including the numerical control unit 100, the thermal displacement compensating unit 200, the machine learning unit 300, and the motor control unit 400. However, the control system 10 may configure the numerical control unit 100, the thermal displacement compensating unit 200, the machine learning unit 300, and the motor control unit 400 as individual devices, and connect them to each other by a network. It should be noted that, even when the numerical control unit 100, the thermal displacement compensating unit 200, the machine learning unit 300, and the motor control unit 400 are configured as one device, they may be referred to as a numerical control device, a thermal displacement compensating device, a machine learning device, and a motor control device. The thermal displacement model calculating unit 310 and the virtual temperature model calculating unit 320 may be separated and provided as a machine learning unit, respectively.
(19) The motor controlled by the motor control unit 400 is provided, for example, as part of a machine such as a machine tool, a robot, and an industrial machine. In
(20) As shown in
(21) As shown in
(22) The temperature data storage unit 202 stores the virtual temperature (estimated temperature), and stores the temperature data outputted from the machine tool 500. The temperature data are actual temperature data that are actually measured using temperature sensors at portions other than the spindle.
(23) The thermal displacement calculating unit 203 receives and stores the thermal displacement model from the thermal displacement model calculating unit 310 of the machine learning unit 300 after machine learning. The thermal displacement calculating unit 203 reads the temperature data and the virtual temperature from the temperature data storage unit 202 during operation of the control system 10, and calculates the thermal displacement estimation amount according to the temperature data including the virtual temperature and the thermal displacement model.
(24) The compensation amount calculating unit 204 outputs the thermal displacement estimation amount as a compensation amount of the thermal displacement to the numerical control unit 100.
(25) As shown in
Machine Learning Unit 300
(26) The machine learning unit 300 includes a thermal displacement model calculating unit 310 and a virtual temperature model calculating unit 320. The virtual temperature model calculating unit 320 learns the coefficient of a virtual spindle temperature calculation equation which is a virtual temperature model for calculating a virtual temperature (virtual spindle temperature) of a spindle in the machine tool 500 by reinforcement learning. The spindle becomes a specific part, and the virtual spindle temperature calculation equation becomes a virtual temperature calculation equation. Furthermore, the thermal displacement model calculating unit 310 of the machine learning unit 300 learns the coefficient of the thermal displacement estimation amount calculation equation which becomes a thermal displacement model for calculating an estimation amount (thermal displacement estimation amount) of the thermal displacement in the machine tool 500 by supervised learning.
(27) More specifically, the thermal displacement model calculating unit 310 estimates the thermal displacement by the thermal displacement estimation amount calculation equation using the virtual spindle temperature outputted from the virtual temperature model calculating unit 320 and the actually measured temperature of portions other than the spindle (for example, the actually measured temperature of the locations denoted by the black circles of the mount 540 and the column 550 shown in
(28) Hereinafter, the configuration of the thermal displacement model calculating unit 310 and the virtual temperature model calculating unit 320 will be described with reference to
(29) First, the virtual temperature model calculating unit 320 will be described below. The virtual temperature model calculating unit 320 includes the heat generation factor data acquiring unit 321, an error acquiring unit 322, a storage unit 323, a learning unit 324, and a virtual spindle temperature calculating unit 325.
(30) The heat generation factor data acquiring unit 321 acquires heat generation factor data from the machine tool 500. Herein, the heat generation factor data refers to a driving current of the motor 510, the rotation velocity of the spindle of the machine tool 500, the load of the motor 510, the motor temperature, the atmosphere temperature, and the like.
(31) The error acquiring unit 322 acquires error that is a difference between an estimated value of the thermal displacement amount and an actually measured value of the thermal displacement amount from the error calculating unit 316 of the thermal displacement model calculating unit 310 to be described later. The error outputted from the thermal displacement model calculating unit 310 will be described in the explanation of the thermal displacement model calculating unit 310.
(32) In the storage unit 323, the heat generation factor data acquired by the heat generation factor data acquiring unit 321 and the error acquired by the error acquiring unit 322 are stored in association with each other.
(33) The learning unit 324 reads the heat generation factor data and the error from the storage unit 323, and performs learning of the coefficients A, B, C, and D of the virtual spindle temperature calculation equation based on the heat generation factor data that has been read so that the error is minimized, thereby setting the virtual spindle temperature calculation equation for calculating the virtual spindle temperature based on the heat generation factor data. The virtual spindle temperature θ.sub.V(t.sub.i) at a certain time t.sub.i is expressed by Equation 1.
θ.sub.V(t.sub.i)=θ.sub.V(t.sub.i−1)+T.sub.S×Q′(t.sub.i−1)−T.sub.S×A×{θ.sub.V(t.sub.i−1)−θ.sub.r(t.sub.i−1)} [Math. 1]
T.sub.S in Equation 1 is the calculation period of the virtual spindle temperature, Q′ is an amount of heat generation, A is a coefficient, and θ.sub.r(t.sub.i−1) is the ambient temperature at the previous time t.sub.i−1.
(34) The calorific value Q′ is expressed by Equation 2 below.
Q′(t.sub.i−1)=B×{θ.sub.M(t.sub.i−1)−θ.sub.V(t.sub.i−1)}+Σ.sub.t′=0.sup.T.sup.
B in Equation 2 is the coefficient of heat conduction of the motor, C and D are the coefficients of bearing friction that becomes mechanical loss, θ.sub.M(t.sub.i−1) is a motor temperature, and S(t.sub.i−1−t′) is the spindle rotation velocity. The initial values of the coefficients A, B, C, and D are set in advance and modified by reinforcement learning to search for the coefficients A, B, C, and D. Coefficient A is a second coefficient for determining the amount of heat dissipation, and the coefficients B, C, and D are each a coefficient for determining the calorific value. As shown in
(35) The virtual spindle temperature calculating unit 325 calculates the virtual spindle temperature from the heat generation factor data using the virtual spindle temperature calculation equations expressed by Equations 1 and 2 set by the learning unit 324.
Example of Reinforcement Learning
(36) Hereinafter, reinforcement learning will be described below; however, reinforcement learning is already known. For example, the detailed description is provided in Japanese Unexamined Patent Application Publication Nos. 2018-152012, 2019-021024, 2019-021235, etc. Therefore, the following explanation will describe the outline of reinforcement learning.
(37) The basic mechanism of reinforcement learning is that an agent observes the state of an environment and selects a certain action. The environment changes according to the action. As the environment changes, something is rewarded, and the agent learns to make better choices of action (decisions). The reward is often a fragmentary value based on changes in some parts of the environment. The agent learns to choose an action to maximize the total reward over the future.
(38) Herein, any learning method can be used as the reinforcement learning. However, in the following explanation, a case of using Q learning, which is a method of learning the value Q(S, A) of selecting the action A under the state S of a certain environment, will be described as an example. The purpose of Q learning is to select the action A having the highest value Q(S, A) as the optimal action from among the possible actions A in a certain state S.
(39) However, at the time of starting the Q learning first, the correct value of the value Q(S, A) is completely unknown for the combination of the state S and the action A. Then, the agent selects various actions A under a certain state S, and learns the correct value Q(S, A) by selecting a better action based on the reward given to the action A at that time.
(40) For example, the virtual temperature model calculating unit 320 of the machine learning unit 300 performs the above-described Q learning. Specifically, with the error outputted from the thermal displacement model calculating unit 310 and the heat generation factor data obtained from the machine tool 500 established as the state S, the virtual temperature model calculating unit 320 learns the value Q relative to this state S, selecting the adjustment of the coefficients A, B, C and D of the virtual spindle temperature calculation equation as the action A. In the virtual temperature model calculating unit 320, a reward is returned every time the action A is performed. This reward is determined based on the error. For example, the virtual temperature model calculating unit 320 searches for the optimal action A by trial and error so that the total of rewards over the future is maximized. In so doing, it is possible for the virtual temperature model calculating unit 320 to select the optimal action A (i.e., the coefficients A, B, C, and D of the virtual spindle temperature calculation equation) with respect to the state S, which is heat generation factor data.
(41) In the calculation of the reward in the virtual temperature model calculating unit, for example, the absolute value of the error or the square of the absolute value of the error is used as the evaluation function f, and when the evaluation function value f(S′) relating to the state S′ modified by the action A becomes larger than the evaluation function f(S) before the modification relating to the state information S before the modification by the action information A, the value of the reward is set to a negative value; whereas, when the evaluation function value f(S′) becomes smaller than the evaluation function f(S), the value of the reward is set to a positive value. If the evaluation function f(S′) is equal to the evaluation function f(S), the value of the reward is set to zero. The value function is updated by performing Q learning based on the state S, the action A, the state S′ when the action A is applied to the state S, and the value of the reward calculated as described above. Thereafter, based on the value function updated by performing Q learning, an action that maximizes the value function Q(S, A) is generated as an optimization action.
(42) Next, the thermal displacement model calculating unit 310 will be described below. The thermal displacement model calculating unit 310 includes a displacement acquiring unit 311, a temperature acquiring unit 312, a virtual spindle temperature acquiring unit 313, a storage unit 314, a learning unit 315, and an error calculating unit 316.
(43) The displacement acquiring unit 311 acquires an actually measured value of the thermal displacement amount of the spindle of the machine tool 500 detected by a probe, for example.
(44) The temperature acquiring unit 312 acquires the actually measured temperature of portions other than the spindle measured by the temperature sensor, e.g., the actually measured temperature of the locations of the black circles shown in
(45) The virtual spindle temperature acquiring unit 313 acquires the virtual spindle temperature calculated by the virtual spindle temperature calculating unit 325.
(46) In the storage unit 314, an actually measured value of the thermal displacement amount acquired by the displacement acquiring unit 311, the actually measured temperature of portions other than the spindle acquired by the temperature acquiring unit 312, and the virtual spindle temperature acquired by the virtual spindle temperature acquiring unit 313 are stored in association with each other. Table 1 is a table showing the actually measured temperatures θ.sub.1 to θ.sub.n and the virtual spindle temperature θ.sub.v from the temperature sensors provided at the n-number of positions other than the spindle for time t.
(47) TABLE-US-00001 TABLE 1 TIME t θ.sub.1 θ.sub.2 θ.sub.3 . . . θ.sub.n−1 θ.sub.n θ.sub.V t.sub.1 21 22 31 25 18 30 t.sub.2 22 24 32 26 19 32 . . .
(48) The learning unit 315 sets a thermal displacement estimation amount calculation equation that calculates an estimation amount (thermal displacement estimation amount) of thermal displacement based on the actually measured temperature of portions other than a spindle and a virtual spindle temperature by performing supervised learning based on the actually measured temperature of the portions other than the spindle and the virtual spindle temperature. More specifically, by multiple regression of the generalized linear model, based on the difference between the thermal displacement estimation amount calculated by substituting the actually measured temperature θ.sub.1 to θ.sub.n from the temperature sensors provided at n portions other than the spindle within a predetermined period stored in the storage unit 314 and the virtual spindle temperature θ.sub.v, and the actually measured value of the thermal displacement amount of the spindle within a predetermined period stored as a label in the storage unit 13, the learning unit 315 sets an optimized thermal displacement estimation amount calculation equation so that the difference is minimized, for example, by the least squares method or the like. The thermal displacement estimation amount obtained based on the actually measured temperature θ.sub.1 to θ.sub.n and the virtual spindle temperature θ.sub.v is input data, the actually measured value of the thermal displacement is a label, and a set of the label and the input data is teacher data.
(49) It should be noted that the learning unit 315 sets an optimized thermal displacement estimation amount calculation equation so that the difference between f(θ.sub.2, θ.sub.2, . . . , θ.sub.n, θ.sub.V) and Y.sub.L is minimized when the estimated value of the thermal displacement amount using the actually measured temperature θ.sub.1 to θ.sub.n and the virtual spindle temperature θ.sub.V from the temperature sensor provided at n portions other than the spindle is f(θ.sub.2, θ.sub.2, . . . , θ.sub.n, θ.sub.V) (where n is a natural number) and the actually measured value of the thermal displacement amount is Y.sub.L.
(50) The error calculating unit 316 outputs to the error acquiring unit 322 the difference between the thermal displacement estimation amount calculated by the thermal displacement estimation amount calculation equation set by the learning unit 315 and the actually measured value of the thermal displacement amount as error.
Example of Method of Machine Learning
(51) The learning unit 315 performs machine learning using training data. An example of the method will be described in detail. An example of such a method is described in Japanese Unexamined Patent Application, Publication No. 2018-153901.
(52) A method of setting a thermal displacement estimation amount calculation equation is described in, for example, Japanese Unexamined Patent Application, Publication No. 2018-153901. For example, as a method of searching for a coefficient of a thermal displacement estimation amount calculation equation and setting the thermal displacement estimation amount calculation equation, it is possible to estimate and set, based on multiple regression of the generalized linear model, a coefficient in which the square error between the estimated value of the thermal displacement amount calculated by the thermal displacement estimation amount calculation equation Y=a.sub.1θ.sub.1+a.sub.2θ.sub.2+ . . . a.sub.nθ.sub.n+a.sub.Vθ.sub.V (thermal displacement estimation amount) and the actually measured value Y.sub.L of the thermal displacement amount is minimized, by machine learning using the least squares method. Here, Y is a thermal displacement amount estimated value, θ.sub.1, θ.sub.2, . . . , θ.sub.n is an actually measured temperature, θ.sub.v is a virtual spindle temperature, and a.sub.1, a.sub.2 . . . , a.sub.n, a.sub.V are coefficients determined by multiple regression.
(53) More specifically, when the thermal displacement estimated value is Y, the label is Y.sub.L, and the actually measured temperatures θ.sub.1, θ.sub.2, . . . , θ.sub.n, and the virtual spindle temperature θ.sub.v are input data, in Equation 3, a set of coefficients a.sub.k, a.sub.v in which the summed value over a plurality of training data become minimum is calculated. It should be noted that k is a natural number, n is any integer, and k≤n. The coefficients a.sub.k and a.sub.v are third coefficients.
(Y.sub.L−Y).sup.2=(Y.sub.L−Σ.sub.k=1.sup.na.sub.kθ.sub.k−a.sub.Vθ.sub.V).sup.2 [Math. 3]
(54) The method of setting the thermal displacement estimation amount calculation equation is not limited to the above method, and various methods described in Japanese Unexamined Patent Application, Publication No. 2018-153901 can be used. For example, it is possible to perform multiple regression analysis giving consideration to an L2 regularization term, rather than normal multiple regression analysis. Furthermore, it is possible to perform sparse regularization. For example, it is possible to perform multiple regression analysis giving consideration to an L1 regularization term.
(55) Furthermore, in Japanese Unexamined Patent Application, Publication No. 2018-153901, it is possible to use the first order delay element of the measurement data or the time shift element of the measurement data as the input data when executing the above-described machine learning. Japanese Unexamined Patent Application, Publication No. 2018-153901 discloses a thermal displacement amount prediction calculation equation using the first order delay element of measurement data, and a thermal displacement amount prediction equation using the time shift element of the measurement data.
(56) Furthermore, Japanese Unexamined Patent Application, Publication No. 2018-153901 also describes another method whereby it is possible to perform machine learning by a well-known neural network such as a single-layer neural network or a multilayer neural network.
Operation During Machine Learning
(57) Next, the operation during machine learning in the machine learning unit 300 according to the present embodiment will be described.
(58) In Step S11, the learning unit 324 of the virtual temperature model calculating unit 320 randomly sets the coefficients A, B, C, and D of the virtual spindle temperature calculation equation serving as a virtual temperature model at the start of machine learning and during machine learning.
(59) In Step S12, the heat generation factor data acquiring unit 321 acquires the heat generation factor data such as the motor temperature θ.sub.M, the spindle rotation velocity 5, the ambient temperature θ.sub.r, and the like from the machine tool 500. The virtual spindle temperature calculating unit 325 calculates the virtual spindle temperature by using the virtual spindle temperature calculation equations for which the coefficients are set by the learning unit 324, that is, by using Equations 1 and 2.
(60) In Step S13, the learning unit 315 of the thermal displacement model calculating unit 310 sets the coefficient of the thermal displacement estimation amount calculation equation so that the difference (error) between the estimated value f(θ.sub.1, θ.sub.2, . . . , θ.sub.n, θ.sub.V) of the thermal displacement amount using the virtual spindle temperature and the actually measured temperature from the temperature sensor provided at portions other than the spindle, and the actually measured value Y.sub.L of the thermal displacement amount is minimized.
(61) In Step S14, when the estimated value of the thermal displacement amount is set as f(θ.sub.1, θ.sub.2, . . . , θ.sub.n, θ.sub.V) (n is a natural number), and the actually measured value of the thermal displacement amount is Y.sub.L, the error calculating unit 316 calculates the error between f(θ.sub.2, θ.sub.2, . . . , θ.sub.n, θ.sub.V) and Y.sub.L.
(62) In Step S15, if the error acquired from the error calculating unit 316 does not converge, or if the search for the coefficients A, B, C, and D is less than a specified number of times, the processing returns to Step S11. On the other hand, if the error converges and the error disappears, or falls within a certain range, or if the search for the coefficients A, B, C, and D reaches a specified number of times by the specified number of times, the learning unit 324 of the virtual temperature model calculating unit 320 ends learning, and outputs the virtual temperature model to the thermal displacement compensating unit 200. The virtual temperature model that outputs at the end of learning is a virtual temperature model using the coefficients A, B, C, and D of the combination in which the error was minimized in the search process. The thermal displacement model is outputted from the learning unit 315 of the thermal displacement model calculating unit 310 to the thermal displacement compensating unit 200.
(63) It should be noted that the storage unit 314 and the storage unit 323 of the machine learning unit 300 store the virtual spindle temperature calculation equation and the thermal displacement estimation amount calculation equation. Thus, when the virtual spindle temperature calculation equation and the thermal displacement estimation amount calculation equation are requested from the newly installed thermal displacement compensating unit 200, it is possible to send the virtual spindle temperature calculation equation and the thermal displacement estimation amount calculation equation to the thermal displacement compensating unit. If new training data is acquired, it is possible to perform additional machine learning therewith.
Effects Achieved by First Embodiment
(64) As described above, in the present embodiment, it is possible to estimate a temperature even when a temperature sensor cannot be mounted to actually measure the temperature. Furthermore, it is possible to calculate the thermal displacement estimation amount of the components such as the spindle of the machine tool using the estimated temperature.
Second Embodiment
(65) In the first embodiment, a machine learning device is described which performs machine learning to learn the first coefficient for determining an amount of heat generation of the virtual spindle temperature calculation equation for calculating a virtual spindle temperature and the second coefficient for determining the amount of heat dissipation, and uses the virtual spindle temperature thus calculated as a parameter to perform machine learning to learn a coefficient of the thermal displacement estimation amount calculation equation for determining a thermal displacement estimation amount. In the present embodiment, a machine learning device will be described which performs machine learning to learn the first coefficient for determining an amount of heat generation of a virtual turret temperature calculation equation for determining a virtual turret temperature and the second coefficient for determining the amount of heat dissipation, and uses the virtual turret temperature thus calculated as a parameter to calculate a coefficient of a thermal displacement estimation amount calculation equation for calculating a thermal displacement estimation amount. A turret refers to a tool rest that turns (mounting two or more tools radially).
(66) Since the spindle rotates, it is impossible to mount a temperature sensor to actually measure the spindle temperature. On the one hand, in actual operation, it is not possible to mount a temperature sensor to the turret. However, it is possible to mount a temperature sensor to the turret at the time of data collection. Therefore, in the case of performing machine learning to learn the first coefficient for determining an amount of heat generation of the virtual turret temperature calculation equation for calculating the virtual turret temperature and the second coefficient for determining the amount of heat dissipation, it is possible to use an actually measured value of the turret temperature.
(67) Even in the present embodiment, as shown in Steps S25 to S27 of
(68)
(69) As shown in
(70) In the thermal displacement model calculating unit 310A of the machine learning unit 300A, as compared with the thermal displacement model calculating unit 310, the virtual spindle temperature is replaced with the virtual turret temperature. Therefore, the virtual spindle temperature acquiring unit 313 is replaced with the virtual turret temperature acquiring unit 313A, and the error calculating unit 316 is not provided. Except for these points, the configuration and operation of the thermal displacement model calculating unit 310A are the same as those of the thermal displacement model calculating unit 310. Therefore, descriptions thereof are omitted. Furthermore, the method of performing machine learning to learn a coefficient of the thermal displacement estimation amount calculation equation of the thermal displacement model calculating unit 310A is the same as the method of performing machine learning to learn a coefficient of the thermal displacement estimation amount calculation equation of the thermal displacement model calculating unit 310. Therefore, a description thereof is omitted. Table 2 is a table showing the actually measured temperatures θ.sub.1 to θ.sub.n from temperature sensors provided at n portions other than the turret, and the virtual turret temperature θ.sub.vL for time t stored in the storage unit 314.
(71) TABLE-US-00002 TABLE 2 TIME t θ.sub.1 θ.sub.2 θ.sub.3 . . . θ.sub.n−1 θ.sub.n θ.sub.VL t.sub.1 21 22 31 25 18 35 t.sub.2 22 24 32 26 19 37 . . .
(72) As compared with the virtual temperature model calculating unit 320, in the virtual temperature model calculating unit 320A of the machine learning unit 300A, the error acquiring unit 322 is replaced with the actual temperature acquiring unit 326, and the virtual spindle temperature calculating unit 325 is replaced with the virtual turret temperature calculating unit 325A. The virtual temperature model calculating unit 320A includes a heat generation factor data acquiring unit 321, an actual temperature acquiring unit 326, a storage unit 323, a learning unit 324A, and a virtual turret temperature calculating unit 325A.
(73) The heat generation factor data acquiring unit 321 acquires heat generation factor data from the machine tool 500. Here, the heat generation factor data refers to a driving current of the motor 510, the rotation velocity of the spindle of the machine tool 500, the load of the motor 510, the motor temperature, the atmosphere temperature, and the like.
(74) The actual temperature acquiring unit 326 acquires the actually measured temperature of the turret measured by the temperature sensor, e.g., the actually measured temperature of the temperature measurement position in the broken line area of the turret shown in
(75) In the storage unit 323, a heat generation factor data acquired by the heat generation factor data acquiring unit 321 and an actual temperature data of the turret acquired by the actual temperature acquiring unit 326 are stored in association with each other. Table 3 is a table showing the actually measured temperature θ.sub.T from the temperature sensor provided in the turret and the virtual turret temperature θ.sub.v for time t.
(76) TABLE-US-00003 TABLE 3 TIME t θ.sub.T θ.sub.V t.sub.1 35 30 t.sub.2 38 32 . . .
(77) The learning unit 324A acquires error between the virtual turret temperature data acquired using the heat generation factor data and the actual temperature data of the turret. The learning unit 324A performs supervised learning so that the error converges, thereby searching for a coefficient of a virtual turret temperature calculation equation for calculating the virtual turret temperature based on the heat generation factor data, and sets a virtual turret temperature calculation equation. The heat generation factor data is input data, the actual temperature data of the turret is a label, and a pair of the label and the input data is training data. The virtual turret temperature θ.sub.v(t.sub.i) at a certain time t.sub.i is represented by Equation 4 below in which the virtual spindle temperature is replaced with the virtual turret temperature.
θ.sub.V(t.sub.i)=θ.sub.V(t.sub.i−1)+T.sub.S×Q′(t.sub.i−1)−T.sub.S×E×{θ.sub.V(t.sub.i−1)−θ.sub.r(t.sub.i−1)} [Math. 4]
T.sub.S in Equation 4 is a calculation period of the turret temperature, Q′ is an amount of heat generation, E is a coefficient, and θ.sub.r(t.sub.i−1) is the ambient temperature at the previous time t.sub.i−1. The calorific value Q′ is indicated by Equation 5. It should be noted that other factors may be added to the calorific value Q′.
Q′(t.sub.i−1)=F×{LOAD}+G×{SPINDLE ROTATION VELOCITY}+H×{MOTOR TEMPERATURE} [Math. 5]
F of Equation 5 is a coefficient of load on the motor, G is a coefficient of the spindle rotation velocity, and H is a coefficient of the motor temperature. Coefficient E is the second coefficient for determining the amount of heat dissipation, and the coefficients F, G, and H are coefficients for determining the calorific value. The coefficients E, F, G, and H are set in advance, and the learning unit 324A searches for coefficients E, F, G, and H in which the error between the time series data of the calculated virtual turret temperature θ.sub.V and the data of the actual temperature θ.sub.T of the turret is minimized.
(78) As a method of searching for the coefficient of the virtual turret temperature calculation equation and setting the virtual turret temperature calculation equation, for example, the method described in Japanese Unexamined Patent Application, Publication No. 2018-153901 can be used. This method is a technique described in the technique of setting the thermal displacement estimation amount calculation equation in the first embodiment. More specifically, as a method of searching for the coefficient of the virtual turret temperature calculation equation, it is possible to estimate and set, based on multiple regression of the generalized linear model, the coefficients E, F, G, and H in which the square error (=(θ.sub.T−θ.sub.V)2) between the virtual turret temperature θ.sub.V calculated by the virtual turret temperature calculation equation of Equation 4 and the actually measured temperature θ.sub.T is minimized, by machine learning using the least squares method.
(79) The method of setting the virtual turret temperature calculation equation is not limited to the above-mentioned method, and similarly to the method of setting the thermal displacement estimation amount calculation equation in the first embodiment, which has already been described, various methods described in Japanese Unexamined Patent Application, Publication No. 2018-153901 can be used.
(80) The optimized virtual turret temperature calculation equation having the searched coefficients E, F, G, and H is outputted to the thermal displacement compensating unit 200 as a virtual temperature model.
(81) The virtual turret temperature calculating unit 325A uses the virtual turret temperature calculation equation having the searched coefficients E, F, G, and H which are set by the learning unit 324A to calculate the virtual turret temperature θ.sub.VL. The virtual turret temperature acquiring unit 313A of the thermal displacement model calculating unit 310A acquires the virtual turret temperature θ.sub.VL from the virtual turret temperature calculating unit 325A.
Operation of Machine Learning
(82) Next, the operation during machine learning in the machine learning unit 300A according to the present embodiment will be described.
(83) In Step S21, the learning unit 324A of the virtual temperature model calculating unit 320A randomly sets the coefficients E, F, G, and H of the virtual turret temperature calculation equation serving as the virtual temperature model at the start of machine learning and during machine learning.
(84) In Step S22, the heat generation factor data acquiring unit 321 acquires the rotation velocity of the spindle, the load on the motor 510, and the heat generation factor data such as the motor temperature from the machine tool 500A. The learning unit 324A applies the heat generation factor data to the virtual turret temperature calculation equation, and calculates (estimates) the virtual turret temperature (virtual temperature data).
(85) In Step S23, the learning unit 324A calculates the error between the virtual turret temperature and the actual temperature acquired from the actual temperature acquiring unit 326.
(86) In Step S24, if the error does not converge, or if the search for the coefficients E, F, G, and H is less than a specified number of times, the processing returns to Step S21. On the other hand, if the error converges and the error disappears, or falls within a certain range, or if the search for the coefficients E, F, G, and H reaches a specified number of times by the specified number of times, the learning unit 324A ends learning. The virtual turret temperature calculating unit 325A uses the virtual turret temperature calculation equation in which the coefficients E, F, G, and H are set by the learning unit 324A (i.e., uses Equations 4 and 5) to calculate the virtual turret temperature θ.sub.VL. The virtual turret temperature calculation equation after learning is outputted to the thermal displacement compensating unit 200 as a virtual temperature model.
(87) In Step S25, the learning unit 315 of the thermal displacement model calculating unit 310A sets the coefficient of the thermal displacement estimation amount calculation equation such that the difference between the virtual turret temperature θ.sub.VL and the estimated value f(θ.sub.1, θ.sub.2, . . . , θ.sub.n, θ.sub.VL) of the thermal displacement amount using the actually measured temperatures θ.sub.1 to θ.sub.n from the temperature sensors provided at portions other than the turret, and the actually measured value Y.sub.L of the thermal displacement amount is minimized.
(88) In Step S26, when the estimated value of the thermal displacement amount is set as f(θ.sub.2, θ.sub.2, . . . , θ.sub.n, θ.sub.VL) (n is a natural number), and the actually measured value of the thermal displacement amount is Y.sub.L, the learning unit 315 calculates the error between f(θ.sub.1, θ.sub.2, . . . , θ.sub.n, θ.sub.VL) and Y.sub.L. In Step S27, if the error does not converge, or if the search for the coefficient is less than the specified number of times, the processing returns to Step S25. On the other hand, if the error converges and the error disappears, or if the error falls within a certain range, or if the search for the coefficient reaches the specified number of times by the specified number of times, the learning unit 315 ends learning and outputs the thermal displacement model to the thermal displacement compensating unit 200.
(89) It should be noted that the storage unit 314 and the storage unit 323 of the machine learning unit 300A store a virtual turret temperature calculation equation and a thermal displacement estimation amount calculation equation. Thus, when the virtual turret temperature calculation equation and the thermal displacement estimation amount calculation equation are requested from the newly installed thermal displacement compensating unit 200, it is possible to send the virtual turret temperature calculation equation and the thermal displacement estimation amount calculation equation to the thermal displacement compensating unit. If new training data is acquired, it is possible to perform additional machine learning therewith.
Effect Achieved by Second Embodiment
(90) As described above, in the present embodiment, it is possible to estimate the temperature when a temperature sensor cannot be mounted in actual operation, even though it is possible to mount the temperature sensor at the time of data collection. Furthermore, it is possible to calculate the thermal displacement estimation amount of the components such as the spindle of the machine tool using the estimated temperature.
(91) The functional blocks included in the machine learning units 300 and 300A of the first and second embodiments have been described above. In order to realize these functional blocks, the machine learning units 300 and 300A each include an arithmetic processing unit such as a CPU (Central Processing Unit). The machine learning units 300 and 300A also include an auxiliary storage device such as a HDD (Hard Disk Drive) that stores application software, various control programs such as OS (Operating System), and the like, and a main storage device such as RAM (Random Access Memory) that stores data that is temporarily required for the arithmetic processing unit to execute the programs.
(92) Furthermore, in the machine learning units 300 and 300A, the arithmetic processing unit reads the application software and the OS from the auxiliary storage device, and performs arithmetic processing based on the application software and the OS, while expanding the read application software and the OS in the main storage device. Furthermore, the arithmetic processing unit controls various kinds of hardware provided in each device based on the calculation result. As a result, the functional blocks of the present embodiment are realized. That is, the present embodiment can be realized by the cooperation of hardware and software. It should be noted that the thermal displacement compensating unit may include the machine learning unit 300 or the machine learning unit 300A. In this case, the arithmetic processing unit such as a CPU (Central Processing Unit), the auxiliary storage unit, and the main storage unit are shared, and need not be provided to the machine learning unit 300 or the machine learning unit 300A, respectively.
(93) Since the machine learning units 300 and 300A have a large computational complexity associated with machine learning, for example, a GPU (Graphics Processing Unit) may be built into a personal computer. Furthermore, the GPU may be configured to be used for arithmetic processing associated with machine learning by a technique called GPGPU (General-Purpose computing on Graphics Processing Unit). This configuration enables high-speed processing. Furthermore, for faster processing, a computer cluster may be constructed using a plurality of computers equipped with such a GPU, and parallel processing may be performed by a plurality of computers included in the computer cluster.
(94) In the first and second embodiments, a machine tool has been described as an example of the machine. However, in particular, the machine is not limited to a machine tool, and may be a robot, an industrial machine, or the like. In the first embodiment, the spindle is exemplified as an example in which it is impossible to mount a temperature sensor to actually measure the spindle temperature. In the second embodiment, the turret is exemplified as an example in which a temperature sensor cannot be mounted in actual operation; however, it is possible to mount the temperature sensor at the time of data collection. However, the present invention is not limited to these examples. For example, the present invention is also applicable to a ball screw as the driven body shown in
(95) Each component included in the machine learning unit can be realized by hardware, software, or a combination thereof. The machine learning method performed by the cooperation of the respective components included in the above-mentioned machine learning part can also be realized by hardware, software, or a combination thereof. Herein, being realized by software means being realized by a computer reading and executing a program.
(96) Programs can be stored on any of various types of non-transitory computer readable media and provided to a computer. The non-transitory computer readable media include various types of tangible storage media. Examples of non-transient computer-readable media include magnetic recording media (e.g., hard disk drives), magnetic-optical recording media (e.g., magnetic-optical disks), CD-ROM (Read Only Memory), CD-R, CD-R/W, and semiconductor memory (e.g., mask ROM, PROM (Programmable ROM), EPROM (Erasable PROM, flash ROM, and RAM (random access memory)). The programs may be provided to a computer by using any of various types of transitory computer readable media.
(97) Although the above-described embodiments are preferred embodiments of the present invention, they are not intended to limit the scope of the present invention only to the above-described embodiments, and it is possible to implement embodiments in a form in which various modifications are made without departing from the gist of the present invention.
(98) In addition to the configurations of
Modification Example in which Machine Learning Device is Provided Outside Control System Via Network
(99)
(100) Herein, the control device 700-1 and the machine tool 500-1, and the machine learning device 300-1 are a one-to-one group and are communicably connected. The control devices 700-2 to 700-n and the machine tools 500-2 to 500-n, and the machine learning devices 300-2 to 300-n are connected in a similar manner to the connection of the control device 700-1 and the machine tool 500-1, and the machine learning device 300-1. In
(101) It should be noted that the network 800 is, for example, a LAN (Local Area Network) constructed in the factory, the Internet, a public telephone network, or a combination thereof. There is no particular limitation on the communication through the network 800 in terms of a specific communication system or in terms of whether the communication is established via wires or without wires.
Degree of Freedom of System Configuration
(102) In the above-described embodiments, the control devices 700-1 to 700-n and the machine tools 500-1 to 500-n, and the control devices 700-1 to 700-n and the machine tools 500-1 to 500-n are respectively connected in one-to-one groups to communicate with each other; however, for example, one machine learning device may be communicably connected to a plurality of control devices and machine tools via the network 800 to perform machine learning for the plurality of control devices and the machine tools. In this case, each function of one machine learning device may be distributed to a plurality of servers as appropriate to establish a distributed processing system. In addition, each function of one machine learning device may be realized by using a virtual server function or the like on a cloud.
(103) In addition, in a case in which there are n-number of machine learning devices 300-1 to 300-n corresponding to the same model names of n-number of machines, the same specifications, or the same series of control devices 700-1 to 700-n and machine tools 500-1 to 500-n, respectively, it may be configured so that the learning results in each machine learning device 300-1 to 300-n are shared with each other. By doing so, it is possible to construct a more optimal model.
(104) A machine learning device, a control system, and a machine learning method according to the present disclosure can be adopted in various embodiments having the following configurations including the above-described embodiments. (1) According to the first aspect of the present disclosure, a machine learning device (for example, the machine learning unit 300) includes a virtual temperature model calculating unit (the virtual temperature model calculating unit 320) having a virtual temperature calculation equation including a first coefficient for determining a heat generation amount and a second coefficient for determining a heat dissipation amount, the virtual temperature model calculating unit (320) configured to calculate virtual temperature data by estimating a temperature of a specific portion of a machine by the virtual temperature calculation equation using heat generation factor data; and a thermal displacement model calculating unit (the thermal displacement model calculating unit 310) having a thermal displacement estimation amount calculation equation including a third coefficient, the thermal displacement model calculating unit (310) configured to calculate, using the virtual temperature data calculated using the virtual temperature calculation equation and actual temperature data acquired from at least one temperature sensor mounted to a portion other than the specific portion, error between thermal displacement estimated by the thermal displacement estimation amount calculation equation and actually measured thermal displacement, and calculate an optimized thermal displacement estimation amount calculation equation by performing machine learning to search for the third coefficient so that the error is minimized, in which the virtual temperature model calculating unit (320) calculates an optimized virtual temperature calculation equation by performing machine learning to search for the first coefficient and the second efficient so that error calculated by the thermal displacement estimation amount calculation equation that is optimized using the virtual temperature data estimated by the virtual temperature calculation equation is minimized. According to the machine learning device of the first aspect of the present disclosure, even when there is a portion to which a temperature sensor cannot be mounted to actually measure the temperature, it is possible to estimate the temperature of the portion. Furthermore, it is possible to calculate the thermal displacement estimation amount of the components of the machine using the estimated temperature.
(105) (2) The machine learning device according to (1) above, in which the first coefficient is a coefficient for determining a heat generation amount according to heat conduction from a motor that drives the machine and/or a coefficient for determining a heat generation amount according to bearing friction, and the second coefficient is a coefficient for determining a heat dissipation amount according to heat transfer from the specific portion of the machine to a fluid therearound.
(106) (3) The machine learning device according to (1) or (2) above, in which the specific portion of the machine is a spindle (for example, the spindle 520A) of a machine tool.
(107) (4) The machine learning device according to (1) or (2) above, in which the specific portion of the machine is a screw axis of a ball screw of the machine tool).
(108) (5) According to the second aspect of the present disclosure, a machine learning device (for example, a machine learning unit 300A) includes a virtual temperature model calculating unit (for example, the virtual temperature model calculating unit 320A) having a virtual temperature calculation equation including a first coefficient for determining a heat generation amount and a second coefficient for determining a heat dissipation amount, In which the virtual temperature model calculating unit configured to calculate, using virtual temperature data of a specific portion of a machine (500A) acquired by the virtual temperature calculation equation using heat generation factor data and actual temperature data acquired from at least one temperature sensor mounted to the specific portion, calculate error between the virtual temperature data and the actual temperature data, and calculate an optimized virtual temperature calculation equation by performing machine learning to search for the first coefficient and the second coefficient so that the error is minimized. According to the machine learning device of the second aspect of the present disclosure, it is possible to estimate the temperature of the portion even when there is a portion to which a temperature sensor cannot be mounted in actual operation, even though it is possible to mount the temperature sensor at the time of data collection.
(109) (6) The machine learning device according to (5) above further includes a thermal displacement model calculating unit having a thermal displacement estimation amount calculation equation including a third coefficient, in which the thermal displacement model calculating unit is configured to calculate an optimized thermal displacement estimation amount calculation equation by performing machine learning using virtual temperature data calculated using the virtual temperature calculation equation that is optimized and actual temperature data acquired from at least one temperature sensor mounted to a portion other than the specific portion.
(110) (7) The machine learning device according to (5) or (6), in which the specific portion of the machine is a turret of a machine tool.
(111) (8) According to the third aspect of the present disclosure, a control system (for example, the control system 10, 10A) includes: the machine learning device (the machine learning unit 300, 300A) according to any one of (1), (2), (3), (4), (6), and (7); a thermal displacement compensating device (the thermal displacement compensating device 200) configured to store a virtual temperature calculation equation and a thermal displacement estimation amount calculation equation outputted from the machine learning device (300, 300A), calculate, using virtual temperature data calculated from the virtual temperature calculation equation and actual temperature data acquired from at least one temperature sensor mounted to a portion other than a specific portion, an estimated value of thermal displacement by the thermal displacement estimation amount calculation equation, and calculate a thermal displacement compensation amount based on the estimated value of the thermal displacement; and a numerical control device (100) configured to compensate a control command outputted to a motor control unit (400) that controls a motor (510) based on the thermal displacement compensation amount. According to the control system of the third aspect of the present disclosure, it is possible to estimate the temperature even if a temperature sensor cannot be mounted or it is difficult to mount the temperature sensor in actual operation.
(112) (9) According to the fourth aspect of the present disclosure, a machine learning method of a machine learning device (the machine learning unit 300) includes the steps of: calculating virtual temperature data by estimating a temperature of a specific portion of a machine using heat generation factor data by a virtual temperature calculation equation including a first coefficient for determining a heat generation amount and a second coefficient for determining a heat dissipation amount; calculating, using a thermal displacement estimation amount calculation equation including a third coefficient, and using the virtual temperature data calculated using the virtual temperature calculation equation and actual temperature data acquired from at least one temperature sensor mounted to a portion other than the specific portion, error between thermal displacement estimated by the thermal displacement estimation amount calculation equation and actually measured thermal displacement, and calculating an optimized thermal displacement estimation amount calculation equation by performing machine learning to search for the third coefficient so that the error is minimized; and calculating an optimized virtual temperature calculation equation by performing machine learning to search for the first coefficient and the second efficient so that error calculated by the thermal displacement estimation amount calculation equation that is optimized using the virtual temperature data estimated by the virtual temperature calculation equation is minimized. According to the machine learning method of the fourth aspect of the present disclosure, even when there is a portion to which a temperature sensor cannot be mounted to actually measure the temperature, it is possible to estimate the temperature of the portion. Furthermore, it is possible to calculate the thermal displacement estimation amount of the components of the machine using the estimated temperature.
(113) (10) According to the fifth aspect of the present disclosure, a machine learning method of a machine learning device (the machine learning unit 300A) includes the steps of: calculating, using virtual temperature data calculated using heat generation factor data from a virtual temperature calculation equation for estimating a temperature of a specific portion of a machine (500) including a first coefficient for determining a heat generation amount and a second coefficient for determining a heat dissipation amount, and actual temperature data acquired from at least one temperature sensor mounted to the specific portion, error between the virtual temperature data and the actual temperature data; and calculating an optimized virtual temperature calculation equation by performing machine learning to search for the first coefficient and the second coefficient so that the error is minimized. According to the machine learning method of the fifth aspect of the present disclosure, it is possible to estimate the temperature of a portion even when there is a portion to which a temperature sensor cannot be mounted in actual operation, even though it is possible to mount the temperature sensor at the time of data collection. Furthermore, it is possible to calculate the thermal displacement estimation amount of the components of the machine using the estimated temperature.
EXPLANATION OF REFERENCE NUMERALS
(114) 10, 10a, 10b control system 100 numerical control unit 200 thermal displacement compensating unit 201 virtual temperature calculating unit 202 temperature data storage unit 203 thermal displacement compensation amount calculating unit 300 machine learning unit 310 thermal displacement model calculating unit 311 displacement acquiring unit 312 temperature acquiring unit 313 virtual spindle temperature acquiring unit 314 storage unit 315 learning unit 316 error calculating unit 320 virtual temperature model calculating unit 321 heat generation factor data acquiring unit 322 error acquiring unit 323 storage unit 324 learning unit 325 virtual spindle temperature calculating unit 400 motor control unit 500 machine tool 510 motor 520 driven body 600 workpiece