Mathematical Problems in Engineering

Volume 2014, Article ID 398205, 10 pages

http://dx.doi.org/10.1155/2014/398205

## A Predictive Velocity Observer in Wire Bonder’s Control System

^{1}Department of Control and Mechatronics Engineering, Shenzhen Graduate School, Harbin Institute of Technology, Shenzhen 518055, China^{2}PKU-HKUST Shenzhen Hong Kong Institution, High-Tech Industrial Park, 2nd Floor, West Wing, IER Building, Nanshan, Shenzhen 518057, China^{3}Department of Electrical and Electronic Engineering, Hong Kong University of Science and Technology, Clear Water Bay, Kowloon, Hong Kong

Received 25 March 2014; Accepted 9 July 2014; Published 4 August 2014

Academic Editor: Jingjing Zhou

Copyright © 2014 Lei Zhou et al. This is an open access article distributed under the Creative Commons Attribution License, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.

#### Abstract

Wire bonder is a typical high speed machine. The motion speed of XY-stage is the key factor of bonding efficiency. However, phase lag elements in the servo system limit the bandwidth and slow down the system’s response. A predictive velocity observer is proposed to compensate for those phase lags. Then, the velocity loop controller can be designed as for a servo system which does not have those phase lags. Loop gains are enlarged and bandwidth is enlarged correspondingly. Then, the motion speed is improved and settling time is decreased. Experiment results verify that the predictive velocity observer provided a significant phase lead and the performance of wire bonder is improved.

#### 1. Introduction

Wire bonder [1] is typical high speed machine. It bonds wires which form a circuit between the pad and the lead. A typical auto-gold wire bonder consists of several modules such as auto-material handling module, pattern recognition (PR) system, ultrasonic generator (USG) module, electronic fire off (EFO) module, bond head, and XY-stage. Whatever, the motion speed of the XY-stage is the main factor affecting the bonding efficiency.

In the mechanical system, linear motor or voice coil motor has many advantages such as large torque or force outputs and less transmission mechanism with little friction and little precision loss. It can provide high acceleration to realize high speed motion. In particular, in wire bonder which always works at accelerating and decelerating motion, high acceleration is needed. The bandwidth of the mechanism of XY-stage is beyond 400 Hz. However, this kind of mechanism with linear motor is more sensitive to disturbances and high frequency resonances [2, 3].

In the control system, the typical three-loop control is still the mostly used control framework in industry. A servo drive realizes the control of current loop. The multiaxis controller realizes the position loop control. The velocity loop is optionally realized in drive or multiaxis controller. Higher gains are preferred since it can enlarge control bandwidth, reduce tracking errors, cut off settling time, and improve disturbance rejection ability. To achieve a high speed motion and a good tracking performance, gains of the control loop should be as high as possible. However, higher loop gains will destroy the system stability [2]. It usually takes the designer a lot of time to get a balance between fast response and enough margin of stability. It gets more hard especially when the control loop does not have enough bandwidth.

In the servo control system, there are many phase lag elements as shown in Figure 1. The phase lag elements contain filters and pure time delays. , , and represent filters in velocity loop, current loop, and measurement, respectively. represents the corresponding time delay. Filters are designed to eliminate disturbance or command fluctuations. Pure time delays are caused by calculations, signal transformations, and so forth. Low-pass filters and pure time delays produce more phase lags at higher frequency range. For example, a delay of 0.5 ms will introduce 36° of phase lag at 200 Hz. The phase lag elements limit the bandwidth and slow down the system’s response.

The mostly used control law to compensate for these phase lags is feedforward control (FFC) such as zero phase error tracking controller [4, 5] and high-order FFC [6]. FFC requires correct model of the plant. It is sensitive to plant uncertainties. One way is to set correct control parameters such as autotuning methods [3, 7–9] and iterative learning control strategy [10, 11]. Another way is to employ disturbance observer [12–15]. Even with disturbance observer, the bandwidth of the feedback control loop is not enlarged. In other words, the limitation of phase lags is not released.

Velocity observer is used to avoid the measuring noise caused by quantization of measured positions [16]. It is usually used in the velocity estimation at low speed. Luenberger observer [12, 17] has been used to provide better feedback which can compensate for phase lags caused by measurement. The most famous algorithm to compensate for time delay in feedback loop is Smith predictor [18, 19]. With decades of development, there are many modified Smith predictors [20, 21]. It uses a model of the plant without pure time delay and takes the output of the model as feedback signal. The system response is similar to that without time delay. Smith predictor is rarely used in servo systems since the delay time is small. However, the delay time will lower the control performance in high speed motion control system.

