ONLINE INVERSION OF A NONLINEAR OPERATOR MODEL USING SLOPE-INTERCEPT METHOD

Systems include nonlinear behaviours always require careful control to treat them. We usually try to eliminate them by cancelling or dominating the nonlinearity. One common method is to find an inversion and cascade it to the nonlinearity. This requires modelling it first. Hysteresis nonlinearity can be found in many applications such as nano-positioning, where smart materials are used. Researchers found several methods to model it physically or mathematically. As the behaviour of hysteresis is complicated, most of models use mathematical operators to characterize the hysteresis behaviour. Yet, most of these operators are modelled and run off-line. On the contrary, in this work, we model the hysteresis on line and invert it immediately. This method is important particularly, when the hysteresis changes with time and requires remodelling. Simulations are run and compared with other methods such the very famous one uses the Prandtl-Ishilinskii (PI) operator and present good results.


INTRODUCTION
Nonlinear behavior exists in many applications and makes their performance poor and may lead to instability in some control systems if not treated carefully. Smart materials are used to manufacture actuators and sensors such as shape memory alloys, magnetostrictive, and Piezoelectrics [1]. These materials have nice characteristics such as high accuracy and good resolution, which are useful for applications that require perfect accuracy and precision as nanopositioning. On the other hand, they exhibit non-linear phenomena such as hysteresis, creep, and resonance. [2]. In this paper, we focus on hysteric nonlinearity. We will present the way to model it, and to cancel its effect using open-loop [3] or closed-loop methods [4]. Most of the recent research uses the integration of both method [5,6]. By open-loop, we produce another model we call it inverse-operator which eliminates the hysteretic behavior when both of them have an exact model. A common operator used for modeling hysteresis is Prandtl-Ishlinskii (PI) operator [3]. It consists of the superposition of several the so-called playoperators. Some optimization methods are used to find the optimum weight for each play operator. They together can produce hysteresis loops when a periodic input is applied to them. These loops are not smooth as original hysteresis. They are piecewise linear segments as shown in Figure 1. We call the method proposed in this paper the slope-intercept method. Furthermore, we can apply the method either on-line or off-line. It is worth noting that this method is not only applicable to PI operator. It applies to all models under this class of the piecewise linear model used in the literature. This includes the linear piecewise model adopted in [7], Krasnoselskii-Porkovskii (KP) operator [8], the Prandtl-Ishlinskii (PI) operator [3], the modified PI operator [9], and others.

. Piecewise linear characteristics and its inversion
Feed-forward compensation is an effective way to dealing with hysteretic nonlinearity, where an inverse-operator is constructed to mitigate for its effect. It reduces the impact of hysteresis appreciably. This approach for controlling hysteretic nonlinearity is shown in Figure 2. But, because it is an open-loop, the system performance will depend on the environmental conditions and modeling accuracy. Hence, closed-loop control methods have been proposed in combination with inverse compensation to mitigate the effects of inversion errors and other uncertainties [10][11][12].

Figure 2. Piezo-electrical actuator preceded by inverse-operator
We demonstrate our results using the example of a piezoelectric actuator-based nanopositioner, which is modelled with a PI operator followed by linear dynamics. A PI operator consists of a weighted superstition of play opera-tors, which results in hysteresis loops with piecewise linear segments shown in Figure 3. Simulation results are presented to support the idea of measuring the slope and intercept of each segment of the hysteresis online and invert them to eliminate it. We also include some feedback control to examine how they work with the inverse operator besides the improvement that they add to the overall system. The remainder of the paper is organized as follows. In Section two, we show how 265 ‫العلوم‬ ‫األسمرية:‬ ‫الجامعة‬ ‫مجلة‬ ‫والتطبي‬ ‫األساسية‬ ‫قية‬ Journal of Alasmarya University: Basic and Applied Sciences to use the slope and intercept parameters of hysteresis segments to derive the inverse operator. A PI model is taken as an illustration example. The on-line procedure to model the hysteresis operator and its inverse operator is given in Section three. In Section four, Simulation results are presented. Finally, we provide a conclusion and future work in Section five.

PIECEWISE LINEAR HYSTERESIS MODEL
Piecewise linear operators cover a large class in the research field. Figure 3 shows the hysteresis loop which consists of several linear segments. Each segment in the hysteresis loop is characterized by its slope m and y-axis intercept γ. In this section we first give an example of how PI operator is modeled. Then we derive a model for general piecewise linear operators and their inversion. We also present the effect of those uncertainties when included in these equations.

Piecewise Linear Hysteresis for PI Operator
A Prandtl-Ishlinskii (PI) operator consists of a weighted superposition of basic hysteretic units called play operators. While in principle one could consider a continuum of play operators, in practice, the number of play operators is typically chosen to be finite, say N > 0. As illustrated in Figure 4, a play operator is characterized by a threshold r, and its output ur under a continuous, monotone input v can be written as where (0) denotes the initial condition of the operator. For a general input v, one can break it into monotone segments, and compute the output by setting the final output value under one segment as the initial condition for the next. Note that a play operator can operate in two modes, the linear mode where (t) = v(t)± r, the "play" mode, where (t) remains constant. It is clear that the corresponding slope of the output-input relationship is 1 and 0 under the linear and play mode, respectively. In addition, from Figure 4.
The output of a PI operator consisting of N play operators is expressed as ) is the weight vector, and ( ) , with , is the threshold vector. One can easily verify that the hysteresis loops of such a PI operator have piecewise linear characteristics. It is typically assumed that , which ensures that , the minimum slope of all hysteresis segments, is positive. Figure 2 illustrates the system with a feed-forward inverse hysteresis compensator, where the plant consists of a hysteretic nonlinearity followed by linear dynamics described by a linear transfer function. We assume that the actual hysteresis is represented by an operator H, and defined by a vector of play thresholds and a vector of play weights W . We further assume that a nominal model H for the hysteresis is identified for implementation of H −1 , an approximate inverse to H. Denote as the control applied to the inverse model and as the inversion error. For a given hysteresis segment i with slope mi and intercept the input-output relationship for the hysteresis operator is given by (4) and for perfect inversion, the input-output relationship for the inverse operator is given by (5) where

