Abstract:
Provided is a thermal displacement correction device for a working machine that includes a thermal displacement correction amount calculation unit for calculating a thermal displacement correction amount and configured to correct a thermal displacement amount caused by heat generated and radiated from the working machine and changing with time by the thermal displacement correction amount, the thermal displacement correction device for the working machine including: a correction error coefficient storage memory; a correction precision calculation unit configured to calculate the correction precision of the thermal displacement correction amount based on the thermal displacement correction amount and the correction error coefficient; and a correction precision degradation notification unit.

Description:
RELATED APPLICATIONS 
     The present application claims priority to Japanese Application Number 2014-125661, filed Jun. 18, 2014, the disclosure of which is hereby incorporated by reference herein in its entirety. 
     BACKGROUND OF THE INVENTION 
     1. Field of the Invention 
     The present invention relates to a thermal displacement correction device in a working machine, and particularly, to a thermal displacement correction device that notifies degradation in correction precision of a thermal displacement correction. 
     2. Description of the Related Art 
     In a working machine, a structure provided therein is expanded or contracted during a processing operation of the working machine due to various factors such as heat of a motor, friction heat of a feeding shaft, cutting heat of a cutting operation, and heat transferred by a temperature of a cutting fluid or various ambient temperatures. Here, a displacement in the relative position between a tool and a workpiece affects the processing precision of the working machine. In order to prevent degradation in processing precision caused by the displacement of the relative position due to the heat, there is a need to correct the relative position between the tool and the workpiece in response to the displacement amount. For that reason, the working machine is equipped with a device that estimates a thermal displacement amount in response to an environment temperature or heat transferred from the above-described heat generation source and corrects the relative position. 
     As a method of estimating the displacement of the relative position between the tool and the workpiece due to the heat, JP 2013-146823 A discloses a method of calculating a thermal displacement amount of a structure from the amount of heat generated or radiated when the working machine is driven or stopped. 
     Further, JP 10-138091 A discloses a method of determining a correction amount by using a displacement or a change in temperature detected by a displacement sensor or a temperature sensor for the purpose of obtaining higher correction precision. In the technique disclosed in JP 10-138091 A, it is determined that the thermal displacement amount is not sufficiently estimated when a change in thermal displacement amount calculated by a normal thermal displacement estimation method is larger than a setting value. Then, the thermal displacement amount is measured by the displacement sensor and the correction amount thereof is determined. 
     Since the displacement caused by heat changes due to various factors such as heat of a motor, friction heat of a feeding shaft, cutting heat of a cutting operation, and an influence caused by a temperature of a cutting fluid or various ambient temperatures, it is difficult to completely estimate the displacement amount by checking the heat generation amount from all heat generation sources and the heat transfer amount to the structure without any sensor. For that reason, there is a difference with respect to the actual thermal displacement amount during a correction. 
     Since the thermal displacement becomes complex as the temperature distribution in the structure changes, a difference between the thermal displacement estimation amount and the actual thermal displacement amount increases. Accordingly, the correction precision is degraded even when the thermal displacement is corrected. For that reason, there is a case where the expected correction precision may not be obtained even after the correction of the thermal displacement depending on the thermal displacement amount. At that time, there is a need to adjust the offset value of the coordinate of the tool by using a unit other than a thermal displacement correction unit. 
     In such a case, an operator examines the correction precision by stopping the processing operation. However, when there is not any method of determining whether the sufficient correction precision is maintained by the correction of the thermal displacement, the examination is performed every processing operation, and hence the processing efficiency is degraded. 
     When the temperature sensor or the displacement sensor is used, the correction precision may be improved. However, the use cause the problem of increase of cost by the sensor use, and protection of the sensor from the influence of chips or coolant. Further, there is a need to consider a case where sufficient correction precision may not be obtained in accordance with the measurement precision of the sensor. 
     However, there is no working machine having a structure for determining whether the correction precision is sufficient in the correction of the thermal displacement. 
     SUMMARY OF THE INVENTION 
     Therefore, an object of the invention is to provide a thermal displacement correction device that estimates correction precision of a thermal displacement correction amount calculated by a thermal displacement correction program and displays a notice for degradation in correction precision when there is a possibility of degradation in correction precision. 
     According to the invention, there is provided a thermal displacement correction device for a working machine that includes a thermal displacement correction amount calculation unit for calculating a thermal displacement correction amount and configured to correct a thermal displacement amount caused by heat generated and radiated from the working machine and changing with time by the thermal displacement correction amount, the thermal displacement correction device for the working machine including: a correction error coefficient storage memory configured to store a correction error coefficient in response to the thermal displacement correction amount obtained in advance; a correction precision calculation unit configured to calculate the correction precision of the thermal displacement correction amount based on the thermal displacement correction amount calculated by the thermal displacement correction amount calculation unit and the correction error coefficient stored in the correction error coefficient storage memory; a correction precision check unit configured to check whether a processing operation is performed at predetermined correction precision by comparing the correction precision with a threshold value of predetermined correction precision; and a correction precision degradation notification unit configured to notify degradation in correction precision when the correction precision check unit determines that the predetermined correction precision is not satisfied. 
     The thermal displacement correction device for the working machine may further include a processing operation stop unit configured to automatically stop a processing operation when the correction precision check unit determines that the predetermined correction precision is not satisfied. 
     Alternatively, the thermal displacement correction device for the working machine may further include: a thermal displacement amount measurement unit configured to measure a thermal displacement amount by using a touch probe or a position sensor when the correction precision check unit determines that the predetermined correction precision is not satisfied; and a thermal displacement correction amount adjustment unit configured to calculate a new thermal displacement correction amount based on the thermal displacement amount measured by the thermal displacement amount measurement unit. 
     Since the invention has the above-described configuration, it is possible to improve the reliability of the thermal displacement correction function by estimating the correction precision of the thermal displacement correction amount calculated by the thermal displacement correction program and automatically determining whether the precision is within the predetermined precision. 
     Further, since the processing operation is automatically stopped when the thermal displacement correction precision is degraded, the processing operation which does not fall within the predetermined precision may not be performed. 
     Furthermore, when the touch probe or the position sensor is used, the automatic adjustment of the offset value and the measurement may be performed only when the correction is not sufficient in the thermal displacement correction function, and hence the number of times of measuring the position may be decreased. 
    
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
       The above-described object, the other object, and the feature of the invention will be proved from the description of embodiments below with reference to the accompanying drawings. In these drawings: 
         FIG. 1  is a block diagram illustrating a numerical control device of an embodiment of the invention; 
         FIG. 2  is a flowchart illustrating a thermal displacement correction amount correction precision calculation process of the embodiment of the invention; and 
         FIG. 3  is a flowchart illustrating a notice process based on correction precision of the embodiment of the invention. 
     
    
    
     DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS 
     In the embodiment, a thermal displacement correction device corresponds to a numerical control device. 
       FIG. 1  is a functional block diagram illustrating a main part of a numerical control device of a working machine. A processor (CPU)  11  of a numerical control device  10  is a processor that controls the entire numerical control device  10 . The processor  11  reads a system program stored in a ROM  12  via a bus  21  and controls the entire numerical control device  10  according to the system program. A RAM  13  stores a temporary calculation data item, a display data item, and various data items input from an operator via an LCD/MDI unit  70 . 
     A SRAM  14  is configured as a non-volatile memory which is backed up by a battery (not illustrated) so that a storage state is maintained even when the power of the numerical control device  10  is turned off. Thus, the SRAM stores a program of measuring an initial position, a program of correcting a thermal displacement of a working machine, a processing program read via an interface  15 , which will be described below, and a processing program input via the LCD/MDI unit  70 . Further, the ROM  12  previously stores various system programs for performing a process of an automatic operation or a process of an editing mode necessary to create and edit the processing program. 
     The interface  15  is an interface for an external device that is connectable to the numerical control device  10 , and is connected to an external device  72  such as an external storage device. A processing program, a thermal displacement correction amount calculation program, a thermal displacement correction precision estimation program, and the like are read from the external storage device. A PMC (programmable machine controller)  16  controls an auxiliary device in a working machine by the sequence program stored in the numerical control device  10 . That is, a signal necessary for the auxiliary device is converted by the sequence program in accordance with the functions M, S, and T instructed by the processing program, and is output from the I/O unit  17  to the auxiliary device. By the output signal, an auxiliary device such as various actuators is operated. Further, signals for various switches of an operation panel disposed on a body of the working machine are subject to necessary processes, and are transmitted to the processor  11 . 
     Image signals such as a current position, an alarm, a parameter, and an image data item for each shaft of the working machine are transmitted to the LCD/MDI unit  70 , and are displayed on a display. The LCD/MDI unit  70  is a manual input data input device that includes a display or a keyboard, and an interface  18  receives a data item from the keyboard of the LCD/MDI unit  70  and transmits the data item to the processor  11 . 
     The interface  19  is connected to a manual pulse generator  71 . Here, the manual pulse generator  71  is mounted on the operation panel of the working machine, and is used to precisely position the movable unit of the working machine by the control of each shaft using a distribution pulse based on a manual operation. 
     Control circuits  30  to  32  which move a table T of the working machine in the X, Y, and Z axes receive a movement instruction for each axis from the processor  11  and output an instruction for each axis to servo amplifiers  40  to  42 . The servo amplifiers  40  to  42  receive this instruction and drive the servomotors  50  to  52  for the shafts of the working machine. A position detecting pulse coder is provided in each of the servo motors  50  to  52  for the shafts, and the position signals generated from the pulse coders are fed back as a pulse train to the numerical control device  10 . 
     A spindle control circuit  60  receives a main shaft rotation instruction to the working machine and outputs a spindle speed signal to a spindle amplifier  61 . The spindle amplifier  61  receives the spindle speed signal, and drives a tool by rotating the tool at a rotation speed instructed by a spindle motor  62  of the working machine. 
     A position coder  63  is coupled to the spindle motor  62  through a gear or a belt. The position coder  63  outputs a feedback pulse in synchronization with the rotation of the main shaft. The feedback pulse is read by the processor  11  via the interface  20 . Reference Numeral  65  indicates a clock circuit which is adjusted to be synchronized with the current time. 
     Hereinafter, in the embodiment, a method will be described which estimates correction precision for a thermal displacement correction amount and notifies degradation in correction precision. 
     In the thermal displacement amount monitoring method of the embodiment, a thermal displacement correction amount reference value h N  is used as an index value for monitoring the thermal displacement amount. The thermal displacement correction amount reference value h N  is a numerical value group used to determine a thermal displacement correction degree. The subscript N is a numerical value which is used as the index value of the correction amount and is an integer value. The values of the thermal displacement correction amount reference value h N  are set so as to satisfy a relation of h N−1 &lt;h N &lt;h N+1  in order from the small degree of the numerical values of the thermal displacement correction amount. 
     In the case of h N ≦x&lt;h N+1  when a thermal displacement correction amount x is estimated by a thermal displacement correction program during the operation of the working machine based on the thermal displacement correction amount reference value h N  defined in this way, the correction amount index of the thermal displacement correction amount x may be set as N. 
     In the embodiment, a correction error coefficient is further used. The correction error coefficient is a coefficient that indicates a degree of an allowable error of the thermal displacement correction amount in the correction amount index N, and is set to a different value in a state where a change in thermal displacement amount is steady or unsteady. When a change amount in the thermal displacement amount (a difference between the precedent thermal displacement amount and the current thermal displacement amount) is equal to or larger than a predetermined threshold value d− and is equal to or smaller than a predetermined threshold value d+, the steady state is set. Otherwise, the unsteady state is set. A correction error coefficient a N  in the steady state and a correction error coefficient b N  in the unsteady state are respectively defined by the following equations. 
     
       
         
           
             
               
                 
                   
                     
                       
                         ( 
                         
                           Steady 
                           ⁢ 
                           
                               
                           
                           ⁢ 
                           State 
                         
                         ) 
                       
                       ⁢ 
                       
                           
                       
                       ⁢ 
                       
                         a 
                         N 
                       
                     
                     = 
                     
                       
                         SE 
                         Na 
                       
                       ÷ 
                       
                         
                           
                             h 
                             N 
                           
                           + 
                           
                             h 
                             
                               N 
                               + 
                               1 
                             
                           
                         
                         2 
                       
                     
                   
                   ⁢ 
                   
                     
 
                   
                   ⁢ 
                   
                     
                       
                         ( 
                         
                           Unsteady 
                           ⁢ 
                           
                               
                           
                           ⁢ 
                           State 
                         
                         ) 
                       
                       ⁢ 
                       
                           
                       
                       ⁢ 
                       
                         b 
                         N 
                       
                     
                     = 
                     
                       
                         SE 
                         Nb 
                       
                       ÷ 
                       
                         
                           
                             h 
                             N 
                           
                           + 
                           
                             h 
                             
                               N 
                               + 
                               1 
                             
                           
                         
                         2 
                       
                     
                   
                 
               
               
                 
                   ( 
                   1 
                   ) 
                 
               
             
           
         
       
     
     In the equation (1), the SE Na  indicates a standard error between an actual thermal displacement amount and a thermal displacement correction amount obtained by the thermal displacement correction program in the case where the thermal displacement amount is equal to or larger than h N  and equal to or smaller than h N+1 , that is, the correction amount index is N when a change amount in the thermal displacement amount is under steady state. Then SE Na  is calculated in advance by the repeated test in the steady state, and is stored in the SRAM  14  of the numerical control device  10 . The SE Nb  indicates a standard error between an actual thermal displacement amount and a thermal displacement correction amount obtained by the thermal displacement correction program when a change amount in the thermal displacement amount is abnormal. The SE Nb  is calculated in advance by the repeated test in the abnormal state as in the normal state, and is stored in the SRAM  14  of the numerical control device  10 . 
     The algorithm of the correction precision calculation process during an actual processing operation using the values defined in this way will be described in detail with reference to the flowchart of  FIG. 2 . 
     When this process is started, a thermal displacement correction amount x(t) is first calculated (S 201 ). A thermal displacement correction amount calculation program is used in the calculation of the thermal displacement correction amount. Next, a correction amount index N that satisfies the relation of h N ≦x(t)&lt;h N+1  is calculated (S 202 ). 
     When the correction amount index N of the thermal displacement correction amount x(t) is calculated, it is determined whether a change amount in the thermal displacement correction amount is under steady state or under unsteady state (S 203 ). More specifically, a difference between the thermal displacement correction amount x(t−1) and the thermal displacement correction amount x(t) stored in the memory during the execution of the process is obtained. Then, it is determined whether the relation of d − ≦x(t)−x(t−1)≦d +  is satisfied. 
     In S 203 , when it is determined that a change amount in the thermal displacement correction amount is under steady state, the correction error coefficient a N  in the steady state of the correction amount index N is read from the memory (S 204 ), and the equation of the correction precision E=x(t)×a N  is calculated by using the read value (S 205 ). Meanwhile, in S 203 , when it is determined that a change amount in the thermal displacement correction amount is under unsteady state, the correction error coefficient b N  in the unsteady state of the correction amount index N is read from the memory (S 206 ), and the equation of the correction precision E=x(t)×b N  is calculated by using the read value (S 207 ). 
     Finally, the thermal displacement correction amount x(t) is stored in the memory, and the process ends. 
       FIG. 3  is a flowchart illustrating an algorithm of a process of determining the correction precision using the correction precision E calculated by the correction precision calculation process described in  FIG. 2  and displaying a notice or the like when the correction precision is degraded. In the embodiment, the process of  FIG. 3  is repeated at a predetermined interval in the numerical control device  10 . 
     When this process is started, a process of calculating the correction precision E is first performed (S 301 ). When the correction precision E is calculated, it is determined whether the value of the calculated correction precision E is equal to or larger than a predetermined threshold value E th  (S 302 ). In S 302 , when the value of the correction precision E is smaller than a predetermined threshold value E th , it is estimated that the precision of the thermal displacement correction amount is sufficiently maintained. Accordingly, the process ends, and the processing operation is continued by using the calculated thermal displacement correction amount. 
     In S 302 , when the value of the correction precision E is equal to or larger than a predetermined threshold value E th , it is estimated that the precision of the thermal displacement correction amount is not sufficiently maintained. Accordingly, a notice for degradation in correction precision is displayed on the LCD/MDI unit  70  of the numerical control device  10  (S 303 ). 
     When degradation in correction precision is notified, it is determined whether to stop the processing operation by reading a setting value for the stop of the processing operation stored in the memory (S 304 ). The setting value may be set in advance by an operator before the processing operation starts. 
     In S 304 , when the setting value for the stop of the processing operation is set so as to stop the processing operation, a control of stopping the processing operation is performed (S 305 ), and the process ends. In S 304 , when the setting value for the stop of the processing operation is set so as not to stop the processing operation, it is determined whether to measure the thermal displacement amount by reading a setting value for the measurement of the thermal displacement amount stored in the memory (S 306 ). The setting value may be set in advance by an operator before the processing operation starts. 
     In S 306 , when the setting value for the measurement of the thermal displacement amount becomes a value of instructing the measurement, the offset value is automatically adjusted by measuring the thermal displacement amount using a touch probe or a position sensor provided in the working machine in advance (S 307 ). In S 306 , when the setting value for the measurement of the thermal displacement amount becomes a value of not instructing the measurement, the process ends. 
     As described above, the thermal displacement correction device of the embodiment may improve the reliability of the thermal displacement correction function by estimating the correction precision and automatically determining whether the precision is within predetermined precision. 
     Further, since the processing operation is automatically stopped when the thermal displacement correction precision is degraded, the processing operation which does not fall within the predetermined precision may not be performed. 
     Furthermore, when the touch probe or the position sensor is used, the automatic adjustment of the offset value and the measurement may be performed only when the correction is not sufficient in the thermal displacement correction function, and hence the number of times of measuring the position may be decreased.