In this paper, we want to provide a way to compensate for phase lags in the feedback loop. Based on the idea of velocity observer and Smith predictor, we propose a predictive velocity observer to provide phase advance. Then, the inner loop stability can be enhanced and bandwidth of control loop can be improved. The velocity loop controller can be designed as for a control object without these phase lags. Therefore, loop gains can be significantly enlarged. The paper is arranged as follows. The wire bonder’s servo system is firstly introduced and modeled. Phase lags are modeled as a first order low-pass filter and a pure time delay. Then, the predictive velocity observer is introduced. The predictive ability and the disturbance rejection ability are analyzed. In the following section, the control structure using the predictive velocity observer is implemented and the tuning steps are also introduced. In the experiments, we test the control performance both in time domain and frequency domain. The results will show that the performance of wire bonder’s control system is significantly improved and high speed motion is achieved.

#### 2. Servo System Description

##### 2.1. Direct-Drive XY-Stage

In the wire bonder, the combination of linear motor with high speed and high resolution linear encoder is used in the XY-stage. The obvious advantage of direct-drive systems is their high acceleration and deceleration capability. Also, the transmission is simplified. The coulomb and viscous friction are significantly decreased. The mechanism of XY-stage is shown in Figure 2. This is a mechanism of generalized parallel structure. -axis is mounted on the top of -axis. Each axis is driven by a linear permanent magnet synchronous motor. The motions of -axis and -axis are decoupled by cross-roller way guides. The similar mechanism is also introduced in [7, 9]. Different from a cascaded structure, the load of -axis is reduced; then it can achieve higher acceleration and deceleration. Since there is only mass difference between -axis and -axis, we only focus on the control of -axis.

The load of -axis contains the table mounted with bonding mechanisms and the stage mounted with -direction linear guide and -direction linear guide. The total mass of the load is . A typical friction model has three parts: coulomb friction, stiction friction, and viscous friction [22]. Since the friction is very small in the mechanism, it can be ignorable. Therefore, the linear dynamics of -axis is where is the output force of the motor and is the velocity.

##### 2.2. Current Control Loop

The motor is driven by a servo amplifier. is the desired force input of the amplifier. Usually, it is an analog voltage. is the current output of the amplifier which is proportional to motor output force. The bandwidth of current loop is beyond 1 KHz. In the area where the bandwidth of mechanism is below 100 Hz, the process of amplifier can be modeled as a linear proportional component. However, the first resonance frequency of XY-stage in the wire bonder is designed at the around of 400 Hz. The model of current loop cannot be a simplified proportional component.

The current loop controller is usually a PI-controller with proportional gain and integral gain . The resistance and armature inductance of the coil winding are and , respectively. The current constant is and the force constant is . Back electromotive force (EMF) is . If there is not any low-pass filters used in the current loop, the linear dynamics of the current loop can be described as By ignoring the back EMF, (2) can be simplified as This indicates that the process of current loop is similar as a low-pass filter. By using reduced order processing, (3) is reduced to where is time constant of the low-pass filter.

Because is an analog voltage input of amplifier and also the output of velocity loop controller, there are an analog-to-digital converter process, calculations of current loop control, and a zero-order-holder between the velocity loop and current loop with sampling time of velocity loop. These are resources of time delay. The delay is approximately equal to the sum of sampling times of velocity loop and current loop. Thus, the model of the current loop is

##### 2.3. Feedback

In servo control systems, the velocity loop and position loop are realized in a multiaxis motion controller. The feedback signal comes from a high speed and high resolution encoder. Its bandwidth is 16 MHz and its resolution is 0.5 um. The signal firstly goes through the amplifier and is directly transferred into the multiaxis controller. The controller uses a high speed FPGA to calculate pulse from encoder. Its pin-to-pin time is 10 ns; that is, its bandwidth is 100 MHz which has enough bandwidth for the encoder. The calculated pulse is directly used for the position controller loop as feedback. The time delay from encoder measurement is ignorable. The velocity is calculated by differential of position. The process of velocity estimation has time delay which equals the sampling time of velocity loop.

