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

Authors: Lei Zhou; Jiangang Li; Wennong Zhang; Zexiang Li
Journal: Mathematical Problems in Engineering
 (2014)

---

## 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.


---

## Body

## 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 Figure1. The phase lag elements contain filters and pure time delays. Fv(s), Fc(s), and Fm(s) 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.Phase lags in the open loop of a general servo control system.Fv(s), Fc(s), Fm(s), and F(s) are filters. τ1, τ2, τ3, and τ are pure delay time.
(a)
(b)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 Figure2. This is a mechanism of generalized parallel structure. Y-axis is mounted on the top of X-axis. Each axis is driven by a linear permanent magnet synchronous motor. The motions of X-axis and Y-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 X-axis is reduced; then it can achieve higher acceleration and deceleration. Since there is only mass difference between X-axis and Y-axis, we only focus on the control of X-axis.Figure 2
The XY-table.The load ofX-axis contains the table mounted with bonding mechanisms and the stage mounted with Y-direction linear guide and X-direction linear guide. The total mass of the load is M. 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 X-axis is
(1)Fm=Mv˙,
where Fm is the output force of the motor and v is the velocity.


### 2.2. Current Control Loop

The motor is driven by a servo amplifier.ua is the desired force input of the amplifier. Usually, it is an analog voltage. id 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 gainKp and integral gain Ki. The resistance and armature inductance of the coil winding are Ra and La, respectively. The current constant is Ka and the force constant is Kf. Back electromotive force (EMF) is Ke. If there is not any low-pass filters used in the current loop, the linear dynamics of the current loop can be described as
(2)(Las+Ra)id=Kps+Kis(Kaua-id)-Kev,Fm=Kfid.
By ignoring the back EMF, (2) can be simplified as
(3)idua=Ka(1+((Las+Ra)/(Kp(s+Ki)))s).
This indicates that the process of current loop is similar as a low-pass filter. By using reduced order processing, (3) is reduced to
(4)idua=Ka1+Tis,
where Ti is time constant of the low-pass filter.Becauseua 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 Li is approximately equal to the sum of sampling times of velocity loop and current loop. Thus, the model of the current loop is
(5)idua=Ka1+Tise-τ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τv 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
(6)Gp(s)=F(s)P(s)e-τs=e-τs1+TisKaKfMs,
where F(s) is defined as
(7)F(s)=11+Tis.


### 2.4. Traditional Position and Velocity Loop Controller

Figure3 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 Cp(s) and Cv(s), respectively. PPI control is widely used in the servo control which means the position loop controller uses a P-controller and the velocity loop controller uses a PI-controller. The transfer function of velocity loop is
(8)Gv(s)=F(s)P(s)e-τsCv(s)1+F(s)P(s)e-τsCv(s).Figure 3
Traditional servo control structure.C
v
(
s
) should be designed as for F(s)P(s)e-τs. It is obvious that the phase lags F(s)e-τs will limit gains of Cv(s) and the bandwidth of the control loop.


## 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 Figure2. This is a mechanism of generalized parallel structure. Y-axis is mounted on the top of X-axis. Each axis is driven by a linear permanent magnet synchronous motor. The motions of X-axis and Y-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 X-axis is reduced; then it can achieve higher acceleration and deceleration. Since there is only mass difference between X-axis and Y-axis, we only focus on the control of X-axis.Figure 2
The XY-table.The load ofX-axis contains the table mounted with bonding mechanisms and the stage mounted with Y-direction linear guide and X-direction linear guide. The total mass of the load is M. 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 X-axis is
(1)Fm=Mv˙,
where Fm is the output force of the motor and v is the velocity.


## 2.2. Current Control Loop

The motor is driven by a servo amplifier.ua is the desired force input of the amplifier. Usually, it is an analog voltage. id 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 gainKp and integral gain Ki. The resistance and armature inductance of the coil winding are Ra and La, respectively. The current constant is Ka and the force constant is Kf. Back electromotive force (EMF) is Ke. If there is not any low-pass filters used in the current loop, the linear dynamics of the current loop can be described as
(2)(Las+Ra)id=Kps+Kis(Kaua-id)-Kev,Fm=Kfid.
By ignoring the back EMF, (2) can be simplified as
(3)idua=Ka(1+((Las+Ra)/(Kp(s+Ki)))s).
This indicates that the process of current loop is similar as a low-pass filter. By using reduced order processing, (3) is reduced to
(4)idua=Ka1+Tis,
where Ti is time constant of the low-pass filter.Becauseua 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 Li is approximately equal to the sum of sampling times of velocity loop and current loop. Thus, the model of the current loop is
(5)idua=Ka1+Tise-τ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τv 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
(6)Gp(s)=F(s)P(s)e-τs=e-τs1+TisKaKfMs,
where F(s) is defined as
(7)F(s)=11+Tis.


