Patent Publication Number: US-6211636-B1

Title: Pressing machine and motor torque control method in pressing machine

Description:
FIELD OF THE INVENTION 
     The present invention relates to a pressing machine for conducting pressing by means of motor output torque and to a torque control method for a motor controlling this press. 
     DESCRIPTION OF THE RELATED ART 
     Pressing machines for conducting pressing by controlling pressing force by controlling the output torque of a motor, are commonly known. This conventional pressing force control obtains the required pressing force by applying a torque limit to the output torque of a motor, in other words, by restricting the output torque of the motor. 
     In this case, the torque limit value for the motor is derived from the intended pressing force and the static relationship between the torque generated by the motor and the pressing force. For example, if a simplified pressing machine as illustrated in FIG. 8 is considered, then assuming that the effect of friction is ignored, the static relationship between the torque T generated by the motor and the pressing force fp is given by Equation (1) below. 
     
       
           fp=a·T   (1) 
       
     
     In this equation, a is a coefficient for converting rotational force to linear force. 
     Therefore, the torque Tm for obtaining the target pressing force F is given by the following equation, where fp=F and Tm=T in equation (1) above. 
       Tm=F/a   (2) 
     Therefore, if the output torque of the motor is limited to Tm, in other words, if the torque limit value is set to Tm, then the desired pressing force F can be obtained. 
     As described above, conventionally, a torque limit value Tm corresponding to the target pressing force F is derived from equation (2) above, and the required pressing force is obtained by driving the motor while restricting its output torque to this derived torque limit value Tm. 
     FIG. 9 is a control block diagram of a servo motor of a conventional pressing machine for conducting pressing by restricting the output torque of the servo motor where a servo motor is used as a motor. Velocity control means  1  implements velocity loop control, such as proportional plus integral control, or the like, in accordance with the instructed velocity command Vc and a velocity feedback value vf which is fed back from a position and velocity detector  6  for detecting the rotational position and velocity of a servo motor  5 , and determines a torque command Tc. Thereupon, a torque command Tc′ limited by torque limiting means  2 , in which torque limit value Tm determined in equation (2) is set, is obtained, current control is implemented by current control means  3  in accordance with the torque command Tc′, and the servo motor  5  is driven via an amplifierlifier  4 . 
     If no pressing load is applied, the servo motor  5  will follow the command velocity Vc, without a large load being applied thereto, there will be no large velocity deviation between the command velocity Vc and velocity feedback value vf, so the torque command Tc output by velocity control means  1  will be a small value, and this torque command value Tc can be output without being restricted by the torque limiting means  2 . In other words, Tc=Tc′. 
     If a metal pattern is placed on the work and a pressing load is applied, the velocity deviation will increase and the torque command Tc output by velocity command means  1  will increase and rise above the torque limit value Tm. However, since the torque command Tc having risen above the torque limit value Tm is restricted to the torque limit value Tm by torque limiting means  2 , the torque command Tc′ output by current control means  3  will be the torque limit value Tm. Thereby, the output torque of the servo motor will assume the toque limit value Tm, and the target pressing force F will be a Tm, according to equation (1) above (F=a·Tm). 
     However, in order to reduce noise during pressing, and the like, in some cases, pressing is conducted under deceleration. Furthermore, in some cases, pressing may be conducted under acceleration. In these cases, in the conventional motor control method described above, the required pressing force differs from the actual pressing force. Supposing that the acceleration of the motor is taken as a and the total mass of the moving body driven by the motor is taken as M, then if friction is ignored, the relationship between the pressing force fp (=pressing reaction) and the motor output torque T will be as shown in equation (3) below. 
     
       
           a·T−fp=Mα   (3) 
       
     
     hence 
     
       
           fp=a·T−Mα   (3′) 
       
     
     However, if the motor output torque T is restricted to a torque limit value Tm(=F/a) corresponding to the target pressing force F, (in other words, T=Tm), then equation (3′) above becomes 
     
       
           fp=a·Tm−Mα=F−Mα   (4) 
       
     
     In equation (4) above, if α&lt;0, in other words, when the motor is decelerating, the generated pressing force fp is greater than the target pressing force F(fp&gt;F), and there is a possibility that the metal pattern will rupture. On the other hand, if α&gt;0, in other words, when the motor is accelerating, the generated pressing force fp is smaller than the target pressing force F(fp&lt;F), so the required pressing force will not be obtained. 
     SUMMARY OF THE INVENTION 
     It is an object of the present invention to provide a pressing machine and a motor torque control method for a pressing machine, whereby the required pressing force can be obtained during acceleration or deceleration also. 
     The present invention is a motor torque control method for a pressing machine which applies pressing force by limiting the output torque of a motor by restricting a torque command through torque limiting means provided in a motor control circuit, wherein a torque limit value corresponding to a target pressing force is corrected by the torque required for acceleration or deceleration, and the motor is driven whilst the torque command value is restricted by this corrected torque limit value, such that the target pressing force is applied to a work during acceleration or deceleration. 
     The torque required for acceleration or deceleration is determined by the actual velocity detected by a velocity detector or the acceleration as calculated from the velocity command, and this is taken as a torque limit correction value. Alternatively, an observer for estimating acceleration from the torque command value and the actual velocity detected by a velocity detector is provided, and the acceleration estimated by the observer is taken as the aforementioned necessary torque for acceleration or deceleration, and this is taken as the torque limit correction value. 
     Since the present invention corrects the torque limit value corresponding to the target pressing force by the torque required for acceleration or deceleration and takes this as a torque limit value for restricting the torque command, it is possible to apply the target pressing force to a work at all times, during acceleration and deceleration also. Consequently, instances of the metal pattern rupturing due to application of excessive pressing force to the work, or of insufficient pressing force, do not occur. 
    
    
     BRIEF DESCRIPTION OF THE DRAWINGS 
     FIG. 1 is a block diagram of a motor control method according to one embodiment of the present invention; 
     FIG. 2 is one examplifierle of torque limit correction value calculating means according to the same embodiment; 
     FIG. 3 is a further examplifierle of torque limit correction value calculating means according to the same embodiment; 
     FIG. 4 is an examplifierle of torque limit correction value calculating means based on an observer according to the same embodiment; 
     FIG. 5 is a block diagram of a control section of a pressing machine for implementing the same embodiment; 
     FIG. 6 is a flowchart of processing for each velocity loop processing cycle, centred on processing for determining a torque command to a current loop by applying torque limit processing according to the same embodiment; 
     FIG. 7 is a flowchart of processing for each velocity loop processing cycle, centred on processing for determining a torque command for the current loop by correcting a torque limit value by means of observer processing; 
     FIG. 8 is an approximate diagram of a pressing machine; and 
     FIG. 9 is a block diagram of a motor control method for a conventional pressing machine. 
    
    
     BEST MODE FOR CARRYING OUT THE INVENTION 
     The motor control method in one embodiment of the present invention is now described with reference to the block diagram in FIG.  1 . 
     The motor control method illustrated in FIG. 1 is characterized in that torque limit correction value calculating means  7  described hereinafter is appended to the conventional motor control method illustrated in FIG.  9 . 
     Torque limiting means  2  inputs a torque limit value Tm′(=Tm+ΔTm) obtained by adding a torque limit correction value ΔTm as determined by torque limit correction value calculating means  7  to a torque limit value Tm corresponding to the target pressing force F as calculated by equation (2) above (hereinafter, this torque limit value Tm is called the static torque limit value). As described later, by correcting the torque required for acceleration or deceleration by means of the torque limit correction value ΔTm, the motor is controlled such that the set pressing force F is obtained. 
     The torque command Tc is restricted by the revised torque limit value Tm′, which is revised by adding the torque limit correction value ΔTm to the static torque Tm(Tm+ΔTm), and if the servo motor is driven by this restricted torque command Tc′(=Tm′), then the pressing force Fp will be given by equation (5) below, where T=Tm+ΔTm is inserted in equation ( 3 ′) above. 
     
       
           fp=a ( Tm+ΔTm )− Mα   (5) 
       
     
     In the equation above, Tm is a static torque limit value corresponding to the target pressing force F, and from equation (2) above, Tm=F/a. In other words, it is determined by the target pressing force F and the coefficient, a, which converts rotational force to linear force. Accordingly, equation (5) above is rewritten as equation (6) below. 
     
       
           fp=a ( F/a+ΔTm )− Mα=F+a·ΔTm−Mα   (6) 
       
     
     In order that the pressing force fp shown in equation (6) above becomes the target pressing force F(fp=F), the following relationship should be satisfied: 
     
       
           a·ΔTm−Mα= 0  (6′) 
       
     
     Therefore, the torque limit correction value ΔTm in equation (6′) can be determined from equation (6″) below. This calculation is carried out by torque limit correction value calculating means  7 . 
       ΔTm=Mα/a   (6″) 
     In equation (6″) above, the value of M is already known, since it is the total mass of the moving body, and the value of a is also an already known constant which may be derived by experimentation, or the like, since it is a coefficient for converting rotational force to linear force. Therefore, if the acceleration α of the motor is detected, it is possible to determine the torque limit correction value ΔTm from equation (6″) above. 
     Supposing that the motor follows the velocity command Vc closely, the acceleration α can be determined by differentiating the velocity command Vc with respect to time. Alternatively, it may be determined by differentiating the velocity feedback value Vf fed back by the position and velocity detector  6 , with respect to time. Moreover, by using an observer, it may be estimated from the torque command Tc′ output by torque limiting means  2  (in other words, the torque command transferred to current control means  3  of the current loop) and the velocity feedback value Vf. 
     FIG. 1 shows a case where torque limit correction value calculating means  7  receives three inputs, namely, a velocity command Vc, velocity feedback value Vf, and torque command value Tc′ which is output by torque limiting means  2 . However, as described previously, not all three inputs Vc, Vf and Tc′ are required in order to determine the acceleration α in torque limit correction value calculating means  7 , and therefore, FIG. 1 should be interpreted as showing that torque limit correction value calculating means  7  inputs either velocity command Vc, velocity feedback value Vf, or torque command Tc′ plus velocity feedback value Vf. 
     Next, a concrete example of torque limit correction value calculating means  7  is described with reference to the block diagrams in FIG.  2 -FIG.  4 . 
     In the torque limit correction value calculating means in FIG. 2, the torque limit correction value ΔTm is determined from the velocity feedback value Vf. Here, the velocity feedback Vf is pseudo-differentiated using a low-pass filter  10  to obtain the acceleration α, and this acceleration α is multiplied by a coefficient (M/a) and a multiplier  11  to derive a torque limit correction value (=Mα/a). 
     Furthermore, in the torque limit correction value calculating means in FIG. 3, the torque limit correction value ΔTm is determined from the command velocity Vc. Here, the acceleration α by pseudo-differentiation of the command velocity value Vc using a low-pass filter  10 , and this acceleration α is multiplied by a coefficient (M/a) to derive the torque limit correction value ΔTm(=Mα/a). 
     In the torque limit correction value calculating means in FIG. 4, an observer is used. This observer estimates the acceleration α from the velocity feedback value Vf and the torque command Tc′ output by current control means  3 , and the torque limit correction value ΔTm is derived from this estimated acceleration α. 
     In the observer in FIG. 4, the motor torque acceleration αt is determined by multiplying the torque command Tc′ by a/M at a multiplier  12 . Moreover, the difference (Vf−A1) between the velocity feedback value Vf and the estimated acceleration (output of integrator  13 :A1) is given integral plus proportional processing in section  14  to derive an estimated disturbance acceleration X. This processing is description below. The estimated acceleration α is found by adding this estimated disturbance acceleration X to the motor torque acceleration αt. Moreover, the torque limit correction value ΔTm is determined by multiplying the estimated acceleration α by M/a at a multiplier  15 . The aforementioned estimated velocity (A1) is obtained by integration of the estimated acceleration α by integrator  13 . 
     Next, the control section of a pressing machine in the present embodiment is described with reference to the block diagram in FIG.  5 . 
     In FIG. 5, reference numeral  20  denotes a host computer, such as an NC controller, or the like, which outputs movement commands, etc. on the basis of an operating program via a shared memory  21  to a motor control circuit  22 , which is a digital servo circuit for controlling a servo motor. Similarly to a conventional digital servo circuit, this motor control circuit  22  comprises a processor, memories, such as a ROM and a RAM, and an interface for inputting feedback values of position and velocity, fed back from position and velocity detector  6 , and feedback values for the motor drive current, via servo amplifier  4 , and the like, and it implements loop control of position, velocity and current, thereby driving and controlling a servo motor  5  via an amplifier  4 . The position and velocity detector  6  is installed on the rotor shaft of the servo motor  5  and detects the rotational position and velocity of the servo motor, which it feeds back to the motor control circuit  22 . The composition and operation of this control section is commonly known in the prior art, but the present invention is characterized in that, in the loop control of position, velocity and current by the aforementioned motor control circuit  22 , a torque limit value is calculated for applying a torque limit to the torque command output by the velocity loop control, and the torque command is restricted by this derived torque limit value and output to the current loop. 
     The processing implemented by the processor in the motor control circuit  22  in FIG. 5 for each velocity loop processing cycle is described by referring to the flowchart in FIG.  6 . In this processing, torque limit processing is conducted by determining a torque limit correction value ΔTm according to the velocity feedback value, Vf, using the torque limit calculating means shown in FIG. 2, and a torque command Tc′ for supply to the current loop is determined thereby. The static torque limit value Tm corresponding to the target pressing force F is calculated by equation (2) from the target pressing force F and coefficient a which converts rotational force to linear force (Tm=F/a), and Tm is set in the motor control circuit  22 . The coefficient M/a in the multiplier  11  in FIG. 2 for determining the torque limit correction value from the acceleration is derived and set from the total mass of the moving body M and the aforementioned coefficient, a. 
     Firstly, the velocity feedback value Vf(n) for the cycle in question is read in (step S 1 ), and, from this velocity feedback value Vf(n), the velocity feedback value Vf(n−1) for the previous cycle, which is recorded in a register, is subtracted from this velocity feedback value Vf(n) to derive a velocity differential δv (step S 2 ). Moreover, the velocity feedback value Vf(n) for the current cycle read in at step S 1  is stored in a register  1  to be used as the previous cycle velocity feedback value Vf(n−1) in the subsequent cycle (step S 3 ). Thereupon, by implementing low-pass filter processing according to the following equation (7), the acceleration α(n) for the current cycle is derived from the velocity differential, δv, determined at step S 2  and the previous cycle acceleration α(n−1) stored in register  2  (step S 4 ). 
     
       
         α( n )= k·δv+ (1 −k )·α( n− 1)  (7) 
       
     
     In equation (7) above, 
     
       
           k =exp (−2π· fc·ts ) 
       
     
     where fc is the cut-off frequency of the filter and ts is the sample time, which represents the velocity loop processing cycle. If k=0, then this is equivalent to an unfiltered state. 
     The acceleration α(n) determined in this way is stored in register  2  to be used as the previous cycle acceleration α(n−1) in the subsequent cycle (step S 5 ). Using equation (6″′) above, the torque limit correction value ΔTm can be determined from the acceleration α(n) determined at step S 4  (ΔTm=α(n)·M/a). Here, as described above, M/a is set previously in the motor control circuit  22 . 
     Next, the torque limit value Tm′ is determined by adding the torque limit correction value ΔTm to the previously derived static torque limit value Tm. In other words, the following calculation is implemented (step S 6 ): 
     
       
           Tm′=Tm+ΔTm=Tm+M·α ( n )/ a   
       
     
     Moreover, a torque command Tc is determined by carrying out conventional velocity loop processing using the velocity command Vc derived by positional loop processing and the velocity feedback value Vf (step S 7 ). 
     The torque command Tc determined here is compared with the torque limit value Tm′ determined at step S 6 , and if the torque command Tc is the smaller, the torque command Tc is delivered directly to the current loop as the torque command Tc′ for the current loop. Furthermore, if the torque command Tc is larger than the torque limit value Tm′, then this torque limit value Tm′ becomes the torque command Tc′ for the current loop, and the torque command restricted to this torque limit value Tm′ is delivered to the current loop, whereupon the processing of the velocity loop ends (steps S 8 , S 9 ). 
     Since the acceleration α is determined from the velocity feedback value Vf, the force required for acceleration or deceleration is determined from this acceleration α, and the torque limit value is corrected by removing the effects of this force such that the set target pressing force F is obtained at all times, then even if the metal pattern is placed against a work and pressing is carried out during acceleration or deceleration, it is possible to press the work with the set target pressing force F. 
     In this way, in FIG. 2, the acceleration α is determined from the velocity feedback value Vf, the torque limit correction value ΔTm is determined from this derived acceleration α, and torque limit processing is carried out on the basis of this torque limit value Tm′(=Tm+ΔTm). On the other hand, in FIG. 3, the acceleration α is determined from the velocity command Vc instead of the velocity feedback value Vf, the torque limit correction value ΔTm is determined from this derived acceleration α, similarly to the process in FIG. 2, and torque limit processing is carried out on the basis of the torque limit value Tm′(=Tm+ΔTm). 
     Therefore, the processing implemented by the processor in the motor control circuit  22  using the torque limit correction value calculating means shown in FIG. 3 simply involves reading out the command velocity Vc(n) instead of Vf(n) at step S 1  in FIG. 6, whereupon Vf(n) is replaced by Vc(n) in steps S 1 -S 3 , so the processing is virtually the same as that in FIG.  6 . Therefore, further description of the processing involved in FIG. 3 is omitted here. 
     Next, described using the flowchart in FIG. 7 is a processing, where the acceleration is estimated by means of an observer shown in FIG. 4, the torque limit correction value ΔTm is determined from this estimated acceleration, and a torque limit value Tm′(=Tm+ΔTm) is obtained by adding the static torque limit value Tm to the torque limit correction value ΔTm, and the motor is controlled accordingly. This processing is carried out for each processing cycle of the velocity loop. 
     Firstly, the total mass of the moving body M, the coefficient, a, for converting rotational force to linear force, the static torque limit value Tm(=F/a) corresponding to the target pressing force F, and the integration gain k 1  and proportional gain k 2  used for determining the estimated disturbance acceleration X, are set in a memory of the servo control circuit  22 . 
     Thereupon, after reading the acceleration feedback value Vf (step T 1 ), the torque command value Tc′ for the previous cycle (that is, torque command value instructed to current loop after implementation of torque limiting), which is stored in register  1 , and the estimated disturbance acceleration X are read, and an estimated acceleration α is determined by adding the estimated disturbance acceleration X to the product of torque command value Tc′ and a/M (step T 2 ). 
     Next, the estimated velocity (A 1 ) is determined by multiplying the estimated acceleration α by the value of the accumulator A 1 . In other words, the processing of integrator  13  in FIG. 4 is implemented (step T 3 ). A velocity differential δv is determined by subtracting the estimated velocity (A 1 ), which is the value of the aforementioned accumulator A 1 , from the velocity feedback value Vf read at step T 1 , and this velocity differential δv is added to the accumulator A 2  (step T 4 ). An estimated disturbance acceleration X is determined by adding the product of the aforementioned velocity differential δv(=Vf−A 1 ) and proportional gain k 1  to the product of the value of accumulator A 2  and integral gain k 2 , and the value of X is stored in register  2  (step T 5 ). In other words, the processing in step T 5  is equivalent to the processing of proportional plus integral processing means  14  in FIG.  4 . 
     Thereupon, a torque limit value Tm′(=Tm+M·α/a) is determined by adding the product of the estimated acceleration α determined at step T 2  above and the set value (M/a) to the previously determined static torque limit value Tm (step T 6 ). 
     Moreover, a torque command Tc is determined by velocity loop processing, similarly to the prior art, in accordance with the velocity command Vc determined by positional loop processing and the velocity feedback value Vf (step T 7 ). The torque command Tc is compared with the torque limit value Tm′ derived at step  6 , and if the torque command Tc is smaller, it is taken directly as the torque command Tc′ for the current loop, whereas if the torque command Tc is the larger, hen the torque limit value Tm′ is stored as the torque command Tc′ in a register, and it is also delivered to the current loop processing (steps T 8 -T 10 ). Thereafter, the above processing is repeated for each velocity loop processing cycle. 
     Thereby, the torque command is corrected by a value corresponding to the torque required for acceleration or deceleration, and control is implemented such that the target pressing force is obtained.