There is also time delay in the calculation of velocity controller which also equals the sampling time of velocity loop. Coupled with delays in current loop, velocity estimation, and control law calculation, the total delay is 2 or 3 times the sampling time of the velocity loop [7]. Therefore, the model of control plant is where is defined as

##### 2.4. Traditional Position and Velocity Loop Controller

Figure 3 illustrates the traditional servo control structure. The feedback of position is from the encoder. The feedback of velocity is derivative of the position. The position loop and velocity loop controllers are and , respectively. PPI control is widely used in the servo control which means the position loop controller uses a -controller and the velocity loop controller uses a PI-controller. The transfer function of velocity loop is

should be designed as for . It is obvious that the phase lags will limit gains of and the bandwidth of the control loop.

#### 3. The Predictive Observer

##### 3.1. Structure of Predictive Observer

The diagram of the control structure using predictive observer is shown in Figure 4. The measured signal is a signal of including the output signal and measurement noise . The predictive observer contains the model of the plant and phase lags which are denoted by and , respectively. is a disturbance compensator of the observer. The observed signal of is . When using as feedback, the observer is a general form of velocity observer. If the model is correct and there are no disturbances and noises, will be the same as even when is set to . However, the model could not be exactly correct since the real plant has many nonlinear elements and high frequency modes. Therefore, should be well designed; then can be well approximated to . When using as feedback, the observer is a Smith predictor. The inverse of is realizable. Therefore, is used as feedback signal to the main controller. Then, the transfer function from input signal to output is

##### 3.2. Predictive Ability

When the model of control object works properly, that is, the polynomial and in the observer meet,

According to (9) and (10), will be

In this condition, the characteristic polynomial of equals , excluding the phase lags . The predictive observer can provide feedback without phase lags . Then, can be designed without considering the phase lags. In low-frequency region, it is realizable to meet (10). Therefore, gain of can be improved.

With the improved gain of , the tracking performance can be improved. Considering the transfer function from the reference to the tracking error , represents of the traditional control structure and represents of the proposed control structure. They will be

The last equation in (13) is satisfied when (10) is satisfied. In the low-frequency domain, gain of can be improved; that is, . Since when , we get . Thus, a better tracking performance can be obtained with the predictive ability of the observer.

##### 3.3. Disturbances Rejection

In (9), the input-output characteristic of the observer is independent of the compensator . The compensator can be configured independently. The compensator closes the observer’s loop and keeps the output of observer accurate to measured signal. Disturbances can be correctly observed by the compensator. Then, main controller adds more stiffness to improve disturbance response. Disturbances like constant bias and transient load fluctuation are common in servo system. We investigate the ability to eliminate disturbances.

The transfer function from disturbance to output is where

Bias is a step disturbance . The steady-state error is

If both and have an integral and even if has a pole at , the steady-state error would be

This indicates that both and should have an integral to get a non-steady-state error control.

The observed disturbance is

If conditions in (10) are satisfied, (18) may be reduced to

It indicates that is after low-pass filtering. If the gain of can be high enough, can approximate precisely below the observer bandwidth. It is feasible. In the observer, the model of plant and phase lag elements is designed in software. They are precisely known and invariant during operation. This allows tuning the observer loop gain higher than the traditional control loop.

Equation (14) can be rewritten as where

With the improved gain of , where the value of is less than the value of the cut-off frequency .

Then, (20) can be approximated as

As the gain of improves, the response to load fluctuation is reduced. Thus, the disturbance rejection ability is indirectly improved.

#### 4. Implementation of Predictive Velocity Observer

In serial control loops, the bandwidth of inner loop limits the bandwidth of outer loop. Therefore, the bandwidth of velocity loop should be as high as possible. That is why we always tune the gain of velocity loop as high as possible. As discussed in Section 2, phase lag elements limit the bandwidth of velocity control loop and the gain of velocity controller . In this section, we apply the predictive observer as a predictive velocity observer and add it into the traditional control structure.

We use the model of control plant as in (6). The diagram of proposed control structure is illustrated in Figure 5(a). and are nominal values of and , respectively. To reduce the computation, are results of nominal values of divided by , respectively. The position loop and velocity loop controllers are -controller and PI-controller, respectively. is position reference and is position feedback. is velocity command and is velocity feedback. is force command of the drive which includes the calculated force command by controller and disturbance . The corresponding output force of the motor is .