## 2.4. Traditional Position and Velocity Loop Controller

Figure3 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 Cp(s) and Cv(s), respectively. PPI control is widely used in the servo control which means the position loop controller uses a P-controller and the velocity loop controller uses a PI-controller. The transfer function of velocity loop is
(8)Gv(s)=F(s)P(s)e-τsCv(s)1+F(s)P(s)e-τsCv(s).Figure 3
Traditional servo control structure.C
v
(
s
) should be designed as for F(s)P(s)e-τs. It is obvious that the phase lags F(s)e-τs will limit gains of Cv(s) 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 Figure4. The measured signal ym is a signal of including the output signal y and measurement noise n. The predictive observer contains the model of the plant and phase lags which are denoted by Po(s) and Fo(s)e-τos, respectively. Co(s) is a disturbance compensator of the observer. The observed signal of ym is yo. When using yo as feedback, the observer is a general form of velocity observer. If the model is correct and there are no disturbances and noises, yo will be the same as ym even when Co(s) is set to 0. However, the model could not be exactly correct since the real plant has many nonlinear elements and high frequency modes. Therefore, Co(s) should be well designed; then yo can be well approximated to ym. When using ys as feedback, the observer is a Smith predictor. The inverse of Fo(s) is realizable. Therefore, yfb is used as feedback signal to the main controller. Then, the transfer function from input signal r to output y is
(9)Gyr(s)=y(s)r(s)=C(s)F(s)P(s)e-τs×(×(1+Co(s)Po(s)Fo(s)e-τos)-1)1+C(s)Po(s)×(×(1+Co(s)Po(s)Fo(s)e-τos)-1(1+Co(s)P(s)F(s)e-τs)×(1+Co(s)Po(s)Fo(s)e-τos)-1))-1.Figure 4
Control structure with predictive observer.


### 3.2. Predictive Ability

When the model of control object works properly, that is, the polynomialFo(s)e-τos and Po(s) in the observer meet,
(10)Fo(s)e-τos≈F(s)e-τs,Po(s)≈P(s).According to (9) and (10), Gyr(s) will be
(11)Gyr(s)=y(s)r(s)≈C(s)P(s)1+C(s)Po(s)F(s)e-τs.In this condition, the characteristic polynomial ofGyr(s) equals 1+C(s)P(s), excluding the phase lags F(s). The predictive observer can provide feedback without phase lags F(s)e-τs. Then, C(s) can be designed without considering the phase lags. In low-frequency region, it is realizable to meet (10). Therefore, gain of C(s) can be improved.With the improved gain ofC(s), the tracking performance can be improved. Considering the transfer function Ger(s) from the reference r to the tracking error e, Ger1(s) represents Ger(s) of the traditional control structure and Ger2(s) represents Ger(s) of the proposed control structure. They will be
(12)Ger1(s)=11+C1(s)F(s)P(s)e-τs.(13)Ger2(s)≈11+C2(s)Po(s).The last equation in (13) is satisfied when (10) is satisfied. In the low-frequency domain, gain of C(s) can be improved; that is, |C2(jω)|>|C1(jω)|. Since |F(jω)<1| when ω>0, we get |Ger2(jω)|<|Ger1(jω)|. 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 Co(s). 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 C(s) 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(14)Gyd(s)=N(s)D(s),
where
(15)N(s)=(1+C(s)Po(s)+Co(s)Po(s)Fo(s)e-τos)·P(s)F(s)e-τs,D(s)=1+Co(s)Po(s)Fo(s)e-τos+C(s)Po(s)(1+Co(s)P(s)F(s)e-τs).Bias is a step disturbanced(s)=1/s. The steady-state error ysd⁡ is
(16)ysd⁡=lim⁡s→0Gyd(s)·d(s)·s=(1+C(0)Po(0)+Co(0)Po(0))P(0)1+Co(0)Po(0)+C(0)Po(0)(1+Co(0)P(0)).If bothC(s) and Co(s) have an integral and even if P(s) has a pole at s=0, the steady-state error would be
(17)ysd≈0.This indicates that bothC(s) and Co(s) should have an integral to get a non-steady-state error control.The observed disturbancedo(s) is
(18)do(s)=(1+Po(s)C(s))Co(s)P(s)F(s)e-τsd(s)D(s).If conditions in (10) are satisfied, (18) may be reduced to
(19)do(s)=Co(s)P(s)F(s)e-τs1+Co(s)Po(s)Foe-τos(s)d(s).It indicates thatdo(s) is d(s) after low-pass filtering. If the gain of Co(s) can be high enough, do(s) can approximate d(s) 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
(20)y(s)d(s)=(1-M(s)Co(s)Po(s)Fo(s)e-τos1+Co(s)Po(s)Fo(s)e-τos)·Po(s)Fo(s)e-τos,
where
(21)M(s)=Po(s)C(s)1+Po(s)C(s).With the improved gain ofC(s),
(22)M(jω)≈1,∀ω∈[0,ωo),
where the value of ωo is less than the value of the cut-off frequency ωc.Then, (20) can be approximated as
(23)|y(jω)||d(jω)|≈|Po(jω)Fo(jω)||1+Co(jω)Po(jω)Fo(jω)e-jτoω|.As the gain ofCo(s) improves, the response to load fluctuation is reduced. Thus, the disturbance rejection ability is indirectly improved.


