# Adaptive Fuzzy Tracking Control for a  Permanent Magnet Synchronous Motor  via Backstepping Approach

Authors: Jinpeng Yu; Junwei Gao; Yumei Ma; Haisheng Yu
Journal: Mathematical Problems in Engineering
 (2010)

---

## Abstract

The speed tracking control problem of permanent magnet synchronous motors
with parameter uncertainties and load torque disturbance is addressed. Fuzzy
logic systems are used to approximate nonlinearities, and an adaptive
backstepping technique is employed to construct controllers. The proposed
controller guarantees the tracking error convergence to a small neighborhood of
the origin and achieves the good tracking performance. Simulation results
clearly show that the proposed control scheme can track the position
reference signal generated by a reference model successfully under parameter
uncertainties and load torque disturbance without singularity and
overparameterization.


---

## Body

## 1. Introduction

Permanent magnet synchronous motors (PMSMs) are of great interest for industrial applications requiring dynamic performance due to their high speed, high efficiency, high power density, and large torque to inertia ratio. Then it is still a challenging problem to control PMSM to get the perfect dynamic performance because the motor dynamic model of PMSM is nonlinear and multivariable, the model parameters such as the stator resistance and the friction coefficient are also not be exactly known. The control of PMSM drivers has recently received wide attention and become an active research area. Some advanced control techniques, such as sliding mode control [1, 2], feedback linearization control [3], adaptive control [2, 4], backstepping principles [5–7], and Fuzzy logic control [8–10], are used to the problems of speed or position control of PMSMs.Backstepping is a newly developed technique to control the nonlinear systems with parameter uncertainty, particularly those systems in which the uncertainty does not satisfy matching conditions. Though backstepping is successfully applied to the control of PMSM drivers recently, it usually makes the designed controllers' structure to be very complex.Fuzzy logic control (FLC) has been found one of the most popular and conventional tools in functional approximations. An FLC [11, 12] has strong ability of handling uncertain information and can be easily used in the control of systems which is ill-defined or too complex to have a mathematical model. It provides an effective way to design control system that is one of important applications in the area of control engineering.In this paper, an adaptive fuzzy control approach is proposed for speed tracking control of PMSM drive system via the backstepping technique. During the controller design process, fuzzy logic systems are employed to approximate the nonlinearities, the adaptive fuzzy controllers are constructed via backstepping. The designed fuzzy controller can track the reference signal quite well even the existence of the parameter uncertainties and load torque disturbance. Compared with the existing controller design schemes via backstepping, the proposed method is very simple and the proposed controller has a simple structure.


## 2. Mathematical Model of the PMSM Drive System and Preliminaries

In this section, some preparatory knowledge of a PMSM will be introduced. The following assumptions are made in the derivation of the mathematical model of a PMSM [13].Assumption 2.1.
Saturation and iron losses are neglected although it can be taken into account by parameter changes.Assumption 2.2.
The back emf is sinusoidal.The model of a PMSM can be described in the well known (d-q) frame through the Park transformation as follows. The stator d,q equations in the rotor frame are expressed as follows [14]:(2.1)Jdωdt=T-TL-Bω=32np[(Ld-Lq)idiq+Φiq]-Bω-TL,Lddiddt=-Rsid+npωLqiq+ud,Lqdiqdt=-Rsiq-npωLdid-npωΦ+uq.
The denotation of the PMSM parameters is shown in Table 1.Table 1
The denotation of the PMSM parameters.
ParameterDenotationParameterDenotationωThe rotor angular velocityRsThe stator resistanceidThed axis currentiqTheq axis currentLdThed axis stator inductorLqTheq axis stator inductorudThed axis voltageuqTheq axis voltagenpThe pole pairJThe rotor moment of inertiaTThe electromagnetism torqueTLThe load torqueBThe viscous friction coefficientΦThe magnet flux linkage of inertiaTo simplify the previous method mode, the following notations are introduced:(2.2)x1=ω,x2=iq,x3=id,a1=3npΦ2,a2=3np(Ld-Lq)2,b1=-RsLq,b2=-npLdLq,b3=-npΦLq,b4=1Lq,c1=-RsLd,c2=npLqLd,c3=1Ld.
By using these notations, the dynamic model of a PMSM motor can be described by the following differential equations:(2.3)ẋ1=a1Jx2+a2Jx2x3-BJx1-TLJ,ẋ2=b1x2+b2x1x3+b3x1+b4uq,ẋ3=c1x3+c2x1x2+c3ud.
The control objective is to design an adaptive fuzzy controller such that the state variable x1 tracks the given reference signal xd and all signals of the resulting closed-loop system are uniformly ultimately bounded. In this paper, we adopt the singleton fuzzifier, product inference, and the center-defuzzifier to deduce the following fuzzy rules:(2.4)Ri:IFx1isF1iand…andxnisFniTHENyisBi(i=1,2,…,N),
where x=[x1,…,xn]T∈Rn, and y∈R are the input and output of the fuzzy system, respectively, Fij and Bi are fuzzy sets in R. The fuzzy inference engine performs a mapping from fuzzy sets in Rn to fuzzy set in R based on the IF-THEN rules in the fuzzy rule base and the compositional rule of inference. The fuzzifier maps a crisp point x=[x1,…,xn]T∈Rn into a fuzzy set Ax in R. The defuzzifier maps a fuzzy set in R to a crisp point in R. Since the strategy of singleton fuzzification, center-average defuzzification, and product inference is used, the output of the fuzzy system can be formulated as(2.5)y(x)=∑j=1NWj∏i=1nμFij(xi)∑j=1N[∏i=1nμFij(xi)],
where Wj is the point at which fuzzy membership function μBj(Wj) achieves its maximum value, and it is assumed that μBj(Wj)=1. Let pj(x)=∏i=1nμFij(xi)/∑j=1N[∏i=1nμFij(xi)] , S(x)=[p1(x),p2(x),…,pN(x)]T and W=[W1,…,WN]T, then the fuzzy logic system above can be rewritten as(2.6)y(x)=WTS(x).
If all memberships are taken as Gussian functions, then the following lemma holds.Lemma 2.3 (see [15]).
Letf(x) be a continuous function defined on a compact set Ω. Then for any scalar ε>0, there exists a fuzzy logic system in the form (2.6) such that
(2.7)supx∈Ω|f(x)-y(x)|≤ε.