##### 4.1. Design of the Compensator

The compensator is realized by a form of PID controller with three parameters such as , , and . Parameters of the compensator are designed by pole placement. The closed loop transfer function of the observer is as follows:

As discussed in the last section, should have integration to eliminate steady-state error. In servo system, pure time delay is 2 or 3 times the sampling time. In the design of the compensator, for simplicity, pure time delay part is ignored. The characteristic polynomial of will be

By setting poles of as triple poles at , that is, all eigenvalues of polynomial (19) are equal to , we can get

This is an engineer approach of setting poles of . The parameter setting of is simplified to include only one parameter .

##### 4.2. Manual Tuning of Model’s Parameters

The model’s parameters, and , can be got by identification. Usually, the identification is performed in open loop such as unbiased least squares scheme. For a servo system with velocity loop realized in servo drive, the open loop test means open the position loop and close velocity and current loop. For this type of application in this paper, the open loop test means open the position loop and velocity loop. The acceleration of the motor is basically proportional to the voltage input. When the input is constant, it means that the acceleration is constant. Therefore, it is very dangerous. Here, we give an alternative way to decide the model’s parameters, that is, a manual tuning method. This method is easy to perform and intuitional. The tuning steps are as follows.

*Step **1*. Set , use the velocity feedback by differential of position, and tune and . Gains of and should be as high as possible to get good tracking. Start a positioning motion and record the measured velocity and observed velocity , as shown in Figure 6(a). The planed velocity profile is shown as . At the initial state, both and have initial values which could not be zero.

*Step **2*. Tune until both velocity profiles have the same slope, as shown in Figure 6(b). The slope of velocity means the acceleration. If the slope of is lower than , increase the value of . If the slope of is higher than , decrease the value of .

*Step **3*. Tune until both velocity profiles have the same lags to . If there is no friction, both velocity profiles will coincide after tuning , as shown in Figure 6(c). If goes faster than , decrease the value of . If the profile of is behind , increase the value of .

*Step **4*. Turn on and tune and . If and are well tuned, the profile of will coincide with the profile of as shown in Figure 6(d).

These steps illustrations in Figure 6 are simulated result in Matlab. In practice, there could be vibrations in the velocity profiles. Nevertheless, the basic rules hold.

#### 5. Experiments

The proposed control algorithm is realized in a multiaxis motion controller with a Blackfin serial DSP produced by ADI. The parameters of motor and drive of -axis and the multiaxis controller are listed in Table 1. Some of them are nominal values from the manual, some of them are identification results, and some are parameters set in the multiaxis control by the authors. The motor force constant is 43 N/A, DAC range is −10 V to 10 V, and load mass is 5.3 Kg. Therefore, the ideal acceleration is up to 8 g. A point-to-point motion with distance of 15 mm is used to test the controller’s performances. The velocity planning is a trapezoidal profile velocity with 2 ms smooth. The planned acceleration is 75 m/s^{2}. The planned motion time is 30 ms.

By using the traditional PPI control, the corresponding parameters are , , and , respectively. After manual tuning, a satisfactory set of parameters are , , and .

By adding the proposed predictive velocity observer, we kept the PPI control law as used in the traditional control structure. The time delay which is set to three times the sampling times of velocity loop is realized in the digital controller by three zero-order-holders. The time constant is set to 0.3 ms and poles of compensator are set at Hz. The satisfactory set of control parameters are , , and . The gains of controller are enlarged by several times. We compared the motion result between the traditional structure and proposed control structure by motion velocity, controller’s output command, tracking error, and motor’s current. The comparison is illustrated in Figure 7. Comparing these velocity profiles, we see that the profile by using the proposed method is closest to the planned profile. The settling time is decreased to 3 ms. Since gains of the traditional loop cannot be tuned larger, the velocity profile cannot track the planned profile closely. Also, there is a larger tracking error as shown in Figure 7. The command output of the proposed control structure is more intensive than the traditional one. It means the proposed control structure can get a faster response. The command to the drive represents the torque command and the current in the motor represents the torque output of the motor. By using the proposed control structure, the current can be held at around 8.5 A during acceleration. The corresponding acceleration is 6.8 g. By using the traditional structure, its maximum is 6.8 g.

