Mechatronics 55 (2018) 27–37
Contents lists available at ScienceDirect
Mechatronics journal homepage: www.elsevier.com/locate/mechatronics
Compensation of dynamic mechanical tracking errors in ball screw drives Fuhua Li a,b, Yao Jiang c, Tiemin Li a,d,e,∗, Kornel F. Ehmann b a
Department of Mechanical Engineering, Institute of Manufacturing Engineering, Tsinghua University, Beijing 100084, China Department of Mechanical Engineering, Northwestern University, Evanston 60208, USA c Department of Precision Instrument, Institute of Instrument Science and Technology, Tsinghua University, Beijing 100084, China d Beijing Key Lab of Precision/Ultra-precision Manufacturing Equipments and Control, Tsinghua University, Beijing 100084, China e State Key Laboratory of Tribology, Tsinghua University, Beijing 100084, China b
a r t i c l e
i n f o
Keywords: Ball screw Dynamic model Parameter identification Error compensation
a b s t r a c t Dynamic mechanical tracking errors occur in ball screw drives typically due to inertial, frictional and external forces. This results in axial elongation and compression of key components of the drive that deteriorate the dynamic tracking accuracy. In order to improve tracking accuracy, this paper presents a feedforward compensation method of dynamic mechanical tracking errors. A dynamic model is proposed to offset the position commands that are fed to the servo controller. The accuracy of the model can be improved by considering the torque transmission between the nut and the ball screw, which is not considered in existing models. To obtain the stiffness and friction parameters in the model, a new method of parameter identification is proposed. The method can simultaneously identify friction in key components leading to greatly improved efficiency and accuracy. The dynamic model and parameter identification method are validated by comparing simulation and experimental results for trapezoidal and sinusoidal trajectories. To validate the simulation results, the sinusoidal trajectories are used to compensate the tracking errors of the ball screw. The results confirm that most of the dynamic mechanical tracking errors are eliminated after compensation. Therefore, the compensation method based on the proposed dynamic model and parameter identification method is effective in improving the tracking accuracy of ball screw drives.
1. Introduction Ball screw drives are widely used in computer numerical controlled (CNC) machine tools to position the workpiece relative to the tool because of their high stiffness, reliable operation and ability to mitigate the impact of inertial and cutting force variations [1–4]. Machining accuracy significantly depends on the tracking performance of the ball screw drives for a desired trajectory. Therefore, in order to meet the demands imposed by high productivity and high-precision parts, ball screw drives must exhibit good transient and steady tracking performance [5–7]. To improve tracking accuracy, position feedback is commonly used. If position feedback is obtained from a linear scale measuring the position of the working table, these problems can be, to a certain extent, alleviated during steady state positioning and low frequency movements. Compensation of the linear scale is always delayed because of processing of the control system. At high speed and high acceleration, the driving force of the motor increases, which results in increase of the force between components of the ball screw drive. Therefore, elastic deformation and vibration of some components become more serious with the increase of force. As the delay phenomenon of the control system is more
∗
apparent when dealing with high frequency signals, the delay of linear scale compensation becomes more serious in the situation. Therefore, the compensation effect of the linear scale is worsened with increase of speed and acceleration. Elastic deformation and vibration can deteriorate the dynamic linear accuracy of the ball screw drive with linear scale. [8–10] But if the errors can be estimated in advance, the delay problem can be eased. Therefore, in this paper, an error compensation method is proposed based on the position feedback obtained from a rotary encoder. The combination of the compensation method and a linear scale could also improve the dynamic linear accuracy of ball screw drives. For ball screw drives with rotational feedback, tracking errors are composed of two parts, namely the control part and mechanical part. The difference between the motor position and the reference trajectory at each time instant is the control tracking error caused by the control system. Similarly, the difference between the working table and the motor position at each time instant is the mechanical tracking error caused by the mechanical system, and it mainly includes lead errors, elastic deformations and vibrations of the drive. As the lead errors are static, dynamic mechanical tracking errors are mechanical tracking errors without lead errors. In order to improve the tracking accuracy of drives both
Corresponding author at: Department of Mechanical Engineering, Institute of Manufacturing Engineering, Tsinghua University, Beijing 100084, China. E-mail address:
[email protected] (T. Li).
https://doi.org/10.1016/j.mechatronics.2018.08.004 Received 24 September 2017; Received in revised form 18 July 2018; Accepted 14 August 2018 0957-4158/© 2018 Elsevier Ltd. All rights reserved.
F. Li et al.
Mechatronics 55 (2018) 27–37
the control and the dynamic mechanical tracking errors needed to be decreased. In order to reduce the dynamic mechanical tracking errors in ball screw drives in machine tools, various compensation features have been implemented in industrial numerical control systems, including geometric and thermal error compensation, torque compensation, feedforward compensation, notch filters, etc. [8]. In addition, elastic deformation of components also results in a difference between the motor position and the corresponding position of the working table. However, the compensation of dynamic mechanical tracking errors caused by the mechanical systems has received limited attention. In order to eliminate the dynamic mechanical tracking errors of ball screw drives, error compensation is always adopted. To determine the error compensation values, dynamic models are needed to evaluate/simulate the errors. Lim et al. proposed a method to reduce the errors of the working table’s position without directly measuring the position of the working table [11]. A simple twoinertia model of the ball screw drive was proposed to estimate torsional deformations. It was assumed that the drive’s stiffness is constant and friction is ignored in the model. The torsional deformation was compensated by means of the proposed torsional displacement feedback control. However, the stiffness of the active ball screw is relevant with the exact position of the nut, and the friction of components has an influence on the motion accuracy of the working table. Kamalzadeh et al. presented a new strategy for mitigating the detrimental effect of elastic deformations when only rotational feedback is available [8]. An elastic deformation model was developed and the position dependency of the drive stiffness was considered. The effects of viscous and Coulomb friction acting on the drive’s rotating components were also considered. The compensation of the elastic deformation and lead errors was realized by using the proposed closed-loop scheme. However, in order to compute the elastic deformation, the model needs to input the real-time feedback control torque. Therefore, the application of the model was limited in some cases. Kamalzadeh and Erkorkmaz proposed a precision control strategy. Axial vibrations were modeled and actively compensated in the control law on the basis of a two-mass drive model [10]. In the model, the viscous friction in the rotary bearings and linear guideways and the damping induced in the nut were considered. The equivalent axial stiffness of the ball screw, the nut and supporting bearings was obtained. The axial stiffness and damping were identified by matching the frequency response of the model to the measured Frequency Response Functions. The compensation of axial vibration could actively attenuate vibration of the first axial model. But the model was not used to analysis and compensate the elastic deformation of ball screw drives. Zhu and Fujimoto proposed a novel mechanical model of a ball screw drive to analyze the elastic deformation dynamics under various motion conditions [12]. In their model, the torsional stiffness of the screw between the two end sides of the screw and the nut were differentiated. The stiffness of the supporting bearings and the friction in the guideway were also considered in the model. The model was used to analyze the elastic deformation characteristics and compensate the friction, but was not used to compensate for the elastic deformations in the moving process. In order to obtain better performance of dynamic mechanical tracking errors compensation, a formulated detailed dynamic model is proposed to improve the estimation accuracy of the dynamic mechanical tracking errors in this paper. In the model, the torque transmission between the nut and the ball screw is considered, which is not considered in existing models. The estimation accuracy of the dynamic models depends on the model formulation as well as the model parameter identification method used. Therefore, a new identification method of the key parameters of the dynamic model is also proposed to improve identification efficiency the method facilitates the simultaneous identification of both friction- and stiffness-related parameters. Based on the dynamic model and parameter identification method, the dynamic mechanical tracking errors can be largely compensated. The remainder of this study is organized as follows. Section 2 introduces the experimental setup. Section 3 describes the compensation method of tracking errors
Fig. 1. Experimental setup.
of the ball screw drive. In Section 4, the dynamic model is proposed. The method for the identification of the stiffness and friction parameters is presented in Section 5. Section 6 highlights the simulated and experimental dynamic mechanical tracking errors to show simulation accuracy, while in Section 7 a compensation experiment is presented to show the effects of compensation. Conclusion are drawn in Section 8. 2. Experimental setup A ball screw feed drive system is constructed to study the compensation of dynamic mechanical tracking errors. In the constructed ball screw feed drive system, three ball screw drives are used, as shown in Fig. 1. The master ball screw drive is used to drive the working table. Table position measurement is obtained by a linear encoder. The body of the linear encoder is fixed to the base of the test bench with the scanning head mounted on the working table. The screw of the master ball screw drive is supported by a couple of angular contact bearings at the front end and a deep groove bearing at the rear end. The rotary position measurement of the motor is registered by a rotary encoder. The specifications of the master ball drive system are as follows: motor: Delta (Model: ECMA-C11020RS), driver: Delta (ASDA-A2), controller: DELTA TAU (Turbo PMAC2), linear encoder: HEIDENHAIN (LS177). The servo period of the controller is 442 μs and the servo frequency is 2262 Hz. The maximum data gathering frequency is 2262 Hz. According to the user manual, the bandwidth of the current loop of the controller is 200 Hz to 400 Hz. The resolution of the linear encoder is 0.125 μm and the resolution of the rotary encoder is 10,000 pulse/rev. The specification of the ball screw: pitch: 10 mm, diameter: 25 mm (product of Precision Motion Industries, INC., Taiwan). The resonant frequency of the ball screw drive is 130.6 Hz. The bandwidth of the experimental setup is 28.7 Hz. 3. Compensation of tracking errors of the ball screw drive The common control strategy for ball screw drives is a PID servo filter, which contains a PID feedback filter and a PID feedforward filter, as shown in Fig. 2. The PID feedback filter consists of proportional (Kp ), integral (Ki ), and derivative (Kd ) terms, each with its own contribution to the control effort. The PID feedforward filter has velocity (Kvff ) and acceleration feedforward (Kaff ) terms [8,13,14]. For a ball screw drive with rotational feedback, the position feedback in Fig. 2 is the real time position of the motor. Therefore, to improve the tracking accuracy, the feedforward compensation method can be adopted to reduce the effects of the mechanical system. In the common PID servo filter, there is an open interface which can be used to do feedforward compensation. The lead errors and dynamic mechanical tracking errors can be compensated via the open interface according to the commanded trajectory [15]. The lead errors are static and have nothing to do with the kinematic parameters of the working table, therefore, the test results of the lead errors 28
F. Li et al.
Mechatronics 55 (2018) 27–37
Fig. 2. PID servo filter of ball screw drives.
Fig. 4. Dynamic model of a ball screw drive. Fig. 3. Contact force analysis of rolling balls.
small, therefore, the contact angle can be considered to be independent of the axial load. Based on Eq. (1), the mathematical relationship between the thrust F and the torque Tn can be represented as:
can be directly used for compensation. As for the dynamic mechanical tracking errors, they are influenced by many factors, such as moving velocity, acceleration, component stiffness and external loads [16]. It is necessary to propose an accurate dynamic model to analyze the dynamic mechanical tracking errors of ball screw drives. The accuracy of the analysis results is determined by the model abstraction as well as parameter identification.
𝑇𝑛 = 𝐹 𝑅 tan 𝜙
4. Dynamic modeling
⎡𝐽 𝑏 ⎢0 ⎢ ⎣0
The nut in the ball screw drive system is an important component to convert rotary motion to linear motion, therefore, it is important to improve the modeling accuracy of the nut [17,18]. The force between the ball screw and the nut is transmitted by rolling balls. The force analysis of a single ball is illustrated in Fig. 3(a) for a two-point contact ball screw. The contact force P can be decomposed into three components: axial Pa , tangential P𝜏 and radial force P𝜈 [19,20]. Fig. 3(b) presents the force transmission for all the rolling balls. The resultant force of all the Pa components is the axial thrust F applied to the working table, and the resultant torque of all the tangential P𝜏 components is the torque Tn which is applied to the ball screw. The torque Tn is not mentioned in existing research. The corresponding expressions can be written as: 𝐹 = 𝑧𝑃 sin 𝛼 cos 𝜙
(1.1)
𝑇𝑛 = 𝑧𝑃 𝑅 sin 𝛼 sin 𝜙
(1.2)
(2)
The schematic model of a typical ball screw drive considered here is presented in Fig. 4. [12]. Three degrees of freedom (DOF) are considered, i.e., the rotary DOF of the screw, the translational DOF of the screw and of the working table. The equation of the dynamic model, ignoring the torsional deformation of the ball screw, can be represented as: 0 𝑀𝑏 0
0 ⎤⎡ 𝜃̈𝑏 ⎤ ⎡𝑘𝑔 0 ⎥⎢𝑋̈ 𝑏 ⎥ + ⎢ 0 ⎥⎢ ⎥ ⎢ 𝑀𝑡 ⎦⎣ 𝑋̈ 𝑡 ⎦ ⎣ 0
⎡𝑘𝑔 𝜃𝑚 − 𝑇𝑛 − 𝑇𝑓 𝑁 ⎤ ⎥ =⎢ −𝐹 − 𝐹𝑓 𝑏 ⎢ ⎥ ⎣ 𝐹 − 𝐹𝑑 − 𝐹𝑓 𝑡 ⎦
0 ( ) 𝑘𝑒𝑞 𝑋𝑡 0
0⎤⎡ 𝜃𝑏 ⎤ 0⎥⎢𝑋𝑏 ⎥ ⎥⎢ ⎥ 0⎦⎣ 𝑋𝑡 ⎦ (3)
where 𝜃 m is the rotary displacement of the motor, 𝜃 b is the rotary displacement of the ball screw, Xb is the translational displacement of the ball screw, Xt is the working table position relative to the home position, kg is the equivalent torsional stiffness of the coupling and the screw, keq (x) the equivalent axial stiffness of the ball screw and of the supporting bearings, TfN the rotary friction of the supporting bearings and of the nut, Fft the axial friction between the slide and guideways, Fd the disturbance force, Ffb the axial viscous damping force of the bearings equal to 𝐵𝑏 𝑋̇ 𝑏 , and Bb the viscous damping coefficient of the supporting bearings. The torque is transmitted to the working table by passing through the coupling and the active part of the screw of length m + Xt , where m is the distance between the front supporting bearings and the axis home position. The equivalent stiffness, keq , can be represented by two
where 𝛼 represents the contact angle between the rolling balls and grooves, 𝜙 the helix angle of the ball screws, z the number of rolling balls and R the nominal radius of the ball screw, respectively. According to reference [21], the influence of the axial load on the contact angle is 29
F. Li et al.
Mechatronics 55 (2018) 27–37
In order to apply an axial load on the working table and test the force in real time, including axial pressure and tension, a novel loading mechanism shown in Fig. 7 is designed. Plate 1 and the cylindrical guideways are fixed on the working table. A force sensor (DACELL-UMMA) is fixed between the plate 1 and plate 2. Therefore, the working table, plate 1, force sensor and plate 2 can be regarded as a rigid entity. A loading plate fixed to the slave nut can move in the cylindrical guideway’s direction. Die spring 1 is installed between plate 2 and the loading plate. Axial pressure can be applied on the working table when the die spring 1 is compressed. Axial pressure on the working table is decided by the compression of die spring 1. The compression of die spring 1 can be controlled by adjusting the position of the loading plate. When die spring 2 is compressed, axial tension is applied on the working table. The actual axial load on the working table can be measured by the force sensor in real-time. In order to improve the identification accuracy of the stiffness, six positions throughout the stroke are chosen to identify the stiffness of the components. The stroke of the working table is 250 mm, and the distance between the front supporting bearings and the six position is 325 mm, 375 mm, 425 mm, 475 mm, 525 mm, 575 mm, respectively. At each position, an axial load is applied on the working table according to the curve in Fig. 8. The six readings by laser displacement sensor 3 at the six positions when an axial load of 1,568 N is applied are fitted by a line illustrated in Fig. 9. The reading of sensor 3 is the sum of the front bearings deformation, the ball screw deformation and the nut deformation. As the axial load is the same for the six positions, the front bearings deformation and nut deformation are all the same. Therefore, the axial stiffness of the screw can be obtained as k = 4.24 × 107 /l according to the results presented in Fig. 9, where l is the distance between the working nut and the front supporting bearings. The deformation of the front supporting bearings at the six positions is illustrated in Fig. 10 for the axial load of 1,568 N. The average value of the six values is considered to be the accurate deformation for the bearings and nut. The average value of the front support deformation and the nut deformation at the six positions are 19.5 μm and 16.3 μm, respectively. Therefore, it can be concluded that the stiffness of the front supporting bearings is 8.04 × 107 N/m and the stiffness of the nut kn is 9.62 × 107 N/m.
Fig. 5. Stiffness identification method.
springs connected in series, including the front supporting bearings stiffness kbearing and the active screw stiffness kl (Xt ) which is dependent on the axial position of the working table. Hence, the equivalent stiffness, keq , can be expressed as: 1 1 1 = + ( ) 𝑘𝑒𝑞 𝑘𝑏𝑒𝑎𝑟𝑖𝑛𝑔 𝑘𝑙 𝑋𝑡
(4)
When analyzing the kinematic transmission between the components of the ball screw drive, the elastic deformation, 𝛿 a , of the nut needs to be considered. As the ball screw has an axial displacement because of the flexibility of the supporting bearings when the working table moves, the axial displacement of the ball screw can deteriorate the position accuracy of the working table. Therefore, the displacement of the working table is the sum of the rotary and axial displacements of the ball screw and of the elastic deformation of the nut [22]. The kinematic equation of the working table is, therefore, given by: 𝑋𝑡 =
𝑢 𝜃 + 𝑋 𝑏 − 𝛿𝑎 2𝜋 𝑏
(5)
where u is the pitch of the screw. The relationship between the axial force F and the elastic deformation 𝛿 a of the nut is expressed as: 𝐹 = 𝑘𝑛 𝛿𝑎
(6)
where kn is the axial stiffness of the nut. In order to improve the simulation accuracy of the dynamic model, its critical parameters need to be accurately obtained including the mass, stiffness and friction. The mass of different components is obtained according to the design drawings and product manuals. The stiffness and the friction (the front supporting bearings stiffness kbearing , the screw stiffness kl , the nut stiffness kn , the rotary friction of the supporting bearings and the nut Tf , the axial friction between sliders and guideways Fft ) need to be experimentally identified.
5.2. Friction identification A novel identification method of components friction is proposed accurately identify the friction. All the friction, including the rotary Coulomb friction and Viscous friction of the supporting bearings and the nut, and the axial Coulomb friction and Viscous friction between the slide and guideways, can be identified simultaneously based on the combination of the proposed identification strategy and experimental method. The identification efficiency get improved greatly. The detailed friction model, identification principle and identification results are presented as follows.
5. Identification of stiffness and friction 5.1. Stiffness identification The axial stiffness of the supporting bearings ke , of the screw ks and of the nut kn is identified by applying an axial load F to the working table and testing the deformation of the drive’s components at the same time, as shown in Fig. 5. The stiffness of the supporting bearings ke and of the nut kn is considered to be constant in this paper. The stiffness of the screw ks is, however, dependent on the axial distance l between the nut and the front supporting bearings, as presented in Fig. 5. In order to test the deformation of the drive’s components, three laser displacement sensors (KEYENCE LK-H020) are adopted to measure the displacements of the supporting bearings at the motor side, of the end face of the master screw and of the working table respectively, as illustrated in Figs. 5 and 6. As it is difficult to measure the displacement of the inner race of the front bearing directly, it is proposed to replace it with the displacement of a circular part. The circular part is located close to the front bearing and is fixed to the front part of the master screw, as shown in Fig. 6.
5.2.1. Friction model There is a lot of friction model at present. The friction behavior of the ball screw drive is discussed in, e.g., [23–25]. As the slow velocity stage is not in the main study scope, the dynamic friction such as presliding displacement, friction memory, stick-slip motion, rising static friction can be ignored in the study. Stribeck model is a classical friction model using static mapping to describe the steady relation between velocity and friction [26–30]. Stribeck friction is a combination of three different friction characteristics, including the constant Coulomb friction μc Fpr , the velocity proportional viscous friction Bv v and the exponentially decreasing mixed friction containing the Stribeck coefficient (μs -𝜇 c )Fpr . The mixed friction is measurable only at low velocities. The 30
F. Li et al.
Mechatronics 55 (2018) 27–37
Fig. 6. Test of components displacement.
Fig. 7. Loading mechanism. Fig. 10. Deformation of the bearings and of the master nut.
resulting friction FR is described by Lin et al. [20,21,31]: [ [ ]𝛿 ] ( ) |𝑣| 𝐹𝑅 = 𝜇𝑐 𝐹𝑝𝑟 + 𝐵𝑣 𝑣 + 𝜇𝑠 − 𝜇𝑐 𝐹𝑝𝑟 exp − sgn(𝑣) 𝑣𝑠
(7)
where v is the sliding velocity, vs is the Stribeck velocity, 𝛿 is the Stribeck shape factor, 𝜇 c is the Coulomb friction coefficient, 𝜇s is the static friction coefficient and Fpr is the load. In this study, the Stribeck model is applied to model the friction force of the nut, supporting bearings and guideways [32]. As low velocity is not considered, the exponential decreasing mixed friction is close to zero and can be ignored, so that the friction expression can be simplified, i.e.: ( ) 𝐹𝑅 = 𝜇𝑐 𝐹𝑝𝑟 + 𝐵𝑣 𝑣 sgn(𝑣) Fig. 8. Axial load applied on the working table.
(8)
where parameters 𝜇 c and Bv need to be identified. 5.2.2. Identification principle When the motor moves at a constant velocity, the input torque of the ball screw drive is used to overcome the following friction components: rotary friction TfN of the supporting bearings and the nut, translational friction Fft between the slides and guideways and tangential torque Tn of the nut introduced in Section 4. Eq. (8) gives the expression of translational friction. In order to compute the friction torque of the nut and supporting bearings, it is needed to compute rotary friction. Thus, the constant coefficient 𝜆 is introduced to multiply the translational friction to transform translational friction into rotary friction. Similarly, the friction torque TfG caused by the friction Fft of the guideways can be obtained by multiplying FR by a coefficient 𝛾 = u/(2𝜋). Therefore, the output torque of the motor Top at constant velocity can be expressed as: 𝑇𝑜𝑝 = 𝑇𝑓 𝑁 + 𝑇𝑓 𝐺 + 𝑇𝑛
Fig. 9. Maximum displacement of the working table. 31
F. Li et al.
Mechatronics 55 (2018) 27–37
Fig. 11. Relation between torque and axial load at different velocities.
( ) = 𝜆𝜇𝑐𝑁 𝐹𝑝𝑟𝑁 + 𝜆𝐵𝑣𝑁 𝑣 sgn(𝑣) ( ) + 𝛾𝜇𝑐𝐺 𝐹𝑝𝑟𝐺 + 𝛾𝐵𝑣𝐺 𝑣 sgn(𝑣) + 𝐹𝑝𝑟𝑁 𝑅 tan 𝜙
Fig. 12. Relation between torque and velocity at different axial loads.
(9)
where the subscript N denotes the nut and supporting bearing, the subscript G denotes the guideways, FprN is the axial load of the nut and FprG is the vertical pressure of the guideways. To identify the friction parameters, the experimental principle presented next is proposed. If no axial force is applied on the working table, the axial load at the nut and supporting bearings is F0 when the working table moves at a constant velocity. When an axial force Fa is applied on the working table and the velocity remains the same, the increment of the axial load for the nut and supporting bearings is Fa and the increment of the output torque of the motor is (𝜆𝜇cN + Rtan𝜙)Fa . In addition, the increment of the output torque of the motor can be tested by a torque sensor as ΔT. Therefore, 𝜆𝜇 cN can be identified as ΔT/Fa -Rtan𝜙. When the working table moves at a constant velocity, the friction of the guideways is equal to the axial load of the nut and of the supporting bearings. According to Eq. (9), the motor torque can be expressed as: ) ( 𝑇𝑜𝑝 = 𝜆𝜇𝑐𝑁 + 𝑅 tan 𝜙 𝐹𝑝𝑟𝑁 sgn(𝑣) + 𝛾𝜇𝑐𝐺 𝑀𝑡 𝑔 sgn(𝑣) ( ) + 𝛾𝐵𝑣𝐺 + 𝜆𝐵𝑣𝑁 𝑣sgn(𝑣)
Fig. 13. Intercept of the curves in Fig. 11.
(10)
By means of testing the relationship between the velocity of the working table and motor torque, the parameter 𝜇cG can be identified and an equation describing the relationship between BvN and BvG can be obtained. Parameters BvN and BvG can be identified by tuning their values based on the simulated and experimental dynamic mechanical tracking errors.
Fig. 14. Force condition when the axial load is zero and the working table is static.
5.2.3. Identification results Based on the above-described identification principle, experiments were conducted to identify the friction (the rotary friction of the supporting bearings and of the nut TfN , the axial friction between the slide and guideways Fft ). The output torque of the motor is measured by a torque sensor (Interface T8-20-A1A) mounted between the motor and screw, when the working table moves at six constant velocities, including 10 mm/s, 25 mm/s, 50 mm/s, 100 mm/s, 150 mm/s and 200 mm/s. For each velocity, six constant axial loads are applied on the working table by the loading mechanisms, including 0 N, 269 N, 593 N, 915 N, 1,238 N and 1,571 N. Fig. 11 shows the relationship between the axial load and output torque of the motor when the ball screw drive moves at six different velocities according to the experimental results. Six lines are obtained to fit each group of data by applying the least squares (LS) parameter estimation method. To improve identification accuracy, the average slope of the six lines is obtained to identify 𝜆𝜇 cN . The average slope is 0.00233, then 𝜆𝜇 cN is identified to be 0.00074 based on 𝜆𝜇 cN = ΔT/Fa -Rtan𝜙.
Fig. 12 shows the output torque of the motor versus the working table velocity when the six axial loads are applied on the working table. Six lines are obtained to fit the six curves by applying LS parameter estimation. According to Eq. (10), the slope of each line in Fig. 12 is 𝛾BvG + 𝜆BvN and the intercept is (𝜆𝜇 cN + Rtan𝜙)FprN sgn(v) + 𝛾𝜇 cG Mt gsgn(v). The average slope of the six lines is kag = 3.614. Therefore, 𝛾BvG + 𝜆BVn = kag . In order to identify 𝛾𝜇 cG , the intercepts of the six lines in Fig. 12 versus the axial load is presented in Fig. 13. The intercepts of the six lines represent the maximal static friction torque of the ball screw drive. A fitted line is obtained according to the six points. It is obvious that the slope of the line in Fig. 13 is (𝜆𝜇 cN + Rtan𝜙)sgn(v) and the intercept is (𝜆𝜇 cN + Rtan𝜙)FprN0 sgn(v) + 𝛾𝜇 cG Mt gsgn(v). When the axial load is zero and the working table is static, the axial force between the nut and the ball screw FprN0 is equal to the axial friction 𝜇 cG Mt g of the guideways, as shown in Fig. 14. Therefore, the axial force 𝜇 cG Mt g can be identified to be 41.7 N. 32
F. Li et al.
Mechatronics 55 (2018) 27–37
Table 1 The parameters of the master ball screw drive. Parameters of the ball screw drive
Given value
Unit
Working table mass Mt Ball screw mass Mb Inertial moment of the motor Jm Inertial moment of the ball screw Jb Viscous damping coefficient of the supporting bearing of the ball screw Bb Torsional stiffness of the ball screw and the coupling kg Pitch of the ball screw u Distance between center of balls and axis of the screw R Helix angle of the ball screw 𝜙
61.71 3.20 4.45 × 10−4 3.81 × 10−4 3000 2083 10 13 6.98
kg kg kg m2 kg m2 N m/s N m/rad Mm Mm Degree
Fig. 15. Lead error of the master ball screw.
Fig. 16. Velocity curve.
Before identifying BvG and 𝜆BvN , the lead errors need to be identified. When the working table moves slowly at a constant speed, the discrepancy between the rotary encoder and the linear encoder mainly accounts for the effect of lead errors [8]. In later experiments, a minimal constant travel velocity of 50 mm/s will be used, hence a velocity of 2 mm/s is sufficiently slow for obtaining a good measurement of the lead errors. The lead errors are measured and are shown in Fig. 15. The lead errors of the master ball screw drive are observed to present a repeating sinusoidal pattern and are fitted by the sum of eight sinusoidal functions, i.e.: 𝐸𝑔 =
8 ∑ 𝑖=1
( ) 𝑎𝑖 sin 𝑏𝑖 𝑥 + 𝑐𝑖
(11)
where ai , bi and ci are obtained by least squares. The fitted curve is also shown in Fig. 15 [8]. The MAE and RMSE of the fitting errors are 0.2 𝜇m and 0.3 𝜇m, respectively, which can be ignored. In order to identify 𝛾BvG and 𝜆BvN , the equation 𝛾BvG + 𝜆BvN = kag can be set equivalent to the following equations: 𝐵𝑉 𝐺 = 𝑟𝐵 𝑘𝑎𝑔 ∕𝛾
(12.1)
( ) 𝜆𝐵𝑉 𝑁 = 1 − 𝑟𝐵 𝑘𝑎𝑔
(12.2)
Fig. 17. Parameter adjustment.
variable step size in the simulation to obtain the dynamic mechanical tracking errors. By tuning the value of rB , the simulation results can be changed. Fig. 17 presents the simulated results for two cases, including rB = 0.5 and rB = 1. As the differences between the linear scale and the rotary encoder mainly include the dynamic mechanical tracking errors and lead errors, the experimental dynamic mechanical tracking errors for the trapezoidal signal are obtained by subtracting the lead errors from the differences between the rotary and linear encoder readings (xrot - xlin ), as presented in Fig. 17. By comparing the simulated results for rB = 1 with the experimental results, it is obvious that the simulated results are smaller than the experimental results. The discrepancy results from the dynamic model abstraction, mass matrix identification, stiffness matrix identification, damping coefficients and friction identification. When rB = 1, the damping coefficient of the nut and supporting bearings is set to be zero. In order to match the simulated results and the experimental results, a coefficient 𝜅 is introduced to multiply kag . 𝜅 is a
where rB is the distribution factor. Simulations of the dynamic mechanical tracking errors obtained by the proposed dynamic model are conducted to fit the experimental results of the dynamic mechanical tracking errors by tuning the value of rB . Parameter rB is identified when the differences between the simulation results and the experimental results are ignorable. A trapezoid signal is adopted as the input signal to the system with the following properties: stroke = 250 mm, constant operating speed = 100 mm/s, linear acceleration/deceleration = 1 m/s2 , and jerk = 0 m/s3 as shown in Fig. 16. Table 1 lists the parameters and related values used in the model. The solver ode45 is adopted to solve the proposed dynamic model using a 33
F. Li et al.
Mechatronics 55 (2018) 27–37
Fig. 18. (a) Simulation results of the dynamic mechanical tracking errors. (b) Experimental results of the dynamic mechanical tracking errors.
correction coefficient of friction parameter, which is used to change the value of BvG . 𝜅 is linear with BvG , and BvG increases with the increment of 𝜅, which can result in the increment of simulated dynamic mechanical tracking errors. According to the analysis results as shown in Fig. 17, when rB is no more than 1 and 𝜅 is less than 1.25, the simulated results are less than the experimental results. When 𝜅 is tuned to be 1.25 and rB is set to be 1, the simulated results are basically the same with the experimental results. When rB is set to be 1 and 𝜅 is more than 1.25, the simulated results are more than the experimental results. Therefore, 𝛾BvG is set as 1.25kag , and BvN is set as zero. In essence, the coefficients of 𝛾 and 𝜅 is introduced not only to identify BvG and 𝜆BvN , but also to correct the dynamic model error and parameters identification error. Therefore, the parameter identification accuracy can be guaranteed. 6. Simulation and experiments In order to compensate the dynamic mechanical tracking errors of ball screw drives under different working conditions, the compensation values should be obtained by simulation. A trapezoidal and a sinusoidal trajectories motion trajectory were selected as the input. In order to evaluate the simulation accuracy, experimental results are compared with the simulation results.
Fig. 19. Evaluation of simulation errors. Table 2 Simulation accuracy during the uniform velocity stages. Velocity (mm/s)
50
100
150
200
250
300
Simulation accuracy (MAE) Simulation accuracy (RMSE)
95% 94%
97% 96%
96% 95%
98% 98%
98% 98%
97% 96%
6.1. Trapezoidal trajectories The trapezoidal signal is similar to the signal in Fig. 16 with a stroke = 250 mm, acceleration/deceleration = 1 m/s2 , jerk = 0 m/s3 . Fig. 18(a) shows the absolute values of the simulated dynamic mechanical tracking errors |Em | obtained by the proposed dynamic model given by Eq. (3) versus the variable velocities of the working table. Fig. 18(b) shows the experimental results. The experimental velocities include 50 mm/s, 100 mm/s, 150 mm/s, 200 mm/s, 250 mm/s, 300 mm/s. The experimental results show that the dynamic mechanical tracking errors are related to the moving velocities. More importantly, the errors during the uniform velocity motion stage do not remain constant. They vary with the working table position. If the axial stiffness of the ball screw is assumed constant, the simulated results show that the errors during this stage would remain constant. Therefore, the slope of the error curve during the uniform velocity stage is caused by the axial stiffness of the ball screw, which is determined by the distance between the nut and the front bearing. To evaluate the difference between the simulated and experimental results, the Mean Absolute Error (MAE) and Root Mean Square Error (RMSE) were evaluated. The errors during the stages with different accelerations are calculated respectively, as shown in Fig. 19. The results show that MAE and RMSE during the uniform velocity stages are all under 1.3 𝜇m. The simulation results during the acceleration and deceleration motion stages are in general worse than those during the uniform velocity stages, but are all under 5.2 𝜇m. The simulation accu-
racy can also be obtained by dividing MAE and RMSE of experimental results by MAE and RMSE of simulated results, respectively. The simulation accuracy shown in Table 2 presents that the accuracy reach 94% to 98%. In order to investigate the relationship between the dynamic mechanical tracking errors and velocities, the dynamic mechanical tracking errors of the point at position 100 mm with six velocities are presented in Fig. 20. The fitting line based on the five discrete points is obtained by the least squares method. The MAE and RMSE of the fitting results are 0.4 𝜇m and 0.4 𝜇m, which are very small compared to the experimental results. Therefore, the dynamic mechanical tracking errors are proportional to the velocities. 6.2. Sinusoidal trajectories Two sinusoidal signals with periods of 6 s and 3 s used are shown in Fig. 21. Fig. 22 shows the simulation and experimental results of the dynamic mechanical tracking errors. The trend of the dynamic mechanical tracking error is consistent with the moving velocity of the working table. For the first signal (Period = 6 s), the MAE of the simulated errors is 2.1 𝜇m and the RMSE is 2.4 𝜇m. The MAE and the RMSE are 1.5 𝜇m and 2.0 𝜇m for the second signal (Period = 3 s). In this study, the tracking errors in steady motion are mainly studied, and the startup and end stages 34
F. Li et al.
Mechatronics 55 (2018) 27–37
Open Servo, which supports the installation and automatic execution of user-written servo algorithms [13]. This algorithm can be used for actual servo control function and is definitely executed every servo cycle. The lead errors and the dynamic mechanical tracking errors are compensated by defining the servo algorithm as the Eq. (13). ( ) 𝑋𝑡 (𝑠) = [𝑅(𝑠) − 𝑋 (𝑠)] 1 + 𝐾𝑖 ∕𝑠 + 𝐾𝑑 𝑠𝑋 (𝑠) ( ) + 𝐾𝑣𝑓 𝑓 𝑠 + 𝐾𝑎𝑓 𝑓 𝑠2 𝑅(𝑠) + 𝑒𝑙𝑒𝑎𝑑 + 𝑒𝑑𝑦𝑛𝑎𝑚𝑖𝑐
(13)
Where elead is the lead error and edynamic is the dynamic mechanical tracking error. The theoretical input signals are the same as the signals shown in Fig. 21. Analytical expressions are obtained to fit the simulated results in Fig. 22 of the dynamic mechanical tracking errors, and are written in the servo algorithms that are used for actual servo control functions. There are some fitting errors between the fitting curves and the simulated curves. As the fitting errors are relatively small, they are ignored in the compensation. To analyze the effects of compensation of the dynamic mechanical tracking errors, two different compensation methods are implemented. One is lead errors compensation, while the other one is compensation of lead errors and dynamic mechanical tracking errors. The differences of the working table position of the two methods are the actual compensation values of the dynamic mechanical tracking errors. Fig. 23(a) shows the absolute dynamic mechanical tracking errors, absolute actual compensation values, and the absolute residual errors obtained by subtracting the dynamic mechanical tracking errors from the actual compensation values when the sinusoidal signal (Period = 6 s) is the input. Similarly, Fig. 23(b) shows the results when the sinusoidal signal (Period = 3 s) is the input. The MAE and RMSE values of the residual errors in Fig. 23(a) are 2.3 𝜇m and 2.9 𝜇m. The MAE and RMSE of the experimental mechanical tracking errors in Fig. 23(a) are 5.6 𝜇m and 6.5 𝜇m. Therefore, the dynamic mechanical tracking error can be reduced by 59% and 55% according to MAE and RMSE. The MAE and RMSE of the residual errors in Fig. 23(b) are 1.7 𝜇m and 2.8 𝜇m. The MAE and RMSE of the experimental mechanical tracking errors in Fig. 23(b) are 12.5 𝜇m and 14.4 𝜇m. Therefore, the dynamic mechanical tracking error can be reduced by 86% and 81% according to MAE and RMSE. It can be seen from Figs. 22 and 23 that the actual compensation value of the lead errors and dynamic mechanical tracking errors are different from the input compensation values in the servo algorithms of the trapezoidal trajectory. There are two reasons that result in the difference. One is that the compensation trajectory is dealt with in the control system, which can lead to the difference between the output value and input value of the control system. The other one is that the output trajectory is transmitted by the mechanical system, which can introduce mechanical errors. As the compensation value is at the micron level, the control system error and mechanical error are more obvious. As for the differences between the actual compensation value and the actual track-
Fig. 20. Dynamic mechanical tracking errors at different velocities.
Fig. 21. Sinusoidal signals.
are not concerned. Therefore, the phenomena such as impact, stick-slip motion, pre-sliding displacement, friction memory, rising static friction and backlash are not considered in the proposed model. It results in the relatively large differences between the simulation results and the experimental results around zero-speed region, as shown in Figs. 18 and 22. 7. Compensation experiments In order to improve the dynamic tracking accuracy of the master ball screw drive, the compensation strategy in Fig. 2 is applied. The lead errors and dynamic tracking errors are compensated by the controller’s
Fig. 22. Comparison between experimental results and simulation results. (a) T = 6 s. (b) T = 3 s. 35
F. Li et al.
Mechatronics 55 (2018) 27–37
Fig. 23. Compensation results of sinusoidal signals. (a) T = 6 s. (b) T = 3 s.
ing error, in addition to the above two reasons, errors of the dynamic model and the parameter identification are also important reasons.
[3] Erkorkmaz K, Kamalzadeh A. High bandwidth control of ball screw drives. Ann CIRP 2006;55(1):393–8. [4] Tsai PC, Cheng CC, Hwang YC. Ball screw preload loss detection using ball pass frequency. Mech Syst Signal Process 2014;48(1-2):77–91. [5] Zhang CY, Chen YL. Tracking control of ball screw drives using ADRC and equivalent-error-model-based feedforward control. IEEE Trans Ind Electron 2016;63(12):7682–92. [6] Sepasi D, Nagamune R. Tracking control of flexible ball screw drives with runout effect and mass variation. IEEE Trans Ind Electron 2012;59(2):1248–56. [7] Ren HQ, Moser N, Zhang ZX, et al. Effects of tool positions in accumulated double-sided incremental forming on part geometry. J Manuf Sci Eng 2015;137(5):051008. [8] Kamalzadeh A, Gordon DJ, Erkorkmaz K. Robust compensation of elastic deformations in ball screw drives. Int J Mach Tools Manuf 2010;50(6):559–74. [9] Varanasi KK, Nayfeh SA. The dynamics of lead-screw drives: low-order modeling and experiments. J Dyn Syst Meas Control 2004;126(2):388–96. [10] Kamalzadeh A, Erkorkmaz K. Compensation of axial vibrations in ball screw drives. CIRP Ann Manuf Technol 2007;56(1):373–8. [11] Lim H, Seo JW, Cho CH. Torsional displacement compensation in position control for machining centers. Control Eng Pract 2001;9(1):79–87. [12] Zhu HZ, Fujimoto H. Mechanical deformation analysis and high-precision control for ball-screw-driven stages. IEEE ASME Trans Mechatron 2015;20(2):956–66. [13] Turbo PMAC user manual 2008. Delta Tau Data Systems, Inc. [14] Jia ZY, Song D, Ma JW, et al. Pre-compensation for continuous-path running trajectory error in high-speed machining of parts with varied curvature features. Chin J Mech Eng 2017;30(1):37–45. [15] Xiang HB, Wang SJ, Zhang CQ, et al. Compensation of friction and elastic deformation for ball screw drive system. IEEE Int Conf Mech Autom 2015:1031–5. [16] Vicente DA, Hecker TL, Villegas FJ, et al. Modeling and vibration mode analysis of a ball screw drive. Int J Adv Manuf Technol 2012;58(1):257–65. [17] Altintas Y, Verl A, Brecher C, et al. Machine tool feed drives. CIRP Ann Manuf Technol 2011;60(2):779–96. [18] Verla A, Freya S, Heinzea T. Double nut ball screw with improved operating characteristics. CIRP Ann Manuf Technol 2014;63(1):361–4. [19] Wei CC, Lin JF, Horng JH. Analysis of a ball screw with a preload and lubrication. Tribol Int 2009;42(11-12):1816–31. [20] Lin MC, Velinsky SA, Ravani B. Design of the ball screw mechanism for optimal efficiency. J Mech Des 1994;116(3):856–61. [21] Huang HT, Ravani B. Contact stress analysis in ball screw mechanism using the tubular medial axis representation of contacting surfaces. J Mech Des 1997;119(1):8–14. [22] Li FH, Jiang Y, Li TM, et al. An improved dynamic model of preloaded ball screw drives considering torque transmission and its application to frequency analysis. Adv Mech Eng 2017;9(7):1–11. [23] Liu LL, Wu ZY. Comprehensive parameter identification of feed servo systems with friction based on responses of the worktable. Mech Syst Signal Process 2015;64–65:257–65. [24] Jamaludin Z, Brussel HV, Swevers J. Quadrant glitch compensation using friction model-based feedforward and an inverse model-based disturbance observer. In: Proceedings of the tenth IEEE international workshop on advanced motion control; 2008. p. 212–17. [25] Lee W, Lee CY, Jeong YH, et al. Distributed component friction model for precision control of a feed drive system. IEEE ASME Trans Mechatron 2015;20(4):1966–74. [26] Zhang WJ. Parameter identification of LuGre friction model in servo system based on improved particle swarm optimization algorithm. In: Proceedings of the twenty sixth Chinese control conference; 2007. p. 135–9. [27] Liu YF, Li J, Zhang ZM, et al. Experimental comparison of five friction models on the same test-bed of the micro stick-slip motion system. Mech Sci 2015;6:15–28. [28] Xiang HB, Tan WB, Li XF, et al. Adaptive friction compensation based on LuGre model. Chin J Mech Eng 2012;48(17):70–4. [29] Zhao JZ, Duan BY, Huang J. Effect and compensation for servo systems using LuGre friction model. Control Theory A 2008;25(6):990–4.
8. Conclusion A method is presented to improve the tracking accuracy of ball screw drives. The methodology is based on a proposed dynamic model, parameter identification method and feedforward compensation. The stiffness matrix of the model is identified by testing the deformation of several components of the drive when an axial load is applied. Friction is identified by testing the torque when the working table moves at different velocities and bears different loads, and by comparing the experimental tracking errors with simulation results. To validate the accuracy of the proposed dynamic model and parameter identification, dynamic tracking errors when applying trapezoidal and sinusoidal trajectories are simulated and are compared with experimental results. The MAE and RMSE values of the differences between the experimental and simulation results are smaller during the constant velocity stages than those during the accelerating and decelerating stages, and they are about 1–2 𝜇m for the sinusoidal signals. The simulation accuracy reaches 93% to 98% during the uniform velocity stages. To validate the compensation strategy, the dynamic tracking errors of two sinusoidal trajectories are compensated according to the simulation results. The compensation results present that the mechanical tracking errors of the two trajectories are reduced up to 59% and 86% through compensation, respectively. Therefore, the dynamic model, parameter identification method and compensation method proposed in this paper are effective in improving the tracking accuracy of ball screw drives. In addition, compared to the constant velocity stage, the simulation for the accelerating and decelerating stages is not accurate enough. Therefore, further research on how to further improve simulation accuracy is needed. Acknowledgments This work is supported by the National Natural Science Foundation of China (Grant no. 51675292) and the National Science and Technology Major Project of China (Grant no. 2015ZX04014021 and Grant no. 2016ZX04004004). References [1] Kim MS, Chung SC. Integrated design methodology of ball-screw driven servomechanisms with discrete controllers. Part I: modelling and performance analysis. Mechatronics 2006;16(8):491–502. [2] Kim MS, Chung SC. Integrated design methodology of ball-screw driven servomechanisms with discrete controllers. Part II: formulation and synthesis of the integrated design. Mechatronics 2006;16(8):503–12. 36
F. Li et al.
Mechatronics 55 (2018) 27–37 Tiemin Li is an Associate Professor in Department of Mechanical Engineering, Tsinghua University, China. He received a Bachelor degree in 1991 in Mechanical Engineering from Qiqihar University of China, a Master degree in 1996 in Harbin Institute of Technology of China, and a Ph.D. degree in 2000 in Tsinghua University of China. His research interests focus on parallel robots, numerical control, and thermal issues in machine tools.
[30] Liu LL, Liu HZ, Wu ZY, et al. An overview of friction models in mechanical systems. Adv Mech 2008;38(2):201–13. [31] Reuss M, Dadalau A, Verl A. Friction variances of linear machine tool axes. Procedia CIRP 2012;4:115–19. [32] Kim MS, Chung SC. Friction identification of ball-screw driven servomechanisms through the limit cycle analysis. Mechatronics 2006;16(2):131–40. Fuhua Li is a Ph.D. candidate in Department of Mechanical Engineering, Tsinghua University, China. He is also a visiting scholar in Department of Mechanical Engineering, Northwestern University, USA. He received a Bachelor degree in 2013 in Mechanical Engineering from Huazhong University of Science and Technology, China. His research interests focus on machine tool dynamics and control.
Kornel F. Ehmann is a Professor in Department of Mechanical Engineering, Northwestern University, USA. He received his Bachelor degree and Master degree respectively in 1970 and 1974, both in University of Belgrade, Yugoslavia. He received his Ph.D. degree in 1979 in Mechanical Engineering from University of Wisconsin-Madison. His research interests focus on Micro/meso‑scale manufacturing, precision engineering, machine tool dynamics and control, material removal processes, automation and robotics.
Yao Jiang is a Postdoctor in Institute of Instrument Science and Technology, Tsinghua University, China. He received a Bachelor degree in 2011 in Mechanical Engineering from Nanjing University of Science and Technology, China. And he received his Ph.D. degree in 2016 in Mechanical Engineering from Tsinghua University, China. His research interests focus on parallel robots.
37