## 3. Adaptive Fuzzy Controller with the Backstepping Technique

For the system (2.3), the backstepping design procedure contains 3 steps. At each design step, a virtual control function αi(i=1,2) will be constructed by using an appropriate Lyapunov function V. At the last step, a real controller is constructed to control the system. In the following, we will give the procedure of the backstepping design.Step 1.
For the reference signalxd , define the tracking error variable as z1=x1-xd . From the first subsystem of (2.3), the error dynamic system is given by ż1=(a1/J)x2+(a2/J)x2x3-(B/J)x1-TL/J-ẋd.
Choose Lyapunov function candidate asV1=(J/2)z12, then the time derivative of V1 is given by
(3.1)V̇1=Jz1ż1=z1(a1x2+a2x2x3-Bx1-TL-Jẋd).
As the parametersB,TL, and J are unknown, they cannot be used to construct the control signal. Thus, let B̂,T̂L, and Ĵ be their estimations of B,TL, and J, respectively. The corresponding adaptation laws will be determined later. Now, construct the virtual control law α1 as
(3.2)α1(Z1)=1a1(-k1z1+B̂x1+T̂L+Ĵẋd),
where k1>0 is a design parameter and Z1=[x1,xd,ẋd,B̂,T̂L,Ĵ]T. Defining z2=x2-α1 and substituting (3.2) into (3.1) yield
(3.3)V̇1=-k1z12+a1z1z2+a2z1x2x3+z1(B̂-B)x1+z1(T̂L-TL)+z1(Ĵ-J)ẋd.Step 2.
Differentiatingz2 and using the second subsystem of (2.3) give
(3.4)ż2=ẋ2-α̇1=b1x2+b2x1x3+b3x1+b4uq-α̇1.
Now, choose the Lyapunov function candidate asV2=V1+(1/2)z22. Obviously, the time derivative of V2 is given by
(3.5)V̇2=V̇1+z2ż2=-k1z12+a2z1x2x3+z1(B̂-B)x1+z1(T̂L-TL)+z1(Ĵ-J)ẋd+z2(f2+b4uq),
where
(3.6)α̇1=∂α1∂x1ẋ1+∑i=01∂α1∂xd(i)xd(i+1)+∂α1∂B̂B̂̇+∂α1∂T̂LT̂̇L+∂α1∂ĴĴ̇=∂α2∂x1(a1Jx2+a2Jx2x3-BJx1-TLJ)+∑i=01∂α1∂xd(i)xd(i+1)+∂α1∂B̂B̂̇+∂α1∂T̂LT̂̇L+∂α1∂ĴĴ̇,f2(Z2)=a1z1+b1x2+b2x1x3+b3x1-α̇1,Z2=[x1,x2,x3,xd,ẋd,ẍd,B̂,T̂L,Ĵ]T.
Apparently, there are two nonlinear terms in (3.5), that is, a2z1x2x3 and f2, therewithal, f2 contains the derivative of α̇1. This will make the classical adaptive backstepping design become very complex and troubled, and the designed control law uq will have the complex structure. To avoid this trouble in design procedure and simplify the control signal structure, we will employ the fuzzy logic system to approximate the nonlinear function f2. As shown later, the design procedure of uq becomes simple and uq has the simple structure. According to Lemma 2.3, for any given ε2>0, there exists a fuzzy logic system W2TS2(Z2) such that
(3.7)f2(Z2)=W2TS2(Z2)+δ2(Z2),
with δ2(Z) being the approximation error and satisfying |δ2|≤ε2. Consequently, a simple method computing produces the following inequality:
(3.8)z2f2=z2(W2TS2+δ2)≤12l22z22∥W2∥2S22+12l22+12z22+12ε22.
It follows immediately from substituting (3.8) into (3.5) that
(3.9)V̇2≤-∑i=12kizi2+a2z1x2x3+z1(B̂-B)x1+z1(T̂L-TL)+z1(Ĵ-J)ẋd+12l22z22∥W2∥2S22+12l22+12z22+12ε22+z2b4uq.
The control input uq is designed as
(3.10)uq=1b4(-k2z2-12z2-12l22z2θ̂S22),
where θ̂ is the estimation of the unknown constant θ which will be specified later. Using equality (3.10), the derivative of V2 becomes as
(3.11)V̇2≤-∑i=12kizi2+a2z1x2x3+z1(B̂-B)x1+z1(T̂L-TL)+z1(Ĵ-J)ẋd+12l22z22(∥W2∥2-θ̂)S22+12l22+12ε22.Step 3.
At this step, we will construct the control lawud. To this end, define z3=x3 and choose the following Lyapunov function candidate as V3=V2+(1/2)z32. Then the derivative of V3 is given by
(3.12)V̇3=V̇2+z3ż3≤-∑i=12kizi2+a2z1x2x3+z1(B̂-B)x1+z1(T̂L-TL)+z1(Ĵ-J)ẋd+12l22z22(∥W2∥2-θ̂)S22+12l22+12ε22+z3(f3(Z3)+c3ud),
where f3(Z3)=a2z1x2+c1x3+c2x1x2 and Z3=[x1,x2,x3,xd]T. Similarly, by Lemma 2.3 the fuzzy logic system W3TS3(Z3) is utilized to approximate the nonlinear function f3 such that for given ε3>0,(3.13)z3f3≤12l32z32∥W3∥2S32+12l32+12z32+12ε32.
Substituting (3.13) into (3.12) gives
(3.14)V̇3=V̇2+z3ż3≤-∑i=12kizi2+12l22z22(∥W2∥2-θ̂)S22+∑i=2312(li2+εi2)+z1(B̂-B)x1+z1(T̂L-TL)+z1(Ĵ-J)ẋd+12l32z32∥W3∥2S32+12z32+c3z3ud.
Now design ud as
(3.15)ud=-1c3(k3z3+12z3+12l32z3θ̂S32).
Then, define θ=max{∥W2∥2,∥W3∥2}. Then, combining (3.14) with (3.15) results in
(3.16)V̇4≤-∑i=13kizi2+∑i=2312(li2+εi2)+z1(B̂-B)x1+z1(T̂L-TL)+z1(Ĵ-J)ẋd+∑i=2312li2zi2(∥Wi∥2-θ̂)SiT(Zi)Si(Zi)≤-∑i=13kizi2+∑i=2312(li2+εi2)+z1(B̂-B)x1+z1(T̂L-TL)+z1(Ĵ-J)ẋd+∑i=2312li2zi2SiT(Zi)Si(Zi)(θ-θ̂).
At the present stage, to estimate the unknown constantsB,TL,J, and θ, define the adaptive variables as follows:
(3.17)T̃L=T̂L-TL,B̃=B̂-B,J̃=Ĵ-J,θ̃=θ̂-θ.
In order to determine the corresponding adaptation laws, choose the following Lyapunov function candidate:
(3.18)V=V3+12r1T̃L2+12r2B̃2+12r3J̃2+12r4θ̃2,
where ri, i=1,2,3,4 are positive constant. By differentiating V and taking (3.16)–(3.18) into account, one has
(3.19)V̇≤-∑i=13kizi2+∑i=2312(li2+εi2)+z1B̃x1+z1T̃L+z1J̃ẋd-∑i=2312li2zi2θ̃SiT(Zi)Si(Zi)+1r1T̃LT̂L+1r2B̃B̂+1r3J̃Ĵ+1r4θ̃θ̂=-∑i=13kizi2+∑i=2312(li2+εi2)+1r1T̃L(r1z1+T̂̇L)+1r2B̃(r2z1x1+B̂̇)+1r3J̃(r3z1ẋd+Ĵ̇)+1r4θ̃[-∑i=23r42li2zi2SiT(Zi)Si(Zi)+θ̂̇].
According to (3.19), the corresponding adaptive laws are chosen as follows:
(3.20)T̂̇L=-r1z1-m1T̃L,B̂̇=-r2z1x1-m2B̂,Ĵ̇=-r3z1ẋd-m3Ĵ,θ̂̇=∑i=23r42li2zi2SiT(Zi)Si(Zi)-m4θ̂,
where mi for i=1,2,3,4 and li for i=2,3 are positive constant.


