Velocity Regulation in Switched Reluctance Motors under Magnetic Flux Saturation Conditions

1Facultad de Ingenieŕıa, Centro Universitario, Universidad Autónoma de Querétaro, Cerro de las Campanas, 76010 Querétaro, QRO, Mexico 2CONACYT-Tecnológico Nacional de México/Instituto Tecnológico de Hermosillo, División de Estudios de Posgrado e Investigación, Av. Tecnológico s/n, 83170 Hermosillo, SON, Mexico 3Laboratorio de Investigación en Control Reconfigurable AC,Monte Sinaı́ No. 128, Col. VistaHermosa, 76063Querétaro, QRO,Mexico


Introduction
It is widely recognized that switched reluctance motors (SRM) have tremendous potential as driving actuators given their unique torque producing characteristics [1][2][3].SRM can produce very large torques at relatively slow velocities; they require very low maintenance and produce much higher torques than brushless DC (BLDC) motors [1].However, the main disadvantages of SRM arise from the fact that they are difficult to control because of their complex nonlinear dynamic model and their multi-input nature.These challenging features of SRM control have motivated several important works on the subject [1][2][3][4][5][6][7].
On the other hand, magnetic flux saturation is an undesired phenomenon which appears in normal operation conditions of SRM.This has motivated design of control strategies which take into consideration flux saturation [4,[8][9][10].In [4] an exact feedback linearizing controller has been presented which is very complex and relies on the exact knowledge of many motor parameters.A backsteppingbased controller is introduced in [8] which requires lots of computations deteriorating performance because of numerical errors.A controller focused in optimizing the electric current profile to reduce torque ripple is proposed in [9] but the mechanical subsystem dynamics is not taken into account and any stability analysis explaining the result is not presented.Although control design approach introduced in [10] takes into account flux saturation, an explicit control law and the corresponding simulations results were only presented for the unsaturated model case.
Since inductance is not constant in SRM, bandwidth of the electric current dynamics is not constant.This motivates use of both hysteresis control and high-gain proportional control of electric current for SRM control in practice [11].We stress that no work has been presented until now in the literature introducing a stability proof for SRM when hysteresis is used to control electric current at motor.
Mathematical Problems in Engineering Some recent theoretical works on SRM control [10,[12][13][14][15] assume that only proportional electric current controllers are employed.However, the resulting control laws are very complex because their stability proofs require feedback of many nonlinear terms in order to complete the error equation for electric current.We remark that it is stressed in [16] that complex control laws result in performance deterioration because of numerical errors and actuator saturation.Furthermore, complex control laws also require more powerful hardware because of the large amount of computations to be performed, constraining the use of the motor to highcost applications [17].Moreover, it is pointed out in [18] that the electric drives community is not enthusiastic with such complex controllers.Thus, it is important to design controllers that are simple to implement but provided with formal stability proofs resulting in stability conditions useful to understand how the controller works.
Following the above ideas, the main contribution in the present paper is to introduce a simple control law for velocity regulation in SRM, provided with a stability proof that formally explains how the closed loop system works, when using both hysteresis and proportional control for electric current and taking into account magnetic flux saturation.We prove that the whole state remains bounded and it has an ultimate bound which can be rendered arbitrarily small by suitable selection of controller gains.Moreover, this result stands when starting from any initial condition within a radius which can be arbitrarily enlarged provided that suitable controller gains are chosen.We also show that this stands despite presence of unknown but constant torque disturbances.
This paper is organized as follows.In Section 2 we present the dynamic model that we consider as well as some useful mathematical tools.The torque sharing approach, which is instrumental for our proposal, is presented in Section 3. Our main result is stated in Section 4 and it is proven in Section 5. A numerical example is presented in Section 6 and some concluding remarks are given in Section 7.

SRM Dynamics
Windings on the stator of a SRM are intended to work as electromagnets.Rotor has neither permanent magnets nor windings and simply consists of a piece of iron provided with several salient teeth or poles.In a SRM torque is generated by reluctance, that is, by means of a torque production mechanism which is identical to that appearing when an electromagnet is placed close to a piece of iron.Electromagnets belonging to one stator phase are activated to attract one pair of rotor poles.Once these electromagnets and rotor poles are aligned this phase is disconnected and the electromagnets belonging to another stator phase are activated to attract another pair of rotor poles.Permanent movement of rotor in any direction is accomplished by activating and disconnecting the stator phases in a suitable sequence.See [19] for further explanation on the working principle of SRM.
For the sake of simplicity and without loss of generality, we will consider a SRM with four rotor poles and three phases (see Figure 1).It is well known that flux saturation is a common feature in SRM.In such a case, [8] suggests modeling this phenomenon in phase  as   (,   ) =   arctan(  ()  ), for  = 1, 2, 3, where  represents rotor position whereas   (,   ) and   stand for flux linkage and electric current in phase .  () is a function which stands for phase , it is periodic on position  and strictly positive, and it is assumed to be given as where  = 1, 2, 3,   is the number of rotor poles, and  0 ,   ,   , are real constants.Finally,   and  are positive constants which have to be obtained experimentally.The dynamical model of such a SRM is given as [13,20]  (, ) İ +  (, )  +  = , where  = [ 1 ,  2 ,  3 ]  and  = [ 1 ,  2 ,  3 ]  represent electric currents and voltages applied at each stator phase,  = q stands for rotor angular velocity, and generated torque is given as whereas   is the load torque which is assumed to be unknown but constant.Matrix  = diag{, , } is positive definite, with  > 0 representing the stator winding resistance, and scalars  > 0,  > 0 represent rotor inertia and viscous friction coefficient, whereas inductance (, ) = diag{ 1 (,  1 ),  2 (,  2 ),  3 (,  3 )} is a positive definite diagonal matrix, where and (, ) = diag{ 1 (,  1 ),  2 (,  2 ),  3 (,  3 )}, where for all , ,  ∈ R  and  ×  matrices (), (), and () with () being a symmetric matrix.

Torque Sharing Approach
According to the working principle description given at the beginning of Section 2, it is clear that such a motor operation results in a large torque ripple due to instantaneous switching from one to another phase.In order to reduce these torque variations, in this article we resort to the torque sharing approach (see [2,4,10,19]).Given a desired torque  * , this torque has to be generated by the contribution of the three stator phases of the motor; that is, The scalar function,   (), is referred to as the sharing function of phase ,  = 1, 2, 3, and represents the fraction of the desired torque to be contributed by phase .The sharing functions are designed as follows.Consider two sets for each stator phase  [2,4,10]: q (rad) q (rad) q (rad) Define  +  () and  −  () as bounded functions with bounded and continuous first derivatives such that and assign Note that   () and   ()/ become zero simultaneously.See Figure 2 for a graphical example of functions   () and   ()/.Furthermore, we additionally require functions  +  () and  −  () to be chosen such that   () → 0 as fast as ( −  0 )  → 0 where  0 is the rotor position such that   ( 0 )/ = 0 and for some integer  > 0 which depends on the particular   ().This is to ensure that  *  and İ *  are continuous and bounded as  →  0 [19].See Section 6, for example.
Figure 3: Hysteresis nonlinearity.Slop  is assumed to be large but finite.

Main Result
The following proposition establishes our main result.
Proposition 1.Consider model ( 2) and ( 3), in closed loop with the following controller: where ω =  −  * , with  * the constant desired velocity,  = − * ,  * represents the desired torque, and symbol ‖⋅‖  stands for the supreme value over the norm.We define the vectorial function , where ℎ(⋅) stands for the hysteresis nonlinearity depicted in Figure 3. Functions   () are defined in (11) and where   is the smallest positive number satisfying which can be solved numerically;   > 0 is chosen as and  * is an arbitrarily small positive constant.Finally, we have There always exist positive scalars   ,   , , , and , such that the whole state (which includes the velocity error ω =  −  * ) remains bounded and it has an ultimate bound which can be rendered arbitrarily small by using a suitable choice of controller gains.This result stands when starting from any initial condition within a ball whose radius can be arbitrarily enlarged provided that suitable controller gains are chosen.
Remark 2. In Figure 4 we depict control scheme in Proposition 1.Note that it is composed of a classical proportional-integral (PI) external loop intended to regulate velocity when motor is submitted to unknown but constant external torque disturbances.An inner electric current loop is driven by both a hysteresis controller and a proportional controller.The former is intended to dominate some terms which do not vanish as the desired equilibrium point is reached.The latter is intended to dominate some cross terms existing between the mechanical and the electrical subsystems.This will become clear in the proof of Proposition 1 which is presented next.We stress that both hysteresis and proportional controllers are commonly used in practice [11] which shows feasibility of the proposed controller.This is important to stress because this means that insight into how the proposed control scheme can be implemented in practical applications is explained by standard literature on SRM.The main advantage of our approach is that, contrary to standard open-loop operation of SRM, the trigger angles for switching on or switching off the power devices are determined automatically, thus simplifying motor operation at high and low velocities.Finally, the nonlinear terms − 1 || and (, ) *  are added at the output of the electric current controllers just for stability proof purposes.Remark 3. In [19] it is shown that function defined in (16) and the choice of parameters described after this expression ensure that by replacing √  with (  ), ∀  ≤  * , we obtain Electrical subsystem a function which is continuous up to the first derivative (see Figure 5).On the other hand, note that finding   as the numeric solution of the expression after ( 16) is not to be performed on line.Moreover, since  * is a known constant a simple computer program can be written to increase   from zero to choose the smallest positive value satisfying such an expression.This can be easily performed graphically since it is not to be done on line.Also note that  * is well-posed since   () * /  ()/ is always positive or zero, and hence   ≥ 0, because   () > 0 is used only if   ()/ and  * have the same sign (see (9) and ( 11)).Furthermore, according to paragraph after (11),   () → 0 faster than   ()/ → 0 [19].In this respect, notice that   () is a function proposed and introduced by designer trying to model magnetic flux saturation in motor as   (,   ) =   arctan(  ()  ).Hence,   () is a known function proposed by the designer.Thus, once   () is defined   ()/ can be computed.On the other hand,   () is proposed as a known polynomial which, hence, can also be proposed such that   () → 0 faster than   ()/ → 0. Remark 4. We obtain the closed loop dynamics in the following.This is achieved by simply replacing controller in Proposition 1 in the plant dynamics (2)-( 4).As stressed in Remark 2, the proposed control scheme is simple.One important factor contributing to this feature is that we are not required to feedback term İ * , which includes a large number of computations, but we just dominate such terms.The price to pay for this controller simplicity is that additional algebraic manipulation is required in both the closed loop equations and the stability analysis to show how this term domination is possible.Now let us obtain the closed loop dynamics of system described in Proposition 1. Replacing ( 12) in ( 2) and adding and subtracting some convenient terms, we have for  = 1, 2, 3. We stress that İ * is continuous according to definition of   () and (  ) in Section 3 and in Proposition 1, respectively.On the other hand, adding and subtracting term 4) and replacing  *  from (13), we have where || ≤  for some  which decreases to zero as  * > 0 approaches zero (see [19], Remark 1).Replacing (15), last expression can be written as Hence, from (3) it is obtained that where Thus, the closed loop dynamics is given by ( 20), (24), and (26).Finally, let us say that using the mean value theorem we can write

Stability Analysis
In this section we present the proof of Proposition 1 employing Lyapunov stability analysis.First, a positive definite and decrescent function is introduced in Section 5.1.Then, time derivative of this function along the closed loop system trajectories is computed in Section 5.2.There, it is also shown that the domain of attraction can be enlarged arbitrarily by suitably selecting the controller gains.Finally, the above findings are exploited in Section 5.3 in order to complete the proof of Proposition 1 by invoking Theorem 4.18, pp.172, in [21].Hence, the basic idea behind this procedure is simple.However, as stressed in Remark 4, the algebraic manipulation becomes elaborated because we do not feed back the complex term İ * and we have to show how these noncancelled terms are dominated.Moreover, showing that the domain of attraction can be arbitrarily enlarged introduces additional algebraic steps.

Time Derivative of 𝑉(𝑦).
It is possible to verify, after some algebraic manipulations, that the time derivative of (), defined in (29), along the trajectories of the closed loop system (20), (24), and (26), is given as where Δ is a diagonal positive definite matrix given as Replacing  1 from ( 14), we can write (32) as then where Δ  is the −th diagonal entry of diagonal matrix Δ, since, according to Figure 3 Assume for a moment that   () > 0. Using some constant 0 < Θ < 1, we can rewrite (40) as for some positive numbers  3 and  4 such that  3 +  4 = 1.
Expressions in (43) are always satisfied using large enough values for   > 0 and   > 0 and a small  > 0. On the other hand, we remark that any singularity in İ *  and İ *  as   → 0,  = 1, 2, 3, is avoided if  * > 0 is chosen.Define  as the radius of an open ball  = { ∈ R 5 | ‖‖ < } around the origin of the state space where   () > 0. The simplest estimate of the domain of attraction Ω  ⊂  is given as [21], pp.317, Hence, according to (30), we can compute  = min ‖‖= () =  1  2 .A more conservative estimate of the domain of attraction Ω   , represented by a ball of radius  2 , can be found by bounding () ≤  2 ‖‖ 2 <  1  2 , which results in Thus, this new estimate of the domain of attraction contains the set Replace ( 1 ) with () in (44).From the resulting expression we obtain Since  33 is the only entry of  depending on  and () does not depend on , it is clear that we can enlarge arbitrarily  by enlarging .Using this and the fact that  1 and  2 do not depend on , we conclude that radius  2 = √( 1 / 2 ) can be enlarged arbitrarily by enlarging .Moreover, once  2 is given,  can be chosen such that (37) is satisfied.This proves that   {} > 0 and (46) stand in a domain which can be arbitrarily enlarged by using a large enough .Now, we are ready to prove Proposition 1.
Note that, as was explained in paragraph after (46), conditions (43) and (44) can be satisfied by finite controller gains only if  * > 0, that is, to keep (46) valid.This means that the closed loop system has an ultimate bound which cannot be reduced to zero but can be rendered arbitrarily small by a suitable choice of controller gains.Recall that this result stands semiglobally.This completes the proof of Proposition 1. Finally, we emphasize that the conditions to guarantee Proposition 1 are summarized by 0 <  < √  /, (37), ( 43), (44), and some small constants  * > 0,  > 0.
Remark 5. Note that use of the desired electric current for  = 1,2,3, renders the corresponding time derivative unbounded when  * = 0 and τ * ̸ = 0, a common condition when a change in the sense of rotation is commanded.This can be seen from the product of the last term between brackets and factor at the left in the following expression: for  = 1, 2, 3, if   () ̸ = 0.This problem was pointed out by [19] where the authors have introduced function (⋅), defined in (16), to replace √⋅ when | * | ≤  * , for some  * > 0. This prevents such a singularity from appearing.This function replacement is instrumental for result in Proposition 1 in the present paper and it explains definition of  * in (13).Finally, we remark that this class of singularity has been pointed out since the work by [8].Remark 6.An important difference of our approach with respect to that of other authors [10,[12][13][14][15] is that, aside from term (, ) * , we do not require to complete by feedback of an error equation for the electrical subsystem of motor.This allows us to avoid necessity of feedback of complex functions of the state such as İ * which we only have to dominate.Aside from an important simplification of the control law this is also instrumental to successfully present stability proof of Proposition 1.
Remark 7. Note that function ( ω, ,   ), introduced in (29), contains the quadratic term (1/2)  () in order to cope with the motor electric dynamics.This is a clever choice since () does not represent the motor inductance matrix but simplifies the stability proof.As a matter of fact, if the quadratic function (1/2)  (, ) is employed, because matrix (, ) does represent the motor inductance matrix, when computing the time derivative of this function, the fact that (, ) depends on  complicates the stability analysis.
The desired velocity was designed as follows.A ramp takes the desired value from 0 [rad/s] at  = 0 and   = 0 elsewhere.This allows to study performance when step changes in the load torque are applied.We stress that the above specified load torque is unknown for the controller and, despite this, its effect is successfully rejected by the integral part of the controller, as observed in Figure 6.We consider that this feature represents an important improvement with respect to results by [13,14] where any information is not given on the load torque that they have considered.Moreover, a zero load torque due to friction is considered by [14].On the other hand, although a nonzero constant (for all time) load torque is reported in simulations presented by [12], performance during the transient response cannot be evaluated from such a test.
The simulation results obtained when using controller in Proposition 1 are presented in Figures 6 and 7. We can see that velocity  and the desired velocity  * remain almost identical for most of the time.Important differences between these variables only appear when step changes in the load torque are applied.However, such differences disappear very fast which proves the good disturbance rejection properties of controller in Proposition 1.We stress that a zero steady state velocity error is achieved when the desired velocity is constant although Proposition 1 only ensures an ultimate bound in velocity error.Reason for this is that the presence of friction and a load torque ensures that |  | >  * > 0 in steady state.
In Figures 6 and 7, we also present the applied voltages and electric currents through all the three motor phases.Note that these variables have important changes when step changes in the load torque appear and when the desired velocity is described by ramps.We stress that the desired torque  * becomes zero at some point of time which is close to time when velocity is zero.This is because the only load torque applied before  = 1 [s] is that due to friction, and this load torque smoothly passes through zero when velocity changes direction.We realize that, despite this, any voltage (or electric current) does not become large when velocity passes though zero.This proves that singularity referred to in Remark 5 is not present in controller in Proposition 1.
We observe that large negative voltage spikes appear all the time, especially when load torque is increased.These voltage spikes are naturally produced by the controller as a means of reducing to zero electric current through those stator phases which were required to produce a nonzero torque but, then, they are suddenly required not to produce torque.This happens when sign of   ()/ changes for those phases, which would generate torque in the opposite direction if electric currents through such phases were not forced to be zero very fast.SRM are provided with electronic drivers which are able to provide such negative voltage values as described by [22].These voltage spikes are also present in [14] although the voltage spikes in Figure 7 of the present paper are larger.This is because we are using a large load torque   = −4 [Nm] (load torque in [14] is not specified).
As a second test, in Figures 8, 9, and 10 we present some simulation results when two-step desired velocities are commanded.The first one is applied at  = 0 and changes desired velocity from 0 to 25 [rad/s] and the second one changes desired velocity from 25 [rad/s] to 0 at  = 0.9 [s].As expected, large electric current peaks appear which are required to accelerate and deaccelerate motor in  order to follow the commanded velocity changes.Note that these current spikes are always positive and only appear in certain motor phases, that is, those phases which, according to sharing functions, are able to produce suitable torque according to the motor position angle.Notice that voltage may be negative.This is due to the fact that electric current must be rendered zero very fast in phases which, according to sharing functions, must not contribute to generated torque.If electric current is not zero in such phases then those phases would contribute with a torque in the opposite direction more than required.A positive electric current is rendered zero very fast by applying a large negative voltage.

Figure 1 :
Figure 1: A three-phase and four-pole SRM.

Figure 2 :
Figure 2: A graphical example of functions   () and   ()/ for a three-phase and four-pole SRM.The latter are represented by sinusoidal waveform signals and the former are the other waveform signals.

current in phase 3 Figure 6 :
Figure 6: Simulation results when using controller in Proposition 1.

Figure 8 :
Figure 8: Additional simulation results when using controller in Proposition 1.  is in rad/s and  is in Nm.