Method of machining workpiece using machine tool, and machine tool
10274927 ยท 2019-04-30
Assignee
Inventors
- Hidenori Saraie (Nara, JP)
- Kinji Hashimoto (Nara, JP)
- Keiichiro Matsuo (Nara, JP)
- Kazuo Yamazaki (El Macero, CA, US)
- Toshiya Sato (Gifu, JP)
Cpc classification
G05B19/402
PHYSICS
International classification
G05B19/402
PHYSICS
B23Q23/00
PERFORMING OPERATIONS; TRANSPORTING
Abstract
A machine tool includes a bed supported on a ground by supporting jigs, a table movable in an X-axis direction, a spindle head movable in a Y-axis direction, a quill provided to be movable in a Z-axis direction, a spindle supported by the quill to be rotatable about its axis, feed mechanisms for moving the table and the like in the axis directions, and a numerical controller controlling operation of the feed mechanisms, and the numerical controller is configured to calculate motion errors based on load values acting on the supporting jigs by a motion locus estimator, an influence coefficient storage, a motion error calculator, and a motion locus storage, generate a correction signal for compensating for the motion errors by a position corrector, and add the generated correction signals to a position control signal transmitted from a position generator to a position controller.
Claims
1. A method of machining a workpiece with a machine tool supported by a plurality of supporting jigs having an adjusting mechanism for adjusting a vertical support position and a load cell detecting a support load, comprising: calculating height positions or variation positions relative to a reference height position at target positions set on guides in the machine tool based on the support loads detected by the load cells of the supporting jigs and an influence coefficient matrix defining degrees of influence of the support loads detected by the load cells upon the height positions at the target positions; estimating, based on the calculated height positions or variation positions at the target positions, a motion locus of relative motion of a tool attached to the machine tool and the workpiece along the guides; calculating motion errors between the estimated motion locus and a preset reference motion locus at predetermined intervals in a motion direction; correcting the relative motion of the tool and the workpiece based on the calculated motion errors so as to compensate for the motion errors, and then machining the workpiece; and emitting an alarm at least when a maximum value of the calculated motion errors exceeds a predetermined reference value or when a variation value of the motion errors in the motion direction exceeds a predetermined reference value.
2. The workpiece machining method using the machine tool according to claim 1, wherein: a matrix A.sub.m,n below is previously obtained as the influence coefficient matrix; and the height positions or variation positions at the target positions are calculated based on the matrix A.sub.m,n and the support loads detected by the load cells of the supporting jigs,
3. The workpiece machining method using the machine tool according to claim 2, wherein the height positions S.sub.m at the target positions are calculated in accordance with an equation below or the variation values at the target positions are calculated by subtracting the reference height position from the height positions S.sub.m,
S.sub.m =A.sub.m,nF.sub.n, where F.sub.n represents the support loads,
4. A machine tool comprising: a bed; a plurality of supporting jigs having an adjusting mechanism for adjusting a vertical support position and a load cell detecting a support load, and supporting the bed at predetermined support positions; a workpiece holder disposed on the bed for holding a workpiece; a tool holder disposed on the bed for holding a tool; a feed device moving the workpiece holder and the tool holder relative to each other along guides provided on the bed; and a numerical controller generating a position control signal in accordance with a machining program for machining the workpiece into a target shape with the tool, and numerically controlling operation of the feed device in accordance with the generated position control signal, the machine tool further comprising; a motion locus estimator calculating height positions or variation positions relative to a reference height position at target positions set on the guides based on the support loads detected by the load cells of the supporting jigs and an influence coefficient matrix defining degrees of influence of the support loads detected by the load cells upon the height positions at the target positions, and estimating, based on the calculated height positions or variation positions at the target positions, a motion locus of relative motion of the tool and the workpiece moved along the guides by the feed device; a motion error calculator calculating motion errors between the motion locus estimated by the motion locus estimator and a preset reference motion locus at predetermined intervals in a motion direction; and a motion error judgment part outputting an alarm signal at least when a maximum value of the motion errors calculated by the motion error calculator exceeds a predetermined reference value or when a variation value of the motion errors in the motion direction exceeds a predetermined reference value, and the numerical controller being configured to, when generating the position control signal, generate, based on the motion errors calculated by the motion error calculator, such a position control signal that the motion errors have been compensated for.
5. The machine tool according to claim 4, wherein the motion locus estimator calculates the height positions or variation positions at the target positions based on a previously obtained matrix A.sub.m,nbelow as the influence coefficient matrix as well as the support loads detected by the load cells of the supporting jigs,
6. The machine tool according to claim 5, wherein the motion locus estimator calculates the height positions S.sub.m at the target positions in accordance with an equation below or calculates the variation values at the target positions by subtracting the reference height position from the height positions S.sub.m,
S.sub.m=A.sub.m,nF.sub.n, where F.sub.n represents the support loads,
7. A machine tool comprising: a bed; a plurality of supporting jigs having an adjusting mechanism for adjusting a vertical support position and a load cell detecting a support load, and supporting the bed at predetermined support positions; a workpiece holder disposed on the bed for holding a workpiece; a tool holder disposed on the bed or holding a tool; a feed device moving the workpiece holder and the tool holder relative to each other along guides provided on the bed; and a numerical controller generating a position control signal in accordance with a machining program for machining the workpiece into a target shape with the tool, and numerically controlling operation of the feed device in accordance with the generated position control signal, the machine tool further comprising: a motion locus estimator calculating height positions or variation positions relative to a reference height position at target positions set on the guides based on the support loads detected by the load cells of the supporting jigs and an influence coefficient matrix defining degrees of influence of the support loads detected by the load cells upon the height positions at the target positions, and estimating, based on the calculated height positions or variation positions at the target positions, a motion locus of relative motion of the tool and the workpiece moved along the guides by the feed device; a motion error calculator calculating motion errors between the motion locus estimated by the motion locus estimator and a preset reference motion locus at predetermined intervals in a motion direction; a motion error judgment part outputting an alarm signal at least when a maximum value of the motion errors calculated by the motion error calculator exceeds a predetermined reference value or when a variation value of the motion errors in the motion direction exceeds a predetermined reference value; and a position corrector successively receiving the position control signal generated by the numerical controller, generating a correction signal for the received position control signal based on the motion errors calculated by the motion error calculator, and adding the generated correction signal to the positon control signal in the numerical controller.
8. The machine tool according to claim 7, wherein the motion locus estimator calculates the height positions or variation positions at the target positions based on a previously obtained matrix A.sub.m,nbelow as the influence coefficient matrix as well as the support loads detected by the load cells of the supporting jigs
9. The machine tool according to claim 8, wherein the motion locus estimator calculates the height positions S.sub.m at the target positions in accordance with an equation below or calculates the variation values at the target positions by subtracting the reference height position from the height positions S.sub.m,
S.sub.m=A.sub.m,nF.sub.n, where F.sub.n represents the support loads,
Description
BRIEF DESCRIPTION OF THE DRAWINGS
(1) For a more complete understanding of the disclosed methods and apparatus, reference should be made to the embodiment illustrated in greater detail on the accompanying drawings, wherein:
(2)
(3)
(4)
(5)
(6)
(7)
(8)
(9)
(10)
(11)
DETAILED DESCRIPTION
(12) Hereinafter, an embodiment of the present disclosure will be described with referenced to the drawings.
(13) 1. Overall Configuration of Machine Tool
(14) As shown in
(15) Further, the machine tool 1 includes an X-axis feed mechanism 15 that is composed of a feed screw 16 provided between the two guide portions 3 and 4 in parallel with them, a nut 17 fixed on the lower surface of the table 5 and screwed with the feed screw 16, and an X-axis servo motor 18 rotating the feed screw 16 about its axis and moves the table 5 in the X-axis direction, as well as a Y-axis feed mechanism 20 composed of a Y-axis servo motor 21 and other components and moving the quill 9 in the Y-axis direction and a Z-axis feed mechanism 25 composed of a Z-axis servo motor 26 and other components and moving the spindle head 10 in the Z-axis direction. Furthermore, the machine tool 1 includes a numerical controller 40 controlling operation of the X-axis feed mechanism 15, the Y-axis feed mechanism 20, and the Z-axis feed mechanism 25.
(16) Further, as shown in
(17) 2. Configuration of Numerical Controller
(18) A configuration (functional blocks) of the numerical controller 40 is described using
(19) The machining program storage 41 is a functional unit storing a previously generated machining program therein, and transmits a stored machining program to the program analyzer 42.
(20) The program analyzer 42 analyzes the machining program received from the machining program storage 41 to extract commands relating to feed speeds and moving positions of the X-axis feed mechanism 15, the Y-axis feed mechanism 20, and the Z-axis feed mechanism 25, and transmits the extracted commands to the position generator 43.
(21) The position generator 43 generates signals (motion command signals, which are control signals) relating to target moving positions of the X-axis feed mechanism 15, the Y-axis feed mechanism 20, and the Z-axis feed mechanism 25 every a period of time (a predetermined period of time) based on signals received from the program analyzer 42 taking a predetermined time constant into consideration, and successively transmits the generated signals to the position controller 44 and the position corrector 51.
(22) The position controller 44 generates speed command signals based on the motion command signals (position control signals) transmitted from the position generator 43 and correction signals transmitted from the position corrector 51, and transmits the generated speed command signals to the speed controller 45.
(23) The speed controller 45 generates current command signals based on deviations between the speed command signals transmitted from the position controller 44 and actual speed data transmitted (fed back) as appropriate from position detectors (not shown) provided on the X-axis servo motor 18, the Y-axis servo motor 21, and the Z-axis servo motor 26, and transmits the generated current command signals to the current controller 46.
(24) Further, the current controller 46 transmits drive currents based on deviations between the current command signals transmitted from the speed controller 45 and actual current signals fed back thereto to the X-axis servo motor 18, the Y-axis servo motor 21, and the Z-axis servo motor 26. Consequently, operation of the X-axis servo motor 18, the Y-axis servo motor 21, and the Z-axis servo motor 26 is controlled in accordance with the drive currents.
(25) The motion locus estimator 47 estimates a motion locus of relative motion of a workpiece W and the tool T based on load values detected by the load cells 33 of the ten supporting jigs 30 and transmitted thereto from the transmitters 35 and an influence coefficient matrix stored in the influence coefficient storage 48, and transmits the estimated motion locus to the motion error calculator 49.
(26) In the estimation of the motion locus, first, height positions in the vertical direction (Y-axis direction) are calculated for ten positions (Y.sub.1 to Y.sub.10 in
(27)
(28) In Equation 1 given above, F.sub.10 is a ten-by-one matrix and f.sub.1 to f.sub.10 are the load values detected by the load cells 33 of the supporting jigs 30 positioned at positions X.sub.1 to X.sub.10, respectively. Further, S.sub.10 is a ten-by-one matrix and s.sub.1 to s.sub.10 are the height positions at the ten positions (Y.sub.1 to Y.sub.10 in
(29) Subsequently, a motion locus of relative motion of a workpiece W and the tool T is estimated based on the calculated height positions or variation positions at the ten positions. Specifically, as shown in
(30) Note that the influence coefficient matrix is previously calculated and stored in the influence coefficient storage 48, which is to be transmitted as appropriate from the influence coefficient storage 48 to the motion locus estimator 47. Also note that the influence coefficient matrix stored in the influence coefficient storage 48 was defined by the inventors of the present application based on their findings described below.
(31) The inventors measured loads acting on twelve supporting jigs (J1 to J12 in
(32) Specifically, the influence coefficient matrix consisting of influence coefficients representing the degrees of influence of the supporting jigs upon the height positions at the positions can be calculated in the following manner. In this example, first, in a state where the bed 2 is being supported by the ten supporting jigs 30, the jack portion 32 of any one of the supporting jigs 30 is operated, and a load value detected by the load cell 33 of the supporting jig 30 whose jack portion 32 was operated and load values detected by the load cells 33 of the supporting jigs 30 whose jack portions 32 were not operated are recorded and the then height positions or variation positions at the ten positions at the first and second guide portions 3 and 4 are also recorded. Thereafter, in the same manner, the jack portions 32 of the remaining nine supporting jigs 30 are operated one after another, and in each operation, a load value detected by the load cell 33 of the supporting jig 30 whose jack portion 32a was operated, load values detected by the load cells 33 of the supporting jigs 30 whose jack portions 32 were not operated, and the then height positions or variation positions at the ten positions at the first and second guide portions 3 and 4 are recorded. Thereafter, the influence coefficient matrix is calculated in accordance with Equation 2 given below based on the obtained load values and height positions or variation positions.
(33)
(34) Note that, in Equation 2, F.sub.10,10 is a ten-by-ten matrix, and f.sub.1,1 to f.sub.10,10 in the matrix are the above-described load values detected by the ten load cells 33. Specifically, f.sub.1,1 to f.sub.10,1 are the load values detected after the jack portion 32 of one of the ten supporting jigs 30 (the supporting jig positioned at the position X.sub.1 in
(35) Further, S.sub.10,10 is a ten-by-ten matrix and, as described above, s.sub.1,1 to s.sub.10,10 in the matrix are the height positions or variation positions at the ten positions at the first and second guide portions 3 and 4 after the jack portions 32 of the supporting jigs 30 are operated. Specifically, the height positions or variation positions at the positions Y.sub.1 to Y.sub.10 after the jack portion 32 of the supporting jig 30 positioned at the position X.sub.1 is operated are s.sub.1,1 to s.sub.10,1, and similarly, the height positions or variation positions at the positions Y.sub.1 to Y.sub.10 after the jack portions 32 of the supporting jigs 30 positioned at the positions X.sub.2 to X.sub.10 are operated are s.sub.1,2 to s.sub.10,10.
(36) Next, the function of the motion error calculator 49 is described with reference to
(37) The position corrector 51 generates correction signals for the position control signals transmitted thereto from the position generator 43 based on the motion errors transmitted from the motion error calculator 49, and adds the generated correction signals to the position control signals transmitted from the position generator 43 to the position controller 44.
(38) The motion error judgment part 52 outputs an alarm signal when the maximum value of the motion errors received from the motion error calculator 49 exceeds a predetermined reference value, that is, any one of the motion errors calculated at the predetermined intervals in the motion direction exceeds a predetermined reference value, or when a variation value in the motion direction of the motion errors received from the motion error calculator 49 exceeds a predetermined reference value, that is, a difference between a received motion error and the preceding received motion error exceeds a predetermined reference value.
(39) Next, the process of machining a workpiece W with the machine tool 1 of the present embodiment having the above-described configuration will be described below.
(40) In the machine tool 1, first, a machining program stored in the machining program storage 41 is read out by the program analyzer 42 and commands relating to feed speeds and moving positions in the machining program are extracted by the program analyzer 42, and the extracted commands are transmitted to the position generator 43.
(41) The position generator 43 generates motion command signals based on signals transmitted thereto from the program analyzer 42, and transmits the generated motion command signals to the position controller 44 and the position corrector 51.
(42) By the way, in machining of workpiece performed by a machine tool, a horizontal level of the bed is one of factors having a large influence on machining accuracy. Therefore, if the horizontal level of the bed is changed during machining and the machining is continued in a state where the horizontal level is beyond a predetermined range, there occurs a problem that machining accuracy is deteriorated. Further, even if the horizontal level is to be adjusted after exceeding the predetermined range, since the horizontal level is not adjusted until it exceeds the predetermined range, there is a problem that machining accuracy is deteriorated (even though it is slight deterioration) and it is not possible to deal with a case where an extremely high machining accuracy is required.
(43) Accordingly, the machine tool 1 of this embodiment is configured to detect load values acting on the ten supporting jigs 30 with the load cells 33, estimate a motion locus of relative motion of a workpiece W and a tool T based on the detected load values, calculate motion errors based on the estimated motion locus, and add correction signals generated based on the calculated motion errors to the motion command signals (position control signals) transmitted from the position generator 43 to the position controller 44.
(44) Specifically, first, load values detected by the load cells 33 of the ten supporting jigs 30 are transmitted to the motion locus estimator 47. Subsequently, as described above, the motion locus estimator 47 estimates a motion locus of relative motion of a workpiece W and a tool T based on the received load values and the influence coefficient matrix stored in the influence coefficient storage 48, and transmits the estimated motion locus to the motion error calculator 49.
(45) The motion error calculator 49 calculates motion errors between the estimated motion locus and the reference motion locus based on the received motion locus and the reference motion locus stored in the reference motion locus storage 50, and transmits the calculated motion errors to the position corrector 51 and the motion error judgment part 52.
(46) Thereafter, the position corrector 51 generates correction signals for the position control signals transmitted thereto from the position generator 43 based on the received motion errors, and adds the correction signals to the position controls signals transmitted from the position generator 43 to the position controller 44.
(47) Thus, in the machine tool 1, motion errors between the estimated motion locus and the reference motion locus, in other words, differences between the then horizontal level and a reference horizontal level, are calculated, and signals for compensating for the motion errors are added to the position control signals even when the motion errors are very small. Therefore, the position control signals in which the motion errors have been compensated for are transmitted to the position controller 44
(48) Subsequently, the position controller 44 generates speed command signals based on the position controls signals to which the correction signals have been added, and transmits the generated speed command signals to the speed controller 45. The speed controller 45 generates current command signals based on the received speed command signals and transmits the generated current command signals to the current controller 46. The current controller 46 generates drive command signals based on the received current command signals and transmits the generated drive command signals to the X-axis servo motor 18, the Y-axis servo motor 21, and the Z-axis servo motor 26, and the X-axis servo motor 18, the Y-axis servo motor 21, and the Z-axis servo motor 26 are driven and controlled in accordance with the drive command signals.
(49) Note that, in this process, tracking errors related to speed is compensated for based on present speed data fed back from appropriate position detectors provided on the X-axis servo motor 18, the Y-axis servo motor 21, and the Z-axis servo motor 26, and tracking errors related to current are compensated for based on feedback of actual current signals.
(50) Note that, in a case where the maximum value of the motion errors calculated by the motion error calculator 49 is too large or in the case where the variation value of the motion errors in the motion direction (X-axis direction) is too large, if machining is performed in accordance with the position control signals to which the correction signals for compensating for the motion errors have been added, it is not possible to smoothly move the workpiece W and the tool T relative to each other, which may consequently cause a problem that accuracy of form and surface roughness of a machined surface are deteriorated, that is, it is not possible to maintain a high machining accuracy.
(51) Therefore, in the machine tool 1, the calculated motion errors are transmitted to the motion error judgment part 52 from the motion error calculator 49, and, as described above, the motion error judgment part 52 judges whether the maximum value of the received motion errors exceeds a predetermined reference value, or whether the variation value of the motion errors in the motion direction exceeds a predetermined reference value, and outputs an alarm signal when judging that the maximum value exceeds the predetermined reference value or that the variation value exceeds the predetermined reference value. Note that examples of the destination of the alarm signal output include functional units which control informing means, such as a functional unit which controls display of an operation panel and a functional unit which controls lighting of a warning lamp provided on the machine tool 1. In such a case, by displaying a warning on the operation panel or lighting the warning lamp, an operator is informed that the maximum value of the motion errors exceeds the reference value or that the variation value of the motion errors exceeds the reference value.
(52) Thus, informing an operator of the possibility that machining accuracy is not maintained (the maximum value of the motion errors exceeds the reference value or the variation value of the motion errors exceeds the reference value) causes the operator to stop machining the workpiece W and perform an operation of adjusting the horizontal level.
(53) As described above, according to the machine tool 1 of the present embodiment, since the motion errors are calculated based on the load values acting on the supporting jigs 30 and operation of the X-axis feed mechanism 15, operation of the Y-axis feed mechanism 20, and operation of the Z-axis feed mechanism 25 are controlled in accordance with the position control signals in which the calculated motion errors have been compensated for, it is possible to machine a workpiece W in a state where the motion errors have been compensated for even when the motion errors are very small, and therefore a very high machining accuracy is achieved. Further, in the case where a motion error which cannot be dealt with only by compensation occurs, an operator is informed thereof and is thereby prompted to perform an operation of adjusting the horizontal level, and a high machining accuracy is maintained by the operator performing the adjustment of the horizontal level.
(54) One embodiment of the present disclosure has been described above; however, the present disclosure is not limited thereto and can be implemented in other modes.
(55) For example, although Equation 1 given above is an equation for calculating height positions or variation positions at the positions (the ten positions Y.sub.1 to Y.sub.10) at the first and second guide portions 3 and 4 based on load values detected by the ten load cells 33, the equation can be generalized as an equation for calculating height positions or variation positions at m positions at the first and second guide portions 3 and 4 based on load values detected by n load cells 33, which is Equation 3 given below.
(56)
(57) Note that, in Equation 3, F is an n-by-one matrix and f.sub.1 to f.sub.n are load values detected by n load cells 33. Further, S is an m-by-one matrix and s.sub.1 to s.sub.m are height positions (variation values of height positions) at m positions at the first and second guide portions 3 and 4. Furthermore, A is an m-by-n matrix (influence coefficient matrix) and a.sub.1,1 to a.sub.m,n are constant values representing the degrees of influence of the loads acting on the supporting jigs 30 upon the height positions at the m positions, which values are previously calculated.
(58) Further, Equation 2 given above can be generalized as an equation (Equation 4) for calculating influence coefficients based on the load values detected by n load cells and the height positions or variation positions at m positions at the first and second guide portions 3 and 4. Note that it is preferred that n and m are equal to each other.
(59)
(60) In Equation 4, F is an n-by-m matrix, and f.sub.1,1 to f.sub.n,m are, similarly to the foregoing, load values obtained by operating the jack portions 32 of the n supporting jigs 30 one after another and, after each operation, detecting the loads with the load cell 33 of the supporting jig 30 whose jack portion 32 was operated and the load cells 33 of the supporting jigs 30 whose jack portions 32 were not operated. Further, S is an m-by-m matrix and s.sub.1,1 to s.sub.m,m are height positions or variation positions at m positions at the first and second guide portions 3 and 4 when the supporting jigs 30 are operated. Furthermore, A is, similarly to the foregoing, an m-by-n matrix, and a.sub.1,1 to a.sub.m,n are values calculated in accordance with Equation 4 based on the load values and the height positions or variation positions.
(61) Further, although, in the above embodiment, correction signals are generated based on the motion errors by the position corrector 51 and the position corrector 51 adds the correction signals to the position control signals, the present disclosure is not limited thereto and another configuration is possible in which position control signals in which the motion errors have been compensated for are generated by a position generator and the position control signals in which the motion errors have been compensated for are transmitted to a position controller.
(62) In this case, as shown in
(63) In the numerical controller 40, the motion error calculator 49 transmits generated motion errors to the position generator 43, and the position generator 43 generates position control signals in which the motion errors have been compensated for based on signals received from the program analyzer 42 and the motion errors received from the motion error calculator 49, and transmits the generated position control signals to the position controller 44.
(64) Note that the position generator 43 may be configured to generate position control signals in which the motion errors have been compensated for only when a predetermined code is written in the machining program and generate position control signals based on only signals received from the program analyzer 42 when the predetermined code is not written in the machining program, or may be configured to generate position control signals in which the motion errors have been compensated for regardless of whether a predetermined code is written in the machining program or not.
(65) Also in this configuration in which position control signals in which the motion errors have been compensated for are generated by the position generator 43, operation of the X-axis feed mechanism 15, operation of Y-axis feed mechanism 20, and operation of the Z-axis feed mechanism 25 can be controlled in accordance with position control signals in which the motion errors have been compensated for, similarly to the foregoing embodiment. Therefore, even when a minute motion error occurs, the motion error can be compensated for and a workpiece W can be machined with high accuracy.
(66) Further, although, in the above embodiment, position control signals in which the motion errors have been compensated for are transmitted to the position controller 44, the present disclosure is not limited thereto and another configuration is possible in which position control signals in which not only the motion errors but also pitch errors and straightness have been compensated for are transmitted to the position controller 44.
(67) Further, although, in the above embodiment, when a motion locus is estimated, the point P at which a Y-Z plane including the axis of the spindle 11 and the top surface of the table 5 intersect is a point to be corrected (correction target point) and height positions or variation positions of the point P are calculated at predetermined intervals in the moving direction of the table 5, the correction target point is not limited thereto and may be any other point.
(68) For example, the correction target point may be a center point P calculated by, as shown in
(69) Further, in the above embodiment, when the motion error judgment part 52 judges that the maximum value of the received motion errors exceeds a reference value or that a variation value of the motion errors exceeds a reference value, and outputs an alarm signal, an operator is informed thereof by informing means, e.g., an operation panel or a warning lamp; however, the present disclosure is not limited thereto and machining of the workpiece W may be stopped without informing an operator.