Sensorless FOC Performance Improved with On-Line Speed and Rotor Resistance Estimator Based on an Artificial Neural Network for an Induction Motor Drive

Three-phase induction motor drive requires high accuracy in high performance processes in industrial applications. Field oriented control, which is one of the most employed control schemes for induction motors, bases its function on the electrical parameter estimation coming from the motor. These parameters make an electrical machine driver work improperly, since these electrical parameter values change at low speeds, temperature changes, and especially with load and duty changes. The focus of this paper is the real-time and on-line electrical parameters with a CMAC-ADALINE block added in the standard FOC scheme to improve the IM driver performance and endure the driver and the induction motor lifetime. Two kinds of neural network structures are used; one to estimate rotor speed and the other one to estimate rotor resistance of an induction motor.


Introduction
Three-phase induction motors (IMs) have become the most employed electrical device in industry, thanks to their robustness, efficiency and low maintain. Nowadays, IMs consume 60% of electricity that industry requires, which represents the 21% of global electrical production, about 3.99 PetaWatts-hour [1]. Therefore, in order to increase the IM efficiency and raise its performance, any improvement results in a global benefit and helps the industrial economy. Current drivers are based on control schemes such as voltage-frequency (V/F), direct torque control (DTC) and field oriented control (FOC). FOC has been the most selected control method for IMs in torque and speed control applications where high performance is required. There have been many contributions towards improve it for almost 3 decades [2]. Basically, FOC sees the IM as a direct current (DC) motor and it has been classified in two types. One method has been the direct field oriented control (DFOC), which needs to know the position of the field magnetic flux and the rotor magnetic flux with hall-effect sensors inside the electric machine, which results complicated or impossible to installation of the sensors. The other scheme is indirect field oriented control (IFCO), which has two different diagrams. The sensored diagram estimates magnetic flux position and uses an encoder to measure the IM rotor speed. The sensorless scheme estimates magnetic flux as well but it does not need an encoder to know the rotor speed. Sensorless IFCO estimates the motor velocity based on the number of IM poles, and the frequency of voltages and currents applied to stator coils [3]. Currently, commercial drivers use sensorless IFCO because it does not need an encoder. It is to say, it is a simple controller with good performance and acceptable results for some applications.
As explained before, IFOC is better known only as FOC in the IM driver and controller literature. It is the control technique that has gained more interest within researchers because there have been opportunity areas for control theory, observers and estimators. Figure 1 shows the general sensorless FCO scheme. For the reason of not using sensors and estimating field magnetic flux, there have been many surveys in this area. Other, previously published reviews such as [4] analyze and describe several methods, where observers, estimators and controllers were used. Never the less, there are some works that only presented validations for short times such as [5][6][7], which do not really ensure that their systems work properly, after longer terms or under motor condition variations.
This work employs a combination of two different artificial neural network (ANNs) approaches. The combination of tow neural networks (NNs) helps to improve IM-driver performance, by means of reducing the mismatch produced between estimated electrical parameters values and the real ones. The ANN unit estimates motor speed (ω ) and rotor resistance ( ), which allows us to keep the IM controller tuned, achieving higher control over a wide speed range and load variations. Since varies by up to 100% from its original value due to temperature changes and load steps [8]. Normal control schemes can present undesirable speed tracking at low speeds. It leads to decreases in IM efficiency and shortens motor drive life.
In this algorithm, a cerebellar model articulation controller (CMAC) was used to estimate ω , it is selected for its capability of quickly learning non-linear functions due to the local nature of its weight modification. These networks are simple to implement when compared to other types of neural network as describe in [9]. Then, for estimation, a block with an adaptive linear neuron (ADALINE) structure is selected. The main advantages of this ANN are its simplicity and the ability to be trained online; besides, the ADALINE weights can be interpreted physically, as explained in [10]. Figure 2 presents the proposed ANN scheme.  This survey is divided into four sections. The first part, which describes how this algorithm was implemented and its outcomes, the second part presents the ANN structures employed in the research and their behavior, the third part explains how CMAC-ADALINE unit performs on-line parameter estimation and improves drive speed control performance, the forth part shows conclusive results and the final section contains the conclusions and the possible future applications for this work.