## 3.1. Structure of Predictive Observer

The diagram of the control structure using predictive observer is shown in Figure4. The measured signal ym is a signal of including the output signal y and measurement noise n. The predictive observer contains the model of the plant and phase lags which are denoted by Po(s) and Fo(s)e-τos, respectively. Co(s) is a disturbance compensator of the observer. The observed signal of ym is yo. When using yo as feedback, the observer is a general form of velocity observer. If the model is correct and there are no disturbances and noises, yo will be the same as ym even when Co(s) is set to 0. However, the model could not be exactly correct since the real plant has many nonlinear elements and high frequency modes. Therefore, Co(s) should be well designed; then yo can be well approximated to ym. When using ys as feedback, the observer is a Smith predictor. The inverse of Fo(s) is realizable. Therefore, yfb is used as feedback signal to the main controller. Then, the transfer function from input signal r to output y is
(9)Gyr(s)=y(s)r(s)=C(s)F(s)P(s)e-τs×(×(1+Co(s)Po(s)Fo(s)e-τos)-1)1+C(s)Po(s)×(×(1+Co(s)Po(s)Fo(s)e-τos)-1(1+Co(s)P(s)F(s)e-τs)×(1+Co(s)Po(s)Fo(s)e-τos)-1))-1.Figure 4
Control structure with predictive observer.


## 3.2. Predictive Ability