## 4. Stability Analysis

In this section, the stability analysis of the resulting closed-loop system will be addressed. Substituting (3.20) into (3.19) yields(4.1)V̇≤-∑i=13kizi2+∑i=2312(li2+εi2)-m1r1T̃LT̂-m2r2B̃B̂-m3r3J̃Ĵ-m4r4θ̃θ̂.For the term-T̃LT̂, one has(4.2)-T̃LT̂L=-T̃L(T̃L+TL)≤-12T̃L2+12TL2.
Similarly, we have(4.3)-B̃B̂≤-12B̃2+12B2,-J̃Ĵ≤-12J̃2+12J2,-θ̃θ̂≤-12θ̃2+12θ2.
Consequently, by using these inequalities, (4.1) can be rewritten in the following form:(4.4)V̇≤-∑i=13kizi2-m12r1T̃L2-m22r2B̃2-m32r3J̃2-m42r4θ̃2+∑i=2312(li2+εi2)+m12r1TL2+m22r2B2+m32r3J2+m42r4θ2≤-a0V+b0,
where a0=min{2k1/J,2k2,2k3,m1,m2,m3,m4} and b0=∑i=23(1/2)(li2+εi2)+(m1/2r1)TL2+(m2/2r2)B2+(m3/2r3)J2+(m4/2r4)θ2. Furthermore, (4.4) implies that(4.5)V(t)≤(V(t0)-b0a0)e-a0(t-t0)+b0a0≤V(t0)+b0a0,∀t≥t0.
As a result, all zi(i=1,2,3) , T̃L,B̃,J̃ and θ̃ belong to the compact set(4.6)Ω={(zi,T̃L,B̃,J̃,θ̃)∣V≤V(t0)+b0a0,∀t≥t0}.
Namely, all the signals in the closed-loop system are bounded. Especially, from (4.5) we have(4.7)limt→∞z12≤2b0a0.
From the definitions of a0 and b0, it is clear that to get a small tracking error we can take ri large and li and εi small enough after giving the parameters ki and mi.