CMAC Description and Behavior
The CMAC structure was developed (such as, the human cerebellum), and it is a convenient learning structure for on-line and real-time modeling and controlling induction motors, IMs are non-linear systems. CMAC is capable of learning non-linear functions; it can be defined as a look-up-table. In this structure, each state variable is quantized and mapped, see Figure 3. The space vector is divided into discrete states. The output of each state can be obtained from the sum of the information stored in the associate memories. The state vector is mapped in S th elements onto another vector called A, which is formed by n th elements. In the next map, the output P is the sum of the weights whose activation function will be activated. Its representative mathematical equations is given as follows: Now s is an input vector of k-dimension, A is the N-dimension association vector containing M active elements, P is the output vector and W is the corresponding weight vector in which input data of P is stored, as explained in [11].
In this equation, k is associated to kth states, * means the activation function of the kth state, and Ak is the grouping of cell vector of kth state. The form CMAC weights are adapted is given by: where Wk means the weight vector at k-th state, j means j-th iteration, α is the learning rate is selected, M is the number of activated association cells, and Yd,k is the desired output at k-th state. The learning rule of CMAC is to distribute the error equally to the corresponding weights, as well explained in [11].
In the learning process, the input of the controlled plant U (induction motor) is treated as a desired output to modify the contents of CMAC stored at location Y(k) and Y(k + 1), where Y(k + 1) is the actual system output at time step k + 1. How precisely the CMAC can approximate a controlled plant is mainly determined by the quantization in each dimension of the input vector and the generalization width.

ADALINE Description and Behavior
In this section, The ADALINE structure is explained in [10]. The ANN-ADALINE structure is equivalent to one neuron which is composed of an input vector Xk, a weight matrix Wk, and an activation function f(v). The weights vector Wk = [W0k,W1k . . . Wnk] T corresponds to the whole neuron synaptic forces. The input vector Xk = [X0k, X1k . . . Xnk] corresponds to the whole neuron input stimulus. The activation function f(v) specifies the neuron behavior. Various activation functions can be used in the ANN theory. However, the ADALINE uses the linear activation function f(v) = v Consequently, the ADALINE output yk is given by: yk = XkWk. When the ADALINE is excited, it produces the output yk which depends on the input vector. The basic scheme of an ADALINE structure is shown in Figure 4. The weights vector Wk is continuously modified during the network learning process with the purpose of approaching as close as possible the desired output dk.
And adaptation rule is based on the Least-Square-Method (LMS), which is known as the Widro-Hoff delta rule and is given by: -ω o i dr (t) The main drawback with the ADALINE structure consists in selecting the correct set of weights so that the input-output ADALINE behavior gets closer to the desired input-output data. In order to update ADALINE weights, the LMS algorithm was used to minimize the error e(k). The learning process for ADALINE is well explained in [12]. This structure requires supervised learning. The error is obtained by using the energy function E = (1/2)e 2 (k) and is calculated by: The stepping method is described by the expression: where η is used to control the stability and the convergence rate; is the gradient values at W = Wk. Differentiating the equation above and introducing the linear error we obtain: which results in Finally, the constant η determines stability and convergence rate, this value is typically less than one. The training coefficient η is used to accelerate the algorithm convergence and it has to be variable. It has to be high at the beginning of the training process; then, it has to decrease to present a small value at the end. The value of η can be selected by the expression Equation (11) as well explain in [13].
where ηi is the initial value of the learning rate and ηf is the final value, and tmax is the maximum training time. Never the less, this parameter has to be first obtained by simulation, then the ANN response has to be analyzed to determine the correct value for the physical system.