When the model of control object works properly, that is, the polynomialFo(s)e-τos and Po(s) in the observer meet,
(10)Fo(s)e-τos≈F(s)e-τs,Po(s)≈P(s).According to (9) and (10), Gyr(s) will be
(11)Gyr(s)=y(s)r(s)≈C(s)P(s)1+C(s)Po(s)F(s)e-τs.In this condition, the characteristic polynomial ofGyr(s) equals 1+C(s)P(s), excluding the phase lags F(s). The predictive observer can provide feedback without phase lags F(s)e-τs. Then, C(s) can be designed without considering the phase lags. In low-frequency region, it is realizable to meet (10). Therefore, gain of C(s) can be improved.With the improved gain ofC(s), the tracking performance can be improved. Considering the transfer function Ger(s) from the reference r to the tracking error e, Ger1(s) represents Ger(s) of the traditional control structure and Ger2(s) represents Ger(s) of the proposed control structure. They will be
(12)Ger1(s)=11+C1(s)F(s)P(s)e-τs.(13)Ger2(s)≈11+C2(s)Po(s).The last equation in (13) is satisfied when (10) is satisfied. In the low-frequency domain, gain of C(s) can be improved; that is, |C2(jω)|>|C1(jω)|. Since |F(jω)<1| when ω>0, we get |Ger2(jω)|<|Ger1(jω)|. 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 Co(s). 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 C(s) 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(14)Gyd(s)=N(s)D(s),
where
(15)N(s)=(1+C(s)Po(s)+Co(s)Po(s)Fo(s)e-τos)·P(s)F(s)e-τs,D(s)=1+Co(s)Po(s)Fo(s)e-τos+C(s)Po(s)(1+Co(s)P(s)F(s)e-τs).Bias is a step disturbanced(s)=1/s. The steady-state error ysd⁡ is
(16)ysd⁡=lim⁡s→0Gyd(s)·d(s)·s=(1+C(0)Po(0)+Co(0)Po(0))P(0)1+Co(0)Po(0)+C(0)Po(0)(1+Co(0)P(0)).If bothC(s) and Co(s) have an integral and even if P(s) has a pole at s=0, the steady-state error would be
(17)ysd≈0.This indicates that bothC(s) and Co(s) should have an integral to get a non-steady-state error control.The observed disturbancedo(s) is
(18)do(s)=(1+Po(s)C(s))Co(s)P(s)F(s)e-τsd(s)D(s).If conditions in (10) are satisfied, (18) may be reduced to
(19)do(s)=Co(s)P(s)F(s)e-τs1+Co(s)Po(s)Foe-τos(s)d(s).It indicates thatdo(s) is d(s) after low-pass filtering. If the gain of Co(s) can be high enough, do(s) can approximate d(s) 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
(20)y(s)d(s)=(1-M(s)Co(s)Po(s)Fo(s)e-τos1+Co(s)Po(s)Fo(s)e-τos)·Po(s)Fo(s)e-τos,
where
(21)M(s)=Po(s)C(s)1+Po(s)C(s).With the improved gain ofC(s),
(22)M(jω)≈1,∀ω∈[0,ωo),
where the value of ωo is less than the value of the cut-off frequency ωc.Then, (20) can be approximated as
(23)|y(jω)||d(jω)|≈|Po(jω)Fo(jω)||1+Co(jω)Po(jω)Fo(jω)e-jτoω|.As the gain ofCo(s) 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 Section2, phase lag elements F(s)e-τs limit the bandwidth of velocity control loop and the gain of velocity controller Cv(s). 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). Tio and Lo are nominal values of Ti and L, respectively. To reduce the computation, Mo are results of nominal values of M divided by KaKf, respectively. The position loop and velocity loop controllers are P-controller and PI-controller, respectively. X* is position reference and Xfb is position feedback. Vr is velocity command and Vfb is velocity feedback. fr is force command of the drive which includes the calculated force command by controller and disturbance d. The corresponding output force of the motor is te.Implementation of servo control structure with predictive observer.
(a)
Proposed servo control structure with predictive observer
(b)
Equivalent control structure


### 4.1. Design of the Compensator

The compensatorCo(s) is realized by a form of PID controller with three parameters such as k1, k2, and k3. Parameters of the compensator are designed by pole placement. The closed loop transfer function of the observer is as follows:
(24)Go(s)=vou=Po(s)Fo(s)e-τos1+Co(s)Po(s)Fo(s)e-τos.As discussed in the last section,Co(s) 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 Go(s) will be
(25)TioMos3+(k1Tio+Mo)s2+(k1+k2)s+k3.By setting poles ofGo(s) as triple poles at ωo, that is, all eigenvalues of polynomial (19) are equal to ωo, we can get
(26)k1=3ωoMo-MoTio,k2=3ωo2MoTio-3ωoMo+MoTio,k3=ωo3MoTio.This is an engineer approach of setting poles ofGo(s). The parameter setting of Co(s) is simplified to include only one parameter ωo.


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

The model’s parameters,Mo and Tio, 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 Co(s)=0, use the velocity feedback by differential of position, and tune Cv(s) and Cp(s). Gains of Cv(s) and Cp(s) should be as high as possible to get good tracking. Start a positioning motion and record the measured velocity Vm and observed velocity Vo, as shown in Figure 6(a). The planed velocity profile is shown as dX*/dt. At the initial state, both Mo and Tio have initial values which could not be zero.Illustration of tuning steps.
(a)
Initial state
(b)
TuningMo
(c)
TuningTio
(d)
TuningCo(s)Step
2. Tune Mo 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 Vm is lower than Vo, increase the value of Mo. If the slope of Vm is higher than Vo, decrease the value of Mo.Step
3. Tune Tio until both velocity profiles have the same lags to dX*/dt. If there is no friction, both velocity profiles will coincide after tuning Tio, as shown in Figure 6(c). If Vm goes faster than Vo, decrease the value of Tio. If the profile of Vm is behind Vo, increase the value of Tio.Step
4. Turn on Co(s) and tune Co(s) and C(s). If Mo and Tio are well tuned, the profile of Vo will coincide with the profile of Vm as shown in Figure 6(d).These steps illustrations in Figure6 are simulated result in Matlab. In practice, there could be vibrations in the velocity profiles. Nevertheless, the basic rules hold.


## 4.1. Design of the Compensator

