CONTROL APPARATUS OF MACHINE TOOL INCLUDING SPINDLE AXIS AND FEED AXIS
20200316743 ยท 2020-10-08
Inventors
Cpc classification
B23Q15/013
PERFORMING OPERATIONS; TRANSPORTING
B23Q17/0961
PERFORMING OPERATIONS; TRANSPORTING
G05B2219/49086
PHYSICS
International classification
B23Q17/09
PERFORMING OPERATIONS; TRANSPORTING
Abstract
A control apparatus of a machine tool including a feed axis, which is driven by a feed axis motor, includes a load torque estimation unit configured to estimate a load torque acting on a spindle motor, based on a torque command to the spindle motor which drives a spindle axis of the machine tool, and a speed of the spindle motor; and a speed control unit configured to control a speed of a feed axis motor such that the load torque estimated by the load torque estimation unit follows a prescribed load torque target value.
Claims
1. A control apparatus of a machine tool, comprising: a load torque estimation unit configured to estimate a load torque acting on a spindle motor, based on a torque command to the spindle motor which drives a spindle axis of the machine tool, and a speed of the spindle motor; and a speed changing unit configured to change a speed of a feed axis motor such that the load torque estimated by the load torque estimation unit follows a prescribed load torque target value.
2. The control apparatus of the machine tool according to claim 1, further comprising a first gain changing unit configured to change a control gain which is used for the changing of the speed of the feed axis motor in the speed changing unit, in accordance with the speed of the spindle motor or a frequency of processing disturbance that is a value calculated by multiplying the speed of the spindle motor by the number of blades of a tool provided on the spindle axis.
3. The control apparatus of the machine tool according to claim 1, further comprising a second gain changing unit configured to change a gain which is used for the estimating of the load torque in the load torque estimation unit, in accordance with the speed of the spindle motor or a frequency of processing disturbance that is a value calculated by multiplying the speed of the spindle motor by the number of blades of a tool provided on the spindle axis.
Description
BRIEF DESCRIPTION OF THE DRAWINGS
[0011] The present invention will be more clearly understood with reference to the following accompanying drawings:
[0012]
[0013]
[0014]
[0015]
[0016]
DETAILED DESCRIPTION
[0017] Hereinafter, a control apparatus of a machine tool including a spindle axis and a feed axis will be described with reference to the drawings. For the purpose of easier understanding, the scale in the drawings is changed as appropriate. A mode illustrated in each drawing is an example for implementation, and is not limited to an embodiment that is illustrated.
[0018]
[0019] As illustrated in
[0020] The spindle motor control system 20 is configured to control the rotation of the spindle motor 3 which drives the spindle axis on which a tool or the like is provided. The spindle motor control system 20 includes, for example, a position command generation unit 21, a position control unit 22, a speed control unit 23, and a current control unit 24. The position command generation unit 21 generates a position command to the spindle motor 3, by the control by an upper-level control apparatus (not illustrated) such as a numerical control apparatus. The position control unit 22 generates a speed command, based on the position command generated by the position command generation unit 21 and information (position feedback) relating to a rotor actual position of the spindle motor 3. The speed control unit 23 generates a torque command, based on the speed command generated by the position control unit 22 and the speed (speed feedback) of the spindle motor 3, which is detected by an encoder 31. The current control unit 24 generates a current command, based on the torque command to the spindle motor 3, which is generated by the speed control unit 23. Based on a switching command generated on the basis of the current command generated by the current control unit 24 and a current (current feedback) which flows in a motor winding of the spindle motor 3 and is detected by a current detector (not illustrated), an inverter (not illustrated) for the spindle axis ON/OFF operates a semiconductor switching element provided therein, converts DC power to AC power for motor driving, and supplies the AC power to the spindle motor 3. Thereby, the spindle motor 3 operates based on the AC power supplied from the inverter for the spindle axis. By driving the spindle motor 3, the spindle axis of the machine tool is driven. The configuration of the spindle motor control system 20, which is described here, is merely an example, and the configuration of the spindle motor control system 20 may be defined by technical terms including torque control unit, switching control unit, etc. Alternatively, the configuration of the spindle motor control system 20 may be defined by integrating, as appropriate, two or more of the position command generation unit 21, position control unit 22, speed control unit 23, current control unit 24, torque control unit, switching control unit, etc. Alternatively, the configuration of the spindle motor control system 20 may be defined by omitting any of the position command generation unit 21, position control unit 22, speed control unit 23, current control unit 24, torque control unit, switching control unit, etc.
[0021] The feed axis motor control system 10 is configured to control the rotation of the feed axis motor 2 which drives the feed axis that moves the spindle axis relative to the work (object to be processed). The feed axis motor control system 10 according to the present embodiment includes a load torque estimation unit 11, a speed changing unit 12, a first gain changing unit 13, a second gain changing unit 14, and a storage unit 15. The feed axis motor control system 10 further includes a speed control unit 16 and a current control unit 17.
[0022] The load torque estimation unit 11 estimates a load torque acting on the spindle motor 3, based on the torque command to the spindle motor 3 which drives the spindle axis of the machine tool, and the speed of the spindle motor 3. The load torque estimation unit 11 acquires the torque command to the spindle motor 3 from the speed control unit 23 in the spindle motor control system 20, and acquires the speed of the spindle motor 3 from the encoder 31.
[0023] A configuration example of the load torque estimation unit 11 will be described.
[0024] The load torque estimation unit 11, which estimates the load torque relating to the spindle motor 3, includes an observer 110. In
[0025] The torque command A to the spindle motor 3 is also input to the observer 110. The observer 110 is configured to estimate a disturbance load torque, based on the torque command A to the spindle motor 3 and the actual speed (i.e. speed feedback) V.sub.1 of the spindle motor 3. The torque command A to the spindle motor 3 is multiplied by K.sub.t/J in an element 111, and is output to an adder 112. The adder 112 adds a feedback signal from an arithmetic element 114 (to be described later) to the output of the element 111. An adder 113 adds a feedback signal from an arithmetic element 115 (to be described later) to an output of the adder 112. The unit of outputs of the adder 112 and adder 113 is that of acceleration. An output of the adder 113 is input to an integrator 116, and, as a result, the integrator 116 outputs an estimated speed V.sub.2 of the spindle motor 3.
[0026] A difference between the estimated speed V.sub.2 of the spindle motor 3 and the actual speed V.sub.1 of the spindle motor 3 is calculated by a subtractor 117, and the calculated difference is fed back to each of the arithmetic element 114 and arithmetic element 115. The arithmetic element 114 has a proportionality factor K1. The unit of the proportionality factor K1 is sec.sup.1. In addition, the arithmetic element 115 has an integration constant K2. The unit of the integration constant K2 is sec.sup.2.
[0027] In the load torque estimation unit 11 illustrated in
[0028] The estimated speed V.sub.2 of the spindle motor 3 is expressed by equation 2 below.
[0029] A relationship of equation 3 below is established between an estimated load torque B.sub.2 of the spindle motor 3 and the actual speed V.sub.1 and estimated speed V.sub.2 of the spindle motor 3.
[0030] From equations 1, 2 and 3, the estimated load torque B.sub.2 of the spindle motor 3 is expressed by equation 4 below.
[0031] From equation 4, it is understood that the disturbance load torque B.sub.1 can be estimated, like B.sub.2, by the observer 110.
[0032] The above is an estimation process by the load torque estimation unit 11.
[0033] Returning to the description of
[0034] Since the speed command to the feed axis motor 2 can be changed also by changing an override, the speed changing unit 12 may generate such an override as to decrease the difference between the load torque target value and the estimated load torque to zero. In general, in the numerical control apparatus, the speed (rotational speed) can be changed by multiplying the speed command to the motor by a multiplying factor (e.g. 0 to 200%) called override.
[0035] The speed control unit 16 generates a torque command, based on the speed command generated by the speed changing unit 12 and the speed (speed feedback) of the feed axis motor 2, which is detected by an encoder 32. The current control unit 17 generates a current command, based on the torque command to the feed axis motor 2, which is generated by the speed control unit 16. The speed control unit 16 and current control unit 17 may be constituted as one unit, and in this case the current command is generated based on the speed command generated by the speed changing unit 12 and the speed (speed feedback) of the feed axis motor 2, which is detected by the encoder 32.
[0036] Based on a switching command generated on the basis of the current command generated by the current control unit 17 and a current (current feedback) which flows in a motor winding of the feed axis motor 2 and is detected by a current detector (not illustrated), an inverter (not illustrated) for the feed axis ON/OFF operates a semiconductor switching element provided therein, converts DC power to AC power for motor driving, and supplies the AC power to the feed axis motor 2. Thereby, the feed axis motor 2 operates, based on the AC power supplied from the inverter for the feed axis. The feed axis is driven by the feed axis motor 2, and a tool 4 is moved relative to a work 5.
[0037]
[0038] A control gain, which is used for the changing of the speed of the feed axis motor 2 in the above-described speed changing unit 12, is changed by the first gain changing unit 13 in accordance with the speed of the spindle motor 3, or a frequency of processing disturbance that is a value calculated by multiplying the speed of the spindle motor 3 by the number of blades of the tool provided on the spindle axis. The details of the changing process of the control gain of the speed changing unit 12 by the first gain changing unit 13 will be described later.
[0039] In addition, a gain, which is used for the estimation of the load torque in the above-described load torque estimation unit 11, is changed by the second gain changing unit 14 in accordance with the speed of the spindle motor 3, or a frequency of processing disturbance that is a value calculated by multiplying the speed of the spindle motor 3 by the number of blades of the tool provided on the spindle axis. The details of the changing process of the gain of the load torque estimation unit 11 by the second gain changing unit 14 will be described later.
[0040] Information relating to the number of blades of the tool 4 provided on the spindle axis, which is used for the changing processes by the first gain changing unit 13 and second gain changing unit 14, is stored in the storage unit 15. The storage unit 15 is composed of, for example, an electrically erasable programmable nonvolatile memory such as an EEPROM (trademark), or a random access memory which is capable of high-speed read/write, such as a DRAM or an SRAM.
[0041] The load torque estimation unit 11, speed changing unit 12, first gain changing unit 13, second gain changing unit 14, speed control unit 16, current control unit 17, position command generation unit 21, position control unit 22, speed control unit 23 and current control unit 24 may be constituted, for example, in a software program form, or may be constituted by a combination between various kinds of electronic circuits and software programs. When the load torque estimation unit 11, speed changing unit 12, first gain changing unit 13, second gain changing unit 14, speed control unit 16, current control unit 17, position command generation unit 21, position control unit 22, speed control unit 23 and current control unit 24 are constituted in the software program form, the functions of the above-described respective units can be realized by causing arithmetic devices such as a DSP and FPGA, which are provided, for example, in a numerical control apparatus of a machine tool, to operate according to the software programs. Alternatively, the load torque estimation unit 11, speed changing unit 12, first gain changing unit 13, second gain changing unit 14, speed control unit 16, current control unit 17, position command generation unit 21, position control unit 22, speed control unit 23 and current control unit 24 may be realized as semiconductor integrated circuits in which software programs for realizing the functions of the respective units are written.
[0042]
[0043] In the state in which the driving of the spindle motor 3 is controlled by the spindle motor control system 20 in the control apparatus 1 of the machine tool, the load torque estimation unit 11 acquires, in step S101, a torque command to the spindle motor 3 from the speed control unit 23 in the spindle motor control system 20.
[0044] In step S102, the load torque estimation unit 11 acquires the speed of the spindle motor 3 from the encoder 31. Note that step S101 and step S102 may be executed in reverse order.
[0045] In step S103, the load torque estimation unit 11 estimates a load torque acting on the spindle motor 3, based on the torque command to the spindle motor 3 that drives the spindle axis of the machine tool, and the speed of the spindle motor 3.
[0046] In step S104, the speed changing unit 12 executes control to change the speed of the feed axis motor 2, in such a manner that the load torque estimated by the load torque estimation unit 11 follows a prescribed load torque target value. To be more specific, the speed changing unit 12 calculates a difference between the load torque target value and the estimated load torque acquired from the load torque estimation unit 11, and generates such a speed command to the feed axis motor 2 as to decrease the difference to zero. The speed command for changing the speed of the feed axis motor 2, which is generated by the speed changing unit 12, is sent to the speed control unit 16, and control to change the speed (rotational speed) of the feed axis motor 2 is executed based on the speed command.
[0047] In this manner, according to the present embodiment, in a machine tool including a spindle axis which is driven by a spindle motor and a feed axis which is driven by a feed axis motor, since the load torque of the spindle motor can be kept at a desired value, both the avoidance of breakage of a tool and occurrence of abnormality of a work due to an increase of the load torque on the spindle motor and the enhancement of processing efficiency of the machine tool can be consistently achieved.
[0048] Next, a description will be given of the changing process of the control gain of the speed changing unit 12 by the first gain changing unit 13 and the changing process of the gain of the load torque estimation unit 11 by the second gain changing unit 14. Table 1 illustrates a relationship between the speed of the spindle motor 3 or the frequency of processing disturbance, and the filter gain of the load torque estimation unit 11 and the gain of the speed changing unit 12, in the changing process of the control gain of the speed changing unit 12 by the first gain changing unit 13 and the changing process of the gain of the load torque estimation unit 11 by the second gain changing unit 14.
TABLE-US-00001 TABLE 1 Load torque Speed estimation unit changing unit Frequency of Filter gain: Small Gain: Small processing (Time constant: Large) disturbance: Low (Speed of Spindle motor) Frequency of Filter gain: Large Gain: Large processing (Time constant: Small) disturbance: High (Speed of Spindle motor)
[0049] The first gain changing unit 13 changes control gains K.sub.i and K.sub.p which are used for the changing of the speed of the feed axis motor 2 in the speed changing unit 12, in accordance with the speed of the spindle motor 3, or the frequency of processing disturbance that is a value calculated by multiplying the speed of the spindle motor 3 by the number of blades of the tool 4 provided on the spindle axis. For example, when the control gains K.sub.i and K.sub.p are changed in accordance with the speed of the spindle motor 3, the first gain changing unit 13 needs to increase (quicken) the responsivity of control on the feed axis motor 2 as the speed of the spindle motor 3 is faster (higher), and thus the first gain changing unit 13 sets the control gains K.sub.i and K.sub.p to large values. For example, the control gains K.sub.i and K.sub.p may be changed in accordance with the frequency of processing disturbance that is a value calculated by multiplying the speed of the spindle motor 3 by the number of blades of the tool 4 provided on the spindle axis. Since the spindle axis on which the tool 4 is provided is rotated by the spindle motor 3, a load torque of a frequency, which is calculated by multiplying the speed of the spindle motor 3 by the number of blades of the tool 4, occurs on the spindle motor 3 as processing disturbance. Thus, since the first gain changing unit 13 needs to increase (quicken) the responsivity of control on the feed axis motor 2 as the frequency of processing disturbance (load torque) on the spindle motor 3 is higher, the first gain changing unit 13 sets the control gains K.sub.i and K.sub.p to large values.
[0050] In addition, the second gain changing unit 14 changes gains K.sub.1 and K.sub.2 which are used for the estimation of the load torque in the load torque estimation unit 11, in accordance with the speed of the spindle motor 3, or the frequency of processing disturbance that is a value calculated by multiplying the speed of the spindle motor 3 by the number of blades of the tool 4 provided on the spindle axis. The control gains K.sub.1 and K.sub.2, which are used for the estimation of the load torque, are changed by changing a time constant of a filter gain in the load torque estimation unit 11. For example, when the gains K.sub.1 and K.sub.2 are changed in accordance with the speed of the spindle motor 3, the responsivity of an estimated load torque needs to be increased as the speed of the spindle motor 3 is faster (higher), and thus the second gain changing unit 14 sets the gains K.sub.1 and K.sub.2 to large values (i.e. sets the time constant of the filter gain to a small value). As the time constant of the filter gain is smaller, the averaging time of the filter is shorter. Since the responsivity does not need to be increased when the speed of the spindle motor 3 is slow (low), the gains K.sub.1 and K.sub.2 are set to small values (i.e. the time constant of the filter gain is increased) and the stability is enhanced. For example, the gains K.sub.1 and K.sub.2 may be changed in accordance with the frequency of processing disturbance that is a value calculated by multiplying the speed of the spindle motor 3 by the number of blades of the tool 4 provided on the spindle axis. In this case, the second gain changing unit 14 needs to enhance (quicken) the responsivity of control on the feed axis motor 2 as the frequency of the processing disturbance (load torque) on the spindle motor 3 is higher, and thus the second gain changing unit 14 sets the gains K.sub.1 and K.sub.2 to large values (i.e. sets the time constant of the filter gain to a small value).
[0051] Note that when the speed of the spindle motor 3 is slow (low), only the control gains K.sub.i and K.sub.p of the speed changing unit may be changed to small values by the first gain changing unit 13, without the filter gain of the load torque estimation unit 11 being changed to a small value by the second gain changing unit 14.
[0052]
[0053] When a transfer function, which is used for the estimation of the load torque in the load torque estimation unit 11, is G(s), a cutoff frequency .sub.n and an attenuation coefficient , which are based on the filter gain time constant in the load torque estimation unit 11, can be expressed as in equation 5 below.
[0054] When the gains K.sub.1 and K.sub.2, which are used for the estimation of the load torque in the load torque estimation unit 11, are set, the cutoff frequency .sub.n is first set by adjusting the gain K.sub.2. Then, by adjusting the gain K.sub.1, the attenuation coefficient is adjusted to become closer to 1/2.
[0055] Note that the gains K.sub.1 and K.sub.2 in the load torque estimation unit 11 and the control gains K.sub.i and K.sub.p in the speed changing unit 12 are basically unchanged while the machine tool, which the control apparatus 1 controls, is processing an identical product.
[0056] However, in the case of processing an identical product, when a speed command to the spindle motor 3 has been changed or a load torque target value to the spindle motor 3 is changed, the changing process of the control gain of the speed changing unit 12 by the first gain changing unit 13 and the changing process of the gain of the load torque estimation unit 11 by the second gain changing unit 14 are executed. For example, the speed command to the spindle motor 3 has been changed, the first gain changing unit 13 and second gain changing unit 14 detect the change of the speed command, for example, from an operation program of the spindle motor 3, and automatically execute the above-described changing processes. In addition, for example, when the load torque target value to the spindle motor 3 is changed, the first gain changing unit 13 and second gain changing unit 14 detect the change of the load torque target value from the upper-level numerical control apparatus (not illustrated), and automatically execute the above-described changing processes.
[0057] Further, when the tool 4 of the machine tool which the control apparatus 1 controls has been changed, or when a product which the machine tool processes has been changed, the changing process of the control gain of the speed changing unit 12 by the first gain changing unit 13 and the changing process of the gain of the load torque estimation unit 11 by the second gain changing unit 14 are executed. For example, the first gain changing unit 13 and second gain changing unit 14 receive, from the upper-level numerical control apparatus, a notification relating to the change of the tool 4 or the change of the product which the machine tool processes, and automatically execute the above-described changing processes.
[0058] The changing processes may be automatically executed when a worker performed a predetermined operation via an input device such as a touch panel or an operation key of the upper-level numerical control apparatus (not illustrated).
[0059] As described above, in the present embodiment, by executing the changing process of the control gain of the speed changing unit 12 by the first gain changing unit 13 and the changing process of the gain of the load torque estimation unit 11 by the second gain changing unit 14, the load torque of the spindle motor can properly be kept at a desired value.
[0060] According to one aspect of the present disclosure, in a machine tool including a spindle axis which is driven by a spindle motor and a feed axis which is driven by a feed axis motor, a control apparatus, which can keep a load torque on the spindle motor at a desired value, can be realized.