## 5. Simulation

To illustrate the effectiveness of the proposed results, the simulation will be done for the PMSM motor with the parameters:(5.1)J=0.00379Kgm2,Rs=0.68Ω,Ld=0.00315H,Lq=0.00285H,B=0.001158Nm/(rad/s),Φ=0.1245Wb,np=3.
Then, the proposed adaptive fuzzy controllers are used to control this PMSM motor. Given the reference signal is xd=30 and the control parameters are chosen as follows:(5.2)k1=2.5,k2=k3=50,r1=r2=r3=r4=2.5,m1=m2=m3=m4=0.0005,l2=l3=5.
The fuzzy membership functions are chosen as(5.3)μFi1=exp[-(x+5)22],μFi2=exp[-(x+4)22],μFi3=exp[-(x+3)22],μFi4=exp[-(x+2)22],μFi5=exp[-(x+1)22],μFi6=exp[-(x-0)22],μFi7=exp[-(x-1)22],μFi8=exp[-(x-2)22],μFi9=exp[-(x-3)22],μFi10=exp[-(x-4)22],μFi11=exp[-(x-5)22].
The simulation is carried out under the zero initial condition for two cases. In the first case, TL=1.5 and in the second case,(5.4)TL={1.5,0≤t≤1,3,t≥1.
Figures 1 and 2 show the simulation results for case 1, and Figures 3 and 4 show the simulation results for the second case. From these figures, it is seen clearly that the tracking performance has been achieved very well. This means that the proposed controller can track the reference signal satisfactorily even under parameter uncertainties and load torque disturbance.Figure 1
The curve of the rotor speedx1.Figure 2
The curve of the speed tracking error.Figure 3
The curve of the rotor positionx1.Figure 4
The curve of the speed tracking error.


## 6. Conclusion

Based on adaptive fuzzy control approach and backstepping technique, an adaptive fuzzy control scheme is proposed to control a permanent magnet synchronous motor. The proposed controllers guarantee that the tracking error converges to a small neighborhood of the origin and all the closed-loop signals are bounded. Simulation results illustrate the effectiveness of the presented method.



---

*Source: 391846-2009-12-15.xml*