GENERAL SLOPE AND INTERCEPT METHOD
can be derived as follows. By inserting Equation (5) in Equation (4), we obtain ( )

UNCERTAINTY OF SLOPE AND INTERCEPT METHOD
To model the uncertainty in hysteresis, we assume that the inverse is still given by Equation (5) and Equation (7) while the actual input-output relationship for segment i is described by and represent the uncertainties in the slope and in the intercept, respectively.
where the DC uncertainty ∆ dc,i is defined as (10) The difference between and represents the uncertainty d(t): The upper bound for d during the hysteresis segment i is The upper bound for d under all hysteresis segments is Where , , and are the minimum slope, maximum slope uncertainty, and maximum DC uncertainty in inversion, respectively, among all hysteresis segments. In particular, | | is given by where | | and denote the maximum intercept uncertainty bound and maximum intercept magnitude, respectively. It is assumed that > 0, which holds true for many hysteresis operators under mild conditions. Equation (13) can be written (15) Where Equation (16) is important because it shows the relationship between slope and segment weights. Hence, when we perturb the weights, we mainly change the slopes. The intercepts also are affected by this perturbation.

OPERATORS ON-LINE MODELING
In this section, the slope mi and intercept of each segment of the hysteric operator will be determined on-line using an algorithm on MatLab. This algorithm is used to determine the slope and the intercept of the inverse-operator. A periodic signal is applied to the operator with input v and output u. Since the algorithm is run in discrete mode, the slope and intercept are determined each sampling time. However, they remain the same for each segment and we do not need to update them unless when we move from one segment to the next one. To calculate slope value and its inverse, we use division. So, we should be careful that the denominator does not have zero value or close to it.
In Figure 6 we present a flow chart for the algorithm that calculates the slope for the operator and its inverse one. We consider all the previous points besides when the slope is zero or infinity. The way we calculate the slope is by subtracting the current value of the output from previous one and divide it to difference between current input and previous one . This requires delaying the input and output. When first run the algorithm, the delayed values are not available and considered have zero values by the program. This is also taken in consideration as presented in the flow chart. Figure 7 shows another flow-chart for the calculating the intercept . Equation (7) is used to calculate its inverse .

SIMULATION RESULTS
To demonstrate this method, the algorithm is built in Simulink Matlab. Figure 8 shows the part of the system that is used to implement the operator and produce the inverse parameters and . The delay unit or sampling time is 5 10 −5 Sec. As we run the system on-line, we measure the slope and intercept as well as their inversion values. Figure 9 shows the inverse-slope . It is expected the values of segments' slope decrease and increase about = 1, where one means the slope is to the input axis. We apply a sinusoidal reference to the system to examine the effectiveness of the proposed method. First, we check the accuracy of this method by cascading the inverse algorithm with non-perturbed PI operator in the open-loop scheme. A sine-wave of traveling range 50µm is applied to a system. The input and output to the cascaded inversion system are illustrated on Figure. 10. The maximum error is less than 0.02µm at steady-state.
The hysteretic nonlinearity of Piezo-electrical actuator is different from the PI operator that we chose to represent it as a model. So, we perturbed the operator and use the values obtained from the slope-intercept inverse model. The result is shown in Figure. 11. The inversion error is larger 0.2µm than obtained from the unperturbed system of Figure. 10. We know that the PI method is only run offline and if the hysteresis changes fast with time we need to remodel it. However, the slope-intercept method does not require that because it calculates the hysteresis parameter on-line and produces the inverse immediately. We change the weight vector of the play operators and repeat the same simulation of Figure. 10 and we get almost the same results and the same inversion error. The combination of a slope-intercept algorithm with the feedback control is also tested. The linear dynamical system is included.  Figure 11. Perturbed PI operator preceded by slope-intercept inverse model A proportional-integral controller is used with gains k p = 2 and k i = 50. Figure  12 shows an improvement in performance compared with the one obtained in Figure 11. We achieved a smaller tracking error with a maximum value 0.03µm. Finally, we verify that this method is not confined to simple sine-wave. The system tracks a multiple frequencies wave and it produces a small error of less than 0.1µm. This is shown in Figure 13.  In this paper, a method is developed to determine the parameters for hysteretic nonlinearity. The slope and intercept of the piecewise linear segments is computed on-line and the inversion of each is calculated. This method can be applied even when the characteristics of the hysteresis changes with time because the slope and intercept of the nonlinear curve is determined directly on-line. It also can be applied to other nonlinear systems if the slope of input-output characteristics changes smoothly.Simulations are provided to verify the effectiveness of this method. We applied different waveforms to the system and it shows good performance for both open-loop and closed-loop systems. We seek to extend this work for dependent-rate hysteresis. This scheme will fit very well for it as we do not need to model nonlinearity and other dynamics separately.