Speed and Rotor Resistance Estimator Implementation
Thus, it is important to consider the state-variable model of the induction machines referred to an arbitrarily rotating reference frame [11]. Which is written as Besides, this mathematical model is described in [14]. For being able to implement this combined ANNs, it is necessary to consider the IM current model given by Equation (13) and the IM voltage model given by Equation (14). The Equation (14) is required to adjust the weights, and these equations are shown in the following lines.
The current model of Equation (14) can also be rewritten as: where ds s qs The discrete data model of Equation (15) can also be expressed as: and Ts is the sampling period. Equation (16) can also be written as: Then the weight adjustment is obtained by trying to minimize the error The weights between neurons are tuned by minimizing the energy function The weight variation is given by Another coefficient (α) is added to determine the effect of the changes of the past weights and increase in the learning rate. Finally, weight adjustment of W1 and W3 can be represented by the next form [15]: The Equation (11) was used to select a proper value for η, several values had to be tested in order to determine what value is the most convenient. and considering W2 Then the weight W2 value is calculated as follows: By using the Equation (26) and solving the speed from the weight W2, the estimated rotor speed is given by combining equations above, the estimated rotor speed is represented as follows: and rotor resistance can be found from either W1 or W3 using Equations (27) or (28). Both equations above were tested, but finally Equation (28) was eventually selected to be used because it presented less variation and better response due to it was only affected by Lr. It is important to know how the proposed algorithm is exactly incorporated to the general FCO scheme as shown in Figure 5.

Experimental Results
This part presents the results obtained from a comparative between standard FOC scheme and the FOC one including the proposed estimating algorithm. The initial values were η = 0.05 and α = 0.01, Ts = 0.001s, this block was implemented and validated in a real-time embedded system TI tool set TMDSHVMTRPFCKIT. Table 1 shows the parameter of the IM. The IM is shaft-to-shaft connected to a DC motor, which simulates a changing load. That load can be set or adjusted to validate control performance at different speeds and loads. Estimated ωr and Rr are real-time calculated and they get adjusted at every millisecond in the Code Compose control panel included in the TI software. This is suitable to track IM speed, store and validate real and estimated parameter values. The DC motor is controlled with a servo amplifier that has an inner current control loop to drive torque applied to the IM. DC motor features are described in Table 2. The servo amplifier is connected to a National Instruments (NI) data acquisition board (DAQ) by means of an USB connection, then a human-machine interface (HMI) in LabVIEW is implemented to monitor and control variable torque applied to the AC motor. A load form 0 to 2.5 N· m can be emulated by this system. A FUTEK shaft-to-shaft rotary torque sensor (TRS300) is used to measure the mechanical torque applied to the AC motor, and its signal is connected to an NI DAQ to create the load control system as shown in Figure 6. There were three speeds applied: low speed (LS) at 10% of nominal RPM value, medium speed (MS) at 50% and high speed (HS) at 90%.
Sensorless FOC without estimator algorithm was first tested with a specific velocity profile, which consists of speed steps applied at 180, 540, 860, 1260 and 1440 R.P.M. at 1 N· m torque, generated with the DC motor. This created disturbances that directly affected IM speed. Those effects decreased or increased when load was applied or removed. Figure 7a shows the error between the estimated velocity and the real one at low revolutions, however, as speed increases, estimated velocity gets closer to the real value. Figure 7b shows the estimated speed and the desire one with load applied, which consists of speed steps applied at 180 and 540 R.P.M. at 1 N· m torque, using the ANN block, introduced to the standard FOC. The real velocity was measured with a QD200 encoder connected directly to the IM shaft.
Thus, Rr tends to vary within a range close to the manufacturer value, approximately 6.11 Ohms. These changes precisely occur at speed variations. These mismatches affect the controller performance because, as it was described in Section 3, Rr is part of the IM mathematical model that controller uses. Figure 8a shows the speed steps applied to the IM and Figure 8b presents the Rr is estimated with the other ADALINE structure. These changeable values are the ones that are fed back to the controller scheme in order to keep it tuned.    Edgar A. Rivas-Araiza: My contribution to this survey was the part to implement the control for the DC motor and the human-device interface, which basically consisted in connecting the DC motor and the national instruments products to implement the control system and drive the DC motor. This allowed us to test the induction motor at different loads and speeds. The experience I have with national instruments has led me to develop quickly motor control systems validate their performances.
Moises A. Martinez-Herná ndez: I have worked with artificial neural networks since I studied my master degree that is the reason I was invited to collaborate to this research, the experience I have with their training process and selecting parameters. I helped with the implementation of this algorithm in the TI platform to proof this new neural network programmed in C.

Conflicts of Interest
The authors declare no conflict of interest.