Several motions with different travel distances are tested on the wire bonder. The result is listed in Table 2. After using the predictive observer, the positioning time is extremely reduced. Even saving 2 ms in one motion, the contribution to efficiency is considerable. Before using the predictive observer, a bonding process takes 210 ms. By using the predictive observer, the bonding process takes less than 135 ms. It is a significant improvement of efficiency.

The bandwidth and loop gains are enlarged since we use the observed velocity instead of the measured velocity. To verify that the observed velocity has more phase advances, we perform reciprocating motions with different distances and record the track error of velocity loop (VErr), velocity measured by differential of position (EncVel), and feedback velocity signal from the predictive observer (ObsVel). Then, we take fast Fourier transformation (FFT) of the related data. The bode plot of the relationship between VErr to EncVel and VErr to ObsVel are shown in Figure 8. Since the is set at 350 Hz, the upper limited of frequency is set at 500 Hz. It shows that ObsVel has more phase lead than EncVel. The degree of phase lead increases with the increasing of frequency. At 300 Hz, the degree of phase lead is about 35°. The magnitude is similar since the velocity controller is the same one.

The frequency characteristics show the system responses more essentially. The frequency response of open position loop and that of closed position loop are shown in Figure 9. These characteristics are also gotten by FFT of reciprocating motions. The magnitude of open position loop is enlarged by more than 15 dB after using the proposed predictive velocity observer. By provided phase advances in the velocity loop, the open position loop using predictive observer has about 40° phase lead more than the traditional one at 300 Hz. The magnitude of closed position loop using traditional control structure decreases to −3 dB at 95 Hz. The phase decreases to −90° at 124 Hz. Therefore, the bandwidth of the traditional control structure is 95 Hz. The closed loop magnitude of proposed control structure equals −3 dB at 329 Hz. The phase equals −90° at 260 Hz. Therefore, the bandwidth of proposed control structure is 260 Hz. The bandwidth is significantly improved after using the predictive velocity observer.

#### 6. Conclusions

In this paper, a predictive velocity observer for wire bonder’s motion control system has been proposed. The bandwidth of this kind of high speed servo system should be as high as possible. Therefore, the model of phase lag elements which limit the control bandwidth is considered in the design of the velocity observer. In the design of predictive velocity observer, phase lags are modeled as a first order low-pass filter and a pure time delay. With the predictive observer, the velocity feedback will not have these phase lags. Experiments results are both analyzed in time domain and frequency domain. Gains of both velocity controller and position controller are enlarged by several times. The bandwidth is significantly enlarged. It is verified that the motion performance and bonding speed are significantly improved.

#### Conflict of Interests

The authors declare that there is no conflict of interests regarding the publication of this paper.

#### Acknowledgments

The financial support by Guangdong Science and Technology Plan Projects (Grant no. 2010A080401003) and the International Innovation Team of Guangdong Province is gratefully acknowledged.

#### References

