Evolving Fuzzy Controller Applied in Indirect Field Oriented Control of Induction Motor Fabiano Camargo Rosa∗† , Fabio Lima‡ , Member, IEEE, Marco Antonio Fumagalli§ and Edson Bim∗ , Member, IEEE ∗ Universidade
Estadual de Campinas (UNICAMP) Campinas, SP, Brazil
[email protected] † Instituto Federal de Educac¸a˜ o, Ciˆencia e Tecnologia (IFSP) Suzano, SP, Brazil
[email protected] ‡ Centro Universit´ario da FEI § Centro Educacional da Fundac¸a˜ o Salvador Arena (CEFSA) S˜ao Bernardo do Campo, SP, Brazil Abstract—This paper presents the indirect rotor field orientation vector control of a squirrel-cage three-phase induction motor, where an evolving fuzzy controller is used. Both the structure and the parameters of the controller are defined and adapted online from data collected by the plant, without the need of any type of pre-training or previous knowledge of the plant’s dynamics. Computational simulations are made under different conditions and validate the capacity of adaptation and autonomy of the controller, which proved to be stable and presented good dynamic response in all the several simulated situations.
I. I NTRODUCTION Induction motors are predominant in industrial applications mainly due to their low cost, high robustness and low maintenance [1] [2]. On the other hand, induction motors (IM) have non-linear mathematical model, making their control more difficult [3]. The use of IM in high performance applications was made possible due to the magnetic field orientation and evolution of semiconductors, which allowed the use of more advanced control techniques [4]. Rotor field oriented control (RFOC) is a vector control technique in which the magnetic field and torque are uncoupled, and therefore may be controlled independently. This characteristic makes induction motors (IM) be drive similarly to DC motors with independent excitation, but maintaining the advantages of AC motors over DC motors [5] [6] [2]. The use of constant gain controllers may not present satisfactory performance when parametrical variations and load disturbances occur. In these cases, gains must be adjusted continuously in order to guarantee a dynamic and permanently satisfactory performance. For this reason, systems with learning, self-organization and self-adaptation capacity have been object of applications in electric machines drive [7] [8]. In the last decades, several approaches have been presented for online adaptation of fuzzy controller parameters [4]. Recently, some of them have been concerned with proposing online adaptation, not only regarding parameters but also the structure of fuzzy controllers, known as evolving controllers [9] [10]
l-)))
[11]. Introduced by Angelov in 2001, they allow their structure (fuzzy rules, fuzzy sets, membership functions, etc.) to be created and modified based on data collected online [11]. Other characteristics of evolving controllers are their high adaptability and autonomy degree [10]. In [9], a fuzzy controller with capacity for online selforganization and adaptation and without any type of pretraining was successfully applied for the positioning of a DC servo system. However, the proposed controller is initiated with a structure formed by eight rules, which is modified online with the adaptation of parameters of the consequents. In [12], an evolving fuzzy controller was applied in the temperature control and, in [11], in the control of a hydraulic plant. In both [12] and [11], the controller is initiated without pre-defined structure and parameters of the consequents with value zero. The controller’s structure is created, modified and the parameters of the consequents are adapted from data collected online. Computational simulations show the capacity of self-evolution of the algorithm and control of the plant, without the need of any type of parameter, explicit relevance function and pre-training. Although the performance of the controllers proposed in [9], [12] and [11] may be considered satisfactory, they were analyzed only in situations where the reference variable value suffered alterations and not under load disturbances or parametric alterations of process. In the present technical literature, there were not found any studies that apply evolving controllers in the induction motors drive. It is also known that one of the problems related to field oriented control of three-phase induction machines is its sensitivity to variations of the electrical parameters of the machine [6]. Thus, the use of evolving controllers is interesting in electrical machine drive that use the strategy of field orientation. The present study proposes an evolving fuzzy controller for IM speed control, using the strategy by indirect rotor field oriented control (IRFOC). The controller is initiated without any predefined structure, parameter knowledge or any type of pre-
training. Both the controller’s structure and the parameters of the consequents are adapted online. Computational simulations of IM operating under speed variations and load disturbances are made to validate the proposed controller. This paper is organized as follows: In Section II, the mathematical model of the IM controlled by indirect rotor field orientation is presented. The controller’s structure, including the representation of the rules and inference mechanism, is presented in section III. The evolution methodology used for online learning is shown in section IV, the obtained results through computational simulations in section V, and conclusions in section VI.
III. S TRUCTURE OF C ONTROLLER
The basic equations of IM described in the synchronous system of reference are [5] [6]: 1) Stator and rotor voltages dψ¯dq,s + jω1 ψ¯dq,s (1) dt dψ¯dq,r + jsω1 ψ¯dq,r (2) v¯dq,r = vdr + jvqr = rr¯idq,r + dt where rs , rr , idq,s , idq,r ω1 and s correspond, respectively, to the resistances of the stator and rotor, currents of the stator and rotor in the synchronous system, synchronous frequency and slip. 2) Stator and rotor fluxes v¯dq,s = vds + jvqs = rs¯idq,s +
ψ¯dq,s = ψds + jψqs = Ls¯idq,s + Lm¯idq,r
(3)
ψ¯dq,r = ψdr + jψqr = Lm¯idq,s + Lr¯idq,r
(4)
where Ls , Lr and Lm correspond to the inductance of the stator, rotor and mutual. In the IRFOC, the spatial position of the rotor (θr ) is determined based on the knowledge of the rotor speed (ωr ) and slip frequency (ωsl ), i.e., (5) θr = (ωr + ωsl )dt
The fuzzy controller applied in this study is based on the AnYa fuzzy system initially proposed in [13]. Differently from the Mandani and Takagi-Sugeno fuzzy system, the AnYa fuzzy system has the characteristic of the antecedent not being parametric, because it does not require explicit definition of fuzzy sets and their respective membership functions [11] [12]. On the other hand, it applied the data cloud concept and relative density to granulate the input space and define the antecedent recursively from data collected online. Figure 2 shows the scheme of the implemented controller, whose inputs are speed error (e) and error variation (de) and, as output (u), the necessary quadrature current for the machine’s speed control. In turn, Figure 3 illustrates the structure of the AnYa fuzzy system represented by a neuro-fuzzy network. The representation of the rule base of a controller with N rules is given by: Rulei : IF ( x ∼ ℵi )
(7)
with iqs and ids expressed in peak values. In equation 7 the p corresponds to the number of poles. Figure 1 illustrates the block diagram of the proposed control system. Note that the components of the stator currents are imposed through a hysteresis controller.
(8)
where τr = rr /Lr corresponds to the rotor’s time constant and rr to the rotor’s resistance. The electromechanical torque is given by [5] [6] 3p . iqs ids 4 Lr
THEN (y i )
where ∼ denotes the fuzzy membership and may be interpreted as “associated with”, ℵi ∈ n is the ith data cloud defined in the input space, x = [e, de]T is the controller’s input vector and y i the action of control related to the ith rule.
where ωr = (p/2)ωsahf t , p corresponds to the number of poles, ωshaf t to the speed of the rotor’s axis, which may be measured or estimated, and ωsl is determined based on the relation 1 iqs ωsl = . (6) τr ids
Tem =
Fig. 1. IRFOC block diagram
II. M ATHEMATICAL M ODEL OF IM AND IFOC
L2m
Fig. 2. Evolving fuzzy controller scheme
The degree of membership of the xk sample corresponding to the ℵi data cloud is calculated by the normalized relative density [12].
λik =
γki N
γki
j=1
i = 1...N
(9)
Fig. 3. Architecture of the AnYa fuzzy model
where γki corresponds to the local density of the data sample related to the ith data cloud, which in recursive form is calculated by [12] γki =
M i (xTk xk
Mi + 1) − 2αik + βki
(10)
where αk = xTk ξki ; i ξki = ξk−1 + xk−1 ; i i βk = βk−1 + xk−1 2 ;
ξ0i = 0 β0i = 0
In equation 10 M i corresponds to the quantity of data samples associated with the ℵi cloud, and the samples are associated with the clouds that present higher local density. Considering the defuzzification method by the average of weights, the controller’s output, for a xk input, is calculated by u=
N
λi y i
(11)
i=1
which combined with equation 9, may be determined as follows N γki y i u=
i=1 N
(12) γki
i=1
IV. A DAPTATION MECHANISM The flowchart presented in Figure 4 shows the methodology used in the controller’s evolution process. The controller is started empty, without any rules and its structure and parameters are adapted online from the speed error and error’s variation data. The magnitude of the error indicates whether the feedback variable (the rotor’s speed) is close to the reference value (|ek | ≤ emax ) or far from it (|ek | > emax ). In situations where the feedback variable is far from the desired point of operation, the controller’s structure is reset and the controller’s output saturated at its highest value. This mechanism avoids the unnecessary creation of rules (clouds) during a long transition. From the moment when the motor’s axis speed
Fig. 4. Flowchart resuming the methodology used in controller’s evolution process
comes close to the reference value, i.e., |ek | ≤ emax , the fuzzy controller takes control of the plant and its structure and parameters are adapted in order to maintain the error at its lowest possible value. A. Adaptation of the parameters of the consequents The mechanism used in this study for the adaptation of the parameters of the consequents is the same mechanism used in [9], [13] and [12]. This methodology consists in analyzing the error and applying a penalization or reward for the rules responsible for the error [12]. Due to the fact that not all the rules contribute with the same weight (degree of membership), the modification applied to the constant of each rule is proportional to the weight of each rule [12]. The modification applied to the constant of the ith rule at k instant is given by ∗ ΔQik = C.λik−1 .(ωk−1 − ωk ) (13) where C is a constant whose value is previously defined by [12] [9] Δu (14) |C| = Δref where Δu is the admissible range corresponding to the controller’s output signal (iqs ) and Δref the admissible variation of the reference value (ω ∗ ). Additionally, it must be taken into
consideration that all controllers and real actuators present limitation regarding their range of operation. Thus, the generated control action must not exceed the maximum and minimum acceptable limits (umax , umin ). Therefore, if uk > umax , the control action must be umax , and if uk < umax , the action must be umin . This way, the rule must remain unaltered when the control action reaches the saturation limit. ⎧ ⎨ 0 0 ΔQik = ⎩ ΔQik
if uk−1 = umin e ΔQik < 0 if uk−1 = umax e ΔQik > 0 otherwise
Ξ0 = 0 B0 = 0
Additionally, a Xfi focal point and a rki radius are defined for each cloud. The focal point is real information representative of the cloud, and it is the cloud information that presents the highest local and global density. It is important to highlight that the focal point and radius do not characterize the cloud data and only supply an idea of data localization and distribution from each cloud [12] and [14]. Both the focal point and radius are parameters adapted online and are applied only in the evolution process of the controller’s structure, not influencing the inference process anyhow. The evolution of the controller’s structure occurs in every new data sample received and is based on the creation or modification of clouds which define the rule base of the controller. Then, the applied methodology for the addition of new clouds to the rule base is presented, as well as the methodology for updating existing clouds. 1) Addition of new clouds: A new cloud is created if the following conditions are met: Γk >
i /2 dki > rjk
∀i = 1, ..., N ∀i = 1, ..., N
(17) (18)
Γif
corresponds to the global density of the focal point where and dki represents the distance of the xk sample in relation to the focal point of the i cloud. This mechanism ensures good generalization and avoids cloud overlapping, controlling the distance between them [14] [12]. The dki distance calculated by the Euclidean distance is given by dki = ||xk − Xfi ||2
i
(20)
and the ℵi cloud is updated by applying the equation
where
Γif
ℵi = arg max(λik )
(15)
B. Structure evolution For the controller’s structure evolution, a second density measure is used called global density. Global density calculation is similar to global density, except that it considers all samples and is calculated considering the zk = [xTk ; uk ]T points, when local density only takes into consideration the xk input vector. Global density in recursive form is calculated by [13] e [12]. k−1 Γk = (16) (k − 1)(zkT zk + 1) − 2Ak + Bk Ak = zkT Ξk Ξk = Ξk−1 + zk−1 ; Bk = Bk−1 + ||zk−1 ||2 ;
If the conditions expressed by 17 and 18 are met, a new cloud is created ℵN +1 and the focal point associated with this new cloud is defined by XfN +1 = xk . Otherwise, the clouds will be updated as explained in the next item. 2) Cloud updating: The procedure described below is applied to update clouds that form the controller’s rule base. The new information is associated with the ℵi cloud, whose local density is the highest, according to the equation
(19)
Mi = Mi + 1
(21)
The new information is a candidate to be the focal point of the ℵi cloud if the following conditions are met λik > λif
(22)
Γk > Γif
(23)
where λif corresponds to the local density of the focal point of the ℵi cloud. If the conditions expressed by 22 and 23 are met, the focal point of the ℵi cloud is replaced by the xk sample, by applying: Xfi ← xk . The associated radius of cloud ℵi indicates an extension of the cloud, and this updated in the moment j, an each new associated sample, as follow [11] [12]: i i i rjk = ρ rj(k−1) + (1 − ρ)σjk
(24)
i usually the value of ρ is 0.5 and σjk denotes the cloud’s local scatter over the input data space and is given by [13] [11] Mi 1 i σjk = i ||Xfi − xl ||2j j = 1, ..., n (25) M l=1
For new data cloud ℵN +1 , the local scatter is initialized based on average of the local scatters of the existing data cloud [13] [12]: N +1 σjk =
N 1 l σjk N
j = 1, ..., n
(26)
l=1
V. R ESULTS In this section, the results obtained through computational simulations are presented. The block diagram of the implemented system is shown in Figure 1, where the speed controller block implements the evolving fuzzy controller. In the simulations, a 200 W induction motor was used, whose data is present in Table I. The values assigned to the C and emax constants are, respectively, 1.5 and 3 rad/s. In order to validate the proposed controller, the motor was submitted (1) to speed variations, (2) operation in acceleration ramps and (3) sudden load disturbances. Figure 5 shows the system’s response when a 300 rad/s degree of speed is applied with the motor without load. In
TABLE I M OTOR N OMINAL PARAMETERS
400
ω* ω
Value 200 W 220 V 60 Hz 9.6 Ω 8.87 Ω 0.5463 mH 0.5463 mH 0.5270 mH 2
0 0
0.5
1
1.5
2 Time (s)
2.5
3
3.5
4
(a) Reference speed (ω ∗ ) and rotor speed (ω) 1
400
300
ω* ω
200
0.5
0
−0.5
0.5
1
1.5
2 Time (s)
2.5
3
3.5
4
3
3.5
4
3
2
1
0
100
0
(b) Developed torque
Number of Cloud
Figure 5(a) the speeds of reference (ω ∗ ) and development speed (ω) are shown. Figure 5(b) is an expansion of Figure 5(b) around the point in which the motor speed is close to the reference speed. As it can be seen, in steady state, the developed speed is very close to the reference speed and the maximum overshoot value is approximately 1.3 rad/s.
Velocity (rad/s)
200
100
Torque (N/m)
Parameters Rated Power Rated Voltage Rated Frequency Stator Resistance Rotor Resistance Stator Inductance Rotor Inductance Mutual Inductance Number of poles
Velocity (rad/s)
300
0
0.5
1
1.5
2 Time (s)
2.5
(c) Number of clouds (rules).
0 0
0.1
0.2
0.3
0.4
0.5 Time (s)
0.6
0.7
0.8
0.9
Fig. 6. Controller’s response to sudden speed alterations
(a) Reference speed (ω ∗ ) and rotor speed (ω) 305
Velocity (rad/s)
In order to better analyze the responses, expansions at a shorter interval of time are shown in Figure 8 to highlight the 300 controller’s performance. As it can be seen (Figure 7(a)), the rotor speed follows the imposed speed, and the torque presents a fluctuation at the first moments of speed variation (Figures 295 8(a) and 8(b)), due to the fact that the controller’s rule base 0.5 0.55 0.6 0.65 0.7 0.75 Time (s) is being formed and the constant parameters adapted. (b) Extension of Figure 5(b) around the point in which the motor speed is close When the motor operates in steady state and a torque load to the reference speed similar to 0.35 Nm is met, responses to speed, torque, and Fig. 5. Controlle’s response to a speed step of 300 rad/s number of clouds applied are shown in Figures 9(a), b and c, respectively. As it can be seen, even after occurring load The controller’s performance was also analyzed in situations disturbance, the controller manages to maintain the rotor speed where the motor is subjected to sudden speed alterations. at the desired value only by adapting the parameters of the Figure 6(a) shows the reference speed (rectangular profile), as consequents, because no additional rule is created. well as the developed speed (trapezoidal profile). In 6(b), the VI. C ONCLUSION torque response developed during the acceleration, deceleration and steady state is shown. In Figure 6(c), the evolution of This study presented the speed control by indirect rotor field the controller’s rule base is shown, i.e., the number of clouds orientation of a squirrel-cage three-phase induction motor, overtime. In Figure 6(c), it can be seen that the controller’s rule where an evolving fuzzy controller was used. The controller base is reset in situations where the motor speed is far from showed good dynamic and static performance in all conditions the reference value. As the motor speed comes close to the to which the system was submitted, which demonstrates its reference value, the controller takes control of the plant, this autonomy and capacity for adaptation. The speed followed the way the rule bases is created and evolves in order to guarantee reference value without fluctuations, and error was negligible that the system error be zero. in a steady state. In all situations, the system proved to be Responses to speed, torque, and number of clouds applied stable and few rules were necessary to guarantee the motor’s overtime, when acceleration and deceleration ramps are im- control. The results obtained make evolving controllers a posed, are shown in Figures 7(a), 7(b) and 7(c), respectively. promising alternative in the field of electrical machine drive, X: 0.5956 Y: 301.3
ω* ω
200
400
ω*
150
ω
speed (rad/s)
300
Speed (rad/s)
100 50 0
ω* ω
200
100 -50 0
-100 0
1
2
3
4 Time (s)
5
6
7
0
8
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1
Time (s)
(a) Reference speed (ω ∗ ) and rotor speed (ω)
(a) Reference speed (ω ∗ ) and rotor speed (ω)
1
Torque (N.m)
Torque (N.m)
0.6
0.5 0 −0.5
0.4 0.2 0 -0.2 -0.4
−1
0
1
2
3
4 Time (s)
5
6
7
-0.6
8
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1
0.7
0.8
0.9
1
Time (s)
(b) Developed torque
(b) Developed torque
2.5
number of cloud
Number of Cloud
3
4 3 2 1
2 1.5 1 0.5
0
0
0.05
0.1
0.15
0.2
0.25 Time (s)
0.3
0.35
0.4
0.45
0
0.5
0
0.1
0.2
0.3
0.4
0.5
0.6
Time (s)
(c) Number of clouds created (rules)
(c) Number of clouds created (rules)
Fig. 7. Response to acceleration and deceleration ramp operation
Fig. 9. Controller’s response to torque disturbance of 0.35 Nm applied at the instant corresponding to 0.75 s
30
ω* ω
Speed (rad/s)
25 20
[2]
15 10
[3]
5 0 0
0.05
0.1
[4]
0.15
Time (s)
(a) Reference speed (ω ∗ ) and rotor speed (ω) [5] [6]
0.6 0.4
[7]
Torque (N.m)
0.2 0
[8]
-0.2 -0.4
[9]
-0.6 -0.8 0
0.05
0.1
0.15
Time (s)
[10]
(b) Developed torque Fig. 8. Extension of Figures 7(a) and 7(b) at the first 0.15 s
[11] [12]
mainly in situations where the system is subject to dynamic alterations, parametric alterations, load disturbances, or when there is not enough knowledge of the plant.
[13] [14]
R EFERENCES [1] F. Cardoso, J. Martins, and V. F. Pires, “A comparative study of a pi, neural network and fuzzy genetic approach controllers for an ac-
drive,” in Advanced Motion Control, 1998. AMC’98-Coimbra., 1998 5th International Workshop on. IEEE, 1998, pp. 375–380. M. N. Uddin and H. Wen, “Development of a self-tuned neuro-fuzzy controller for induction motor drives,” vol. 43, no. 4, 2007. P. Vas, Sensorless vector and direct torque control. Oxford Univ. Press, 1998. M. Masiala, B. Vafakhah, J. Salmon, and A. M. Knight, “Fuzzy selftuning speed control of an indirect field-oriented control induction motor drive,” vol. 44, no. 6, 2008. E. Bim, M´aquinas El´etricas e Acionamentos, 3rd ed. Elsevier, 2013. D. W. Novotny and T. A. Lipo, Vector control and dynamics of AC drives. Clarendon Press Oxford, 1996, vol. 2007. B. K. Bose, “Intelligent control and estimation in power electronics and drives,” in IEEE, 1997. ——, “Neural network applications in power electronics and motor drives ? an introduction and perspective,” vol. 54, no. 1, 2007. A. B. Cara, Z. Lendek, R. Babuska, H. Pomares, and I. Rojas, “Online self-organizing adaptive fuzzy controller: Application to a nonlinear servo system,” in IEEE, 2010. A. M. Silva, W. Caminhas, A. Lemos, and F. Gomide, “A fast learning algorithm for evolving neo-fuzzy neuron,” in Applied Soft Computing. Elsevier, 2014. P. Angelov, I. Skrjank, and S. Blazie, “Robust evolving cloud-based controller for a hydraylic plant,” in IEEE, 2013. P. S. Tehran, A. B. Cara, P. Angelov, I. Rojas, and A. Prieto, “Selfevolving parameter-free rule-based controller,” in IEEE Wold Congress on Computational Intelligence, 2012. P. Angelov and R. Yager, “Simplified fuzzy rule-based systems using non-parametric antecedents and relative data density,” in IEEE, 2011. P. Angelov, Autonomous Learning Systems: From Data Streams to Knowledge in Real-time. John Wiley & Sons, 2012.