This application is a U.S. National Phase patent application of International Patent Application No. PCT/JP2014/055130, filed on Feb. 28, 2014, which claims the priority of Japanese Application No. 2013-045163 filed Mar. 7, 2013, which is hereby incorporated by reference in the present disclosure in its entirety.
The present invention relates to a feed axis control method and feed axis control of a machine tool, which control a servo motor for driving the feed axis of a machine tool by means of a control circuit having a position feedback loop and a velocity feedback loop.
A method of controlling a servo motor for driving a feed axis through a control circuit in which cascade-connection is formed by providing a velocity feedback loop inside the position feedback loop, has thus far been known (for example, as disclosed in Patent Literature 1). The method according to PTL 1 includes calculating a predicted processing load on the basis of processing data such as the shape of a work, a processing instruction based on a processing program, and a position command, and adding the predicted processing load as predicted load command to an acceleration command to be outputted to a servo amplifier, in order to cope with a delay of the servo control unit arising from load fluctuation during the processing.
Patent Literature 1: Japanese Patent No. 3454616
However, some types of disturbances acting on the feed axis are unpredictable. Therefore, the method in which the predicted processing load is calculated and added to the acceleration command as the control method disclosed in PTL 1 is not sufficient for handling the unpredictable disturbances.
In an aspect, the present invention provides a machine tool feed axis control method including forming a cascade-connection in which a velocity feedback loop including a velocity control unit is provided inside a position feedback loop including a position control unit to which a position command is inputted, and controlling a servo motor for driving the feed axis in accordance with a torque command outputted from a velocity control unit, the method including subtracting from the torque command a first state feedback signal obtained by multiplying an output of the velocity feedback loop by a first gain and a second state feedback signal obtained by multiplying an output of the position feedback loop by a second gain, and outputting the torque command after the subtraction to a control object including the servo motor.
In another aspect, the present invention provides a machine tool feed axis control device including a cascade-connection in which a velocity feedback loop including a velocity control unit is provided inside a position feedback loop including a position control unit to which a position command is inputted, and controlling a servo motor for driving the feed axis in accordance with a torque command outputted from a velocity control unit, the device including a first multiplication unit which multiplies an output of the velocity feedback loop by a first gain, a second multiplication unit which multiplies an output of the position feedback loop by a second gain, and an output unit which subtracts an output of the first multiplication unit and an output of the second multiplication unit from the torque command, and outputs the torque command after the subtraction to a control object including the servo motor.
With the present invention, the torque command from which the state feedback signal, obtained by multiplying the output of the feedback loop by the gain, has been subtracted is outputted to the control object. Such an arrangement stabilizes the control system, and allows the feedback gain to be increased. Therefore, many types of disturbances can be effectively suppressed.
Hereafter, an embodiment of a machine tool feed axis control device according to the present invention will be described, with reference to
As illustrated in
The servo motor 10 includes a built-in rotary encoder which detects a rotation amount of the motor. A position detector 12 detects a rotational position of the motor on the basis of a signal from the rotary encoder, and feeds back the position signal q to the adder 4. The adder 4 subtracts the position signal q from the position command qr and outputs the subtracted value to the position control unit 5. The velocity detector 13 differentiates the signal from the rotary encoder to thereby detect the motor rotation velocity, and feeds back a velocity signal ω to the adder 6.
The position command qr outputted from the interpolation unit 3 is also inputted to a position feed forward control unit 15. The position feed forward control unit 15 outputs a feed forward command related to the velocity (velocity feed forward command) to the velocity feed forward control unit 14 and the adder 6. The adder 6 adds the velocity feed forward command to and subtracts the velocity signal ω from the velocity command ωr, and outputs the obtained value to the velocity control unit 7. The velocity feed forward control unit 14 outputs a feed forward command related to the torque (torque feed forward command) to the adder 8. The adder 8 adds the torque feed forward command to the torque command τ, and outputs the obtained value to the servo amplifier 9.
First, the feedback loop 20A will be described. The feedback loop 20A is a double feedback loop including the position feedback loop and the velocity feedback loop provided inside the position feedback loop, and constitutes a cascade connection. To be more detailed, first the position command qr is inputted to a compensator of the position feedback loop, i.e., a position compensator 22, through an adder 21. The position compensator 22 is a function of S represented by Cp. The position compensator 22 multiplies a difference between the inputted position command and the position feedback loop by a gain (Cp), to thereby generate the velocity command ωr.
The velocity command ωr outputted from the position compensator 22 is inputted in a compensator of the velocity feedback loop, i.e., a velocity compensator 24, through an adder 23. The velocity compensator 24 is a function of S represented by Cv. The velocity compensator 24 multiplies a difference between the inputted velocity command and the velocity feedback loop by a gain (Cv), to thereby generate the torque command τ. The torque command τ outputted from the velocity compensator 24 is turned into a torque command τ1 through an adder 25, and then to a torque command τ2 through an adder 26.
The torque command τ2 is inputted in a control object, i.e., a velocity control object 27 of the velocity feedback loop. The velocity control object 27 is modeled by Pv. The velocity control object 27 outputs the velocity signal ω representing the detected value of the motor rotation velocity. The velocity signal ω is inputted in a control object of the position feedback loop, i.e., a position control object 28, and fed back to the adder 23. The position control object 28 is modeled by Pp. The position control object 28 outputs the position signal q representing the detected value of the rotational position of the motor. The position signal q is fed back to the adder 21.
The machine tool may be subjected to a disturbance, which is an uncertainty factor arising from a cutting load or other conditions. In
Taking the mentioned point into account, in this embodiment the state feedback loop 20C is added to the control circuit, so as to correct the torque command with the state feedback obtained by multiplying the output of the control objects 27 and 28 by the gain. To be more detailed, the velocity signal ω outputted from the velocity control object 27 is inputted in the velocity gain setter 30. The velocity gain setter 30 multiplies the velocity signal ω by a state feedback gain related to the velocity kv (velocity gain), to thereby generate the torque command. The position signal q outputted from the position control object 28 is inputted in the position gain setter 31. The position gain setter 31 multiplies the position signal q by a state feedback gain kp related to the position (position gain), to thereby generate the torque command.
The torque commands respectively outputted from the gain setters 30 and 31 are added in an adder 32 and subtracted from the torque command τ1 in the adder 26. The torque command τ1 is thus corrected with the state feedback, which contributes to improve the stability of the control objects 27 and 28. Therefore, the gain of the compensators 22 and 24 can be increased, so that the suppression performance against the disturbance d can be improved.
The position gain kp and the velocity gain kv, respectively set in advance by the position gain setter 31 and the velocity gain setter 30 may be determined through a designing method based on an optimal regulator. The gain of the compensators 22 and 24 in the feedback loop may be determined by increasing the gain to the point where the control system oscillates, and multiplying the gain at that point by a predetermined safety factor. Alternatively, a designing method based on an optimal servo control may be adopted to decide the gain of the gain setters 31 and 30, and the compensators 22 and 24.
The configuration of the feed forward loop 20B will now be described. First the position command qr is inputted in a compensator of the feed forward loop related to the position, i.e., a position compensator 33. The position compensator 33 multiplies the position command qr by the reciprocal Pp0−1 of a nominal model Pp0 of the position control object 28, to thereby generate the velocity command. Here, the nominal model Pp0 refers to a position control object based on the design value. The velocity command outputted from the position compensator 33 is inputted in a compensator of the feed forward loop related to the velocity, i.e., a velocity compensator 34, and added in the adder 23.
The velocity compensator 34 multiplies the velocity command outputted from the position compensator 33 by a sum of the reciprocal Pv0−1 of a nominal model Pv0 of the velocity control object 27 and the velocity gain kv, to thereby generate the torque command. The nominal model Pv0 refers to a velocity control object based on the design value. The position command qr is also inputted in a compensator of the feed forward loop related to the velocity, i.e., a velocity compensator 35. The velocity compensator 35 multiplies the position command qr by the position gain kp, to thereby generate the torque command. The torque commands respectively outputted from the velocity compensators 34 and 35 are added in an adder 36, and then in the adder 25.
Thus, in the feed forward loop 20B the position command and the velocity command, respectively multiplied by the position gain kp and the velocity gain kv, are outputted, and added to the torque command τ. Such an arrangement enables a high-quality feed forward control to be performed, in which the subtraction of the values obtained by respectively multiplying the position command and the velocity command by the position gain kp and the velocity gain kv from the torque command τ1 in the state feedback loop 20C is taken into account.
To prevent such delay of the movement, it is preferable to increase the gain of the compensators 22 and 24 of the feedback loop.
In this embodiment, as described above, the velocity feedback loop is provided inside the position feedback loop so as to form the cascade connection, the state feedback signal which is related to velocity loop and obtained by multiplying the output of the velocity feedback loop by the velocity gain kv and the state feedback signal which is related to position loop and obtained by multiplying the output of the position feedback loop by the position gain kp are subtracted from the torque command τ1, and the torque command τ2 obtained by the mentioned subtraction is outputted to the velocity control object 27. Such an arrangement stabilizes the control object, and therefore the feedback gain of the compensators 22 and 24 of the feedback loop 20A can be increased and the impact of the disturbance d can be effectively suppressed.
In addition, in the feed forward loop 20B the position command qr is multiplied by the gain corresponding to the gains kp and kv of the state feedback loop 20C, and added to the torque command τ. Such an arrangement mitigates the influence of the state feedback loop 20C and suppresses the positional error when the position command is changed, thereby preventing the movement locus from being collapsed during the circular processing.
In
1/((Jm+Jk)·s) (I)
In the equation (I) above, (Jm+Jk) may be fixed by, for example, gradually changing the frequency of the servo motor 10 to obtain frequency responses, and obtaining the relation between the frequency and the gain (transfer function) on the basis of the command value and the output of the position detector 12 corresponding to each frequency.
The velocity signal ω outputted from the velocity control object 27B is inputted in the position control object 28. The position control object 28 is an integrator and expressed by 1/s. The velocity signal ω outputted from the velocity control object 27B is inputted in a velocity gain setter 30A, and the position signal q outputted from the position control object 28 is inputted in a position gain setter 31A. The velocity gain setter 30A multiplies the velocity signal ω by a velocity gain k1. The position gain setter 31A multiplies the position signal q by a position gain k2. The torque commands outputted from the gain setters 30A and 31A are added in the adder 32, and outputted to a current converter 32A. The current converter 32A is represented by the reciprocal Kt−1 of the torque constant Kt, and converts the torque command into a current command. The current command outputted from the current converter 32A is added in the adder 29, so that the control signal it is corrected.
The position compensator 33 in the feed forward loop 20B is represented by the reciprocal s of the position control object 28, and a model of the velocity compensator 35 may be expressed as the following equation (II) using a nominal model Kt0 of the torque constant Kt and the position gain k2.
Kt0−1·k2 (II)
A model of the velocity compensator 34 may be expressed as the following equation (III) using a nominal model Jk0 of the load inertia Jk, a nominal model Jm0 of the motor inertia Jm, the Laplacian s, the velocity gain k1, and the reciprocal Kt0−1 of a nominal model Kt0 of the torque constant Kt.
Kt0−1((Jm0+Jk0)s+k1) (III)
When the shaft rigidity is low, the control system may be construed as a two-inertia system. In this case, as illustrated in the figure, the gain of the state feedback loop 20C may be divided into a feedback gain k1 related to the velocity of the servo motor 10 (motor velocity gain), a feedback gain k2 related to the position of the servo motor 10 (motor position gain), a feedback gain k3 related to the velocity of the load (load velocity gain), and a feedback gain k4 related to the position of the load (load position gain), to thereby express the velocity gain kv and the position gain kp as a function.
A model Pp of the position control object 28 in
Pp=(Cs+K)/((Jk2+Cs+K)s) (IV)
A model Pv of the velocity control object 27 in
Pv=(Jks2+Cs+K)Kt/((JmJks2+C(Jm+Jk)s+K(Jm+Jk))s) (V)
Pp0−1, and Pv0−1 included in the feed forward loop 20B are the reciprocals of the nominal model Pp0, Pv0 of Pp and Pv in the equations (IV) and (V), respectively, and may be expressed as the following equations (VI), (VII). K0 and C0 are nominal models of the rigidity K and the attenuation coefficient C, respectively.
Pp0−1=((Jk0s2+C0s+K0)s/(C0s+K0)) (VI)
Pv0−1=((Jm0Jk0s2+C0(Jm0+Jk0)s+K0(Jm0+Jk0))s)/(Jk0s2+C0s+K0)Kt0 (VII)
Generally, a motion equation of the machine including the rotary feed axis is expressed as the following equation (VIII).
τ=M(q)·dω/dt+h(ω,q) (VIII)
When the machine includes 5 axises, q in the equation (VIII) represents a commanded position vector containing the components of the X-direction, the Y-direction, the Z-direction, the A-axis, and the C-axis, ω represents a value obtained by a first order differentiation of the commanded position vector q with time, dω/dt represents a value obtained by a second order differentiation of the commanded position vector q with time, M(q) represents the inertia matrix of 5 rows by 5 columns, h(ω, q) represents a non-linear force vector determined by using the velocity and the position as parameters, such as Coriolis force, centrifugal force, and a gravity term.
With reference to the foregoing, a block diagram modeled by a 5-axis vector or a matrix of 5 rows by 5 columns is illustrated in
In
τ=M(q)·dω/dt (IX)
Pv=Kt·M(q)−1·1/s·I (X)
In the state feedback loop 20C, a non-linear force vector h0 (ω, q) of the nominal model is added, contrary to the subtraction of the non-linear force vector h (ω, q) in the feedback loop 20A.
The specific application examples of the block diagram of
Although the control circuit includes the feedback loop 20A, the feed forward loop 20B, and the state feedback loop 20C constituting the cascade connection in the foregoing embodiment, the configuration of the feed axis control device is not limited to the above as long as at least the feedback loop 20A and the state feedback loop 20C are included. The most prominent feature of the machine tool feed axis control method according to the present invention lies in subtracting from the torque command τ the first state feedback signal obtained by multiplying the output of the velocity feedback loop by the velocity gain kv (first gain) and the second state feedback signal obtained by multiplying the output of the position feedback loop by the position gain kp (second gain), and outputting the torque command τ obtained by the mentioned subtraction to the velocity control object 27 including the servo motor 10, and such feature may be modified in various manners.
The description thus far given is merely exemplary, and in no way intended to limit the present invention to the foregoing embodiment and the variations thereof. The constituents of the embodiment and the variations thereof include those that may be substituted or are obviously substitutable without compromising the identity of the invention. In other words, different configurations which can be reached within the technical scope of the present invention will also be included in the present invention. Further, the foregoing embodiment may be combined with one or a plurality of the variations.
10 servo motor
20A feedback loop
20B feed forward loop
20C state feedback loop
22 position compensator
24 velocity compensator
25, 26 adder
27 velocity control object
30, 31 gain setter
34, 35 velocity compensator
Number | Date | Country | Kind |
---|---|---|---|
2013-045163 | Mar 2013 | JP | national |
Filing Document | Filing Date | Country | Kind |
---|---|---|---|
PCT/JP2014/055130 | 2/28/2014 | WO | 00 |
Publishing Document | Publishing Date | Country | Kind |
---|---|---|---|
WO2014/136686 | 9/12/2014 | WO | A |
Number | Name | Date | Kind |
---|---|---|---|
5384525 | Kato | Jan 1995 | A |
5418440 | Sakaguchi | May 1995 | A |
5869108 | Hiraoka | Feb 1999 | A |
6211636 | Matsubara | Apr 2001 | B1 |
6211640 | Fujisaki | Apr 2001 | B1 |
7421308 | Nussbaum | Sep 2008 | B2 |
9360849 | Kawana | Jun 2016 | B2 |
9477218 | Kawana | Oct 2016 | B2 |
9588509 | Kawana | Mar 2017 | B2 |
20030111973 | Iwashita | Jun 2003 | A1 |
20050067996 | Eba | Mar 2005 | A1 |
20080058982 | Gray | Mar 2008 | A1 |
20120283851 | Yamamoto | Nov 2012 | A1 |
20130138236 | Nagaoka | May 2013 | A1 |
20130173026 | Kawana | Jul 2013 | A1 |
20130173045 | Kawana | Jul 2013 | A1 |
20130173046 | Kawana | Jul 2013 | A1 |
Number | Date | Country |
---|---|---|
103189807 | Jul 2013 | CN |
61-58013 | Mar 1986 | JP |
H-6-4809 | Jan 1994 | JP |
3454616 | Oct 2003 | JP |
2010-97310 | Apr 2010 | JP |
WO-2012057219 | May 2012 | WO |
Entry |
---|
International Search Report mailed May 13, 2014, directed to International Application No. PCT/JP2014/055130, 1 page. |
Tungpataratanawong, S. et al. “Force Sensor-less Workspace Impedance Control Considering Resonant Vibration of Industrial Robot”, IECON 2005. 31st Annual Conference of IEEE, Nov. 6, 2005, Piscataway, NJ, pp. 1878-1883. |
Spong, Mark W. et al. (1989). “Multivariable Control” Chapter 8 in Robot Dynamics and Control. John Wiley and Sons, LLP, pp. 216-240. |
Number | Date | Country | |
---|---|---|---|
20160004248 A1 | Jan 2016 | US |