- S. K. Prasad,
*Advanced Wire Bond Interconnection Technology*, Kluwer Academic Publishers, 2004. - W. Li and X. Cheng, “Adaptive high-precision control of positioning tables—theory and experiments,”
*IEEE Transactions on Control Systems Technology*, vol. 2, no. 3, pp. 265–270, 1994. View at Publisher · View at Google Scholar · View at Scopus - C. Zhang, X. Yang, Y. Xiao, and G. Zhao, “Robust control of high speed high precision linear motion system,” in
*Proceedings of the International Conference, Applied Informatics and Communication (ICAIC '11)*, pp. 246–254, Xi'an, China, 2011. - M. Tomizuka, “Zero phase error tracking algorithm for digital control,”
*Journal of Dynamic Systems, Measurement and Control*, vol. 190, no. 1, pp. 65–68, 1987. View at Google Scholar · View at Scopus - M. Yamada, Y. Funahashi, and Z. Riadh, “Generalized optimal zero phase error tracking controller design,”
*Journal of Dynamic Systems, Measurement and Control*, vol. 121, no. 2, pp. 165–170, 1999. View at Publisher · View at Google Scholar · View at Scopus - P. Lambrechts, M. Boerlage, and M. Steinbuch, “Trajectory planning and feedforward design for electromechanical motion systems,”
*Control Engineering Practice*, vol. 13, no. 2, pp. 145–157, 2005. View at Publisher · View at Google Scholar · View at Scopus - Z. Z. Liu, F. L. Luo, and M. H. Rashid, “Robust high speed and high precision linear motor direct-drive XY-table motion system,”
*IEE Proceedings: Control Theory and Applications*, vol. 151, no. 2, pp. 166–173, 2004. View at Publisher · View at Google Scholar · View at Scopus - X. Ling, X. Li, Y. Zhu, and T. Feng, “Quantitative feedback theory and zero phase error tracking control combined robust control for radar truck leveling simulator,”
*Journal of Shanghai University*, vol. 13, no. 5, pp. 384–390, 2009. View at Publisher · View at Google Scholar · View at Scopus - Z. Z. Liu, F. L. Luo, and M. H. Rashid, “Robust and precision motion control system of linear-motor direct drive for high-speed X-Y table positioning mechanism,”
*IEEE Transactions on Industrial Electronics*, vol. 52, no. 5, pp. 1357–1363, 2005. View at Publisher · View at Google Scholar · View at Scopus - H. Ding and J. Wu, “Point-to-point motion control for a high-acceleration positioning table via cascaded learning schemes,”
*IEEE Transactions on Industrial Electronics*, vol. 54, no. 5, pp. 2735–2744, 2007. View at Publisher · View at Google Scholar · View at Scopus - J. Wu, Z. Xiong, K. M. Lee, and H. Ding, “High-acceleration precision point-to-point motion control with look-ahead properties,”
*IEEE Transactions on Industrial Electronics*, vol. 58, no. 9, pp. 4343–4352, 2011. View at Publisher · View at Google Scholar · View at Scopus - G. Ellis,
*Observer in Control Systems. A Practical Guide*, Academic Press, 2002. - C. J. Kempf and S. Kobayashi, “Disturbance observer and feedforward design for a high-speed direct-drive positioning table,”
*IEEE Transactions on Control Systems Technology*, vol. 7, no. 5, pp. 513–526, 1999. View at Publisher · View at Google Scholar · View at Scopus - K. Low and H. Zhuang, “Robust model predictive control and observer for direct drive applications,”
*IEEE Transactions on Power Electronics*, vol. 15, no. 6, pp. 1018–1027, 2000. View at Publisher · View at Google Scholar · View at Scopus - M. Yan and Y. Shiu, “Theory and application of a combined feedback-feedforward control and disturbance observer in linear motor drive wire-EDM machines,”
*International Journal of Machine Tools and Manufacture*, vol. 48, no. 3-4, pp. 388–401, 2008. View at Publisher · View at Google Scholar · View at Scopus - F. Lin and S. Yang, “Adaptive fuzzy logic-based velocity observer for servo motor drives,”
*Mechatronics*, vol. 13, no. 3, pp. 229–241, 2003. View at Publisher · View at Google Scholar · View at Scopus - M. Jouili, K. Jarray, Y. Koubaa, and M. Boussak, “Luenberger state observer for speed sensorless ISFOC induction motor drives,”
*Electric Power Systems Research*, vol. 89, pp. 139–147, 2012. View at Publisher · View at Google Scholar · View at Scopus - O. J. M. Smith, “A controller to overcome dead time,”
*Indian Scientists Association in Japan*, vol. 6, no. 2, pp. 28–33, 1959. View at Google Scholar - K. J. Åström,
*Advanced PID Control*, ISA Press, 2006. - K. J. Åström, C. C. Hang, and B. C. Lim, “A new Smith predictor for controlling a process with an integrator and long dead-time,”
*IEEE Transactions on Automatic Control*, vol. 39, no. 2, pp. 343–345, 1994. View at Publisher · View at Google Scholar · View at MathSciNet · View at Scopus - M. R. Matausek and A. D. Micic, “A modified Smith predictor for controlling a process with an integrator and long dead-time,”
*IEEE Transactions on Automatic Control*, vol. 41, no. 8, pp. 1199–1203, 1996. View at Publisher · View at Google Scholar · View at MathSciNet · View at Scopus - K. Erkorkmaz and Y. Altintas, “High speed CNC system design. Part II: Modeling and identification of feed drives,”
*International Journal of Machine Tools and Manufacture*, vol. 41, no. 10, pp. 1487–1509, 2001. View at Publisher · View at Google Scholar · View at Scopus