The compensatorCo(s) is realized by a form of PID controller with three parameters such as k1, k2, and k3. Parameters of the compensator are designed by pole placement. The closed loop transfer function of the observer is as follows:
(24)Go(s)=vou=Po(s)Fo(s)e-τos1+Co(s)Po(s)Fo(s)e-τos.As discussed in the last section,Co(s) 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 Go(s) will be
(25)TioMos3+(k1Tio+Mo)s2+(k1+k2)s+k3.By setting poles ofGo(s) as triple poles at ωo, that is, all eigenvalues of polynomial (19) are equal to ωo, we can get
(26)k1=3ωoMo-MoTio,k2=3ωo2MoTio-3ωoMo+MoTio,k3=ωo3MoTio.This is an engineer approach of setting poles ofGo(s). The parameter setting of Co(s) is simplified to include only one parameter ωo.


## 4.2. Manual Tuning of Model’s Parameters

The model’s parameters,Mo and Tio, 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 Co(s)=0, use the velocity feedback by differential of position, and tune Cv(s) and Cp(s). Gains of Cv(s) and Cp(s) should be as high as possible to get good tracking. Start a positioning motion and record the measured velocity Vm and observed velocity Vo, as shown in Figure 6(a). The planed velocity profile is shown as dX*/dt. At the initial state, both Mo and Tio have initial values which could not be zero.Illustration of tuning steps.
(a)
Initial state
(b)
TuningMo
(c)
TuningTio
(d)
TuningCo(s)Step
2. Tune Mo 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 Vm is lower than Vo, increase the value of Mo. If the slope of Vm is higher than Vo, decrease the value of Mo.Step
3. Tune Tio until both velocity profiles have the same lags to dX*/dt. If there is no friction, both velocity profiles will coincide after tuning Tio, as shown in Figure 6(c). If Vm goes faster than Vo, decrease the value of Tio. If the profile of Vm is behind Vo, increase the value of Tio.Step
4. Turn on Co(s) and tune Co(s) and C(s). If Mo and Tio are well tuned, the profile of Vo will coincide with the profile of Vm as shown in Figure 6(d).These steps illustrations in Figure6 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 ofX-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/s2. The planned motion time is 30 ms.Table 1
Parameters of the platform.
Parameters
Units
Value
Force constant (Kf)
N/A
43
Back EMF (Ke)
V/(m/s)
43
Resistance (Ra)
Ohms
3.5
Armature inductance (La)
H
4.0
e
-
3
Mass of load (M)
Kg
5.3244
Continuous working voltage
V d.c.
70
Continuous working current
A
4.1
Peak velocity
m/s
10
Peak current
A
10.2
Electrical time constant
s
1.061
e
-
4
Resolution of encoder
m/pulse
5
e
-
7
Resolution of current measurement
A
4.9
e
-
3
Resolution of voltage reference
V
0.1
Resolution of current command
A
7.00
e
-
4
Resolution of velocity command
m/s
3.576
e
-
4
Sampling time of current loop
s
3.125
e
-
5
Sampling time of velocity loop
s
6.25
e
-
5
Sampling time of position loop
s
1.25
e
-
4
Transforming time of encoder signal
s
6.25
e
-
5By using the traditional PPI control, the corresponding parameters arepKp, vKp, and vKi, respectively. After manual tuning, a satisfactory set of parameters are pKp=3.2, vKp=1500, and vKi=0.1.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 constantTio is set to 0.3 ms and poles of compensator Co(s) are set at ωo=350 Hz. The satisfactory set of control parameters are pKp=9.2, vKp=8000, and vKi=0.8. 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.Experiment results of 15 mm point-to-point motion. Legend “planned” means that the data is from the velocity planning. Legend “traditional” means that the data is obtained by using the traditional control structure. Legend “proposed” means that the data is obtained by using the proposed control structure.
(a)
(b)
(c)
(d)Several motions with different travel distances are tested on the wire bonder. The result is listed in Table2. 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.Table 2
Results of different motions.T1 is settling time of the traditional controller. T2 is settling time of the proposed control structure.
Motion (mm)
15
5
1.5
0.5
0.25
T
1 (ms)
9
6
5.5
4.25
3.25
T
2 (ms)
3
3
2
1.75
1.25The 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 Figure8. Since the ωo 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.Bode plot of the relationship between VErr to EncVel and VErr to ObsVel.
(a)
(b)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 Figure9. 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.Frequency response of the position loop.
(a)
Open loop
(b)
Closed loop


## 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.



---

*Source: 398205-2014-08-04.xml*