# Adaptive Quasi-Sliding Mode Control for Permanent Magnet DC Motor

Authors: Fredy E. Hoyos; Alejandro Rincón; John Alexander Taborda; Nicolás Toro; Fabiola Angulo
Journal: Mathematical Problems in Engineering
 (2013)

---

## Abstract

The motor speed of a buck power converter and DC motor coupled system is controlled by means of a quasi-sliding scheme. The fixed point inducting control technique and the zero average dynamics strategy are used in the controller design. To estimate the load and friction torques an online estimator, computed by the least mean squares method, is used. The control scheme is tested in a rapid control prototyping system which is based on digital signal processing for a dSPACE platform. The closed loop system exhibits adequate performance, and experimental and simulation results match.


---

## Body

## 1. Introduction

Permanent Magnet DC (PMDC) motors are currently used as variable speed drive systems for aerospace, automotive, industrial, and automation applications because of their high power density and low maintenance cost [1]. However, the proper functioning of these systems has important challenges related to modeling, dynamical analysis, control, and implementation aspects. Nonlinear phenomena as bifurcations and chaos have been observed in many classes of motor drive systems. Therefore, uncertainties and disturbances should be tackled [2].Sliding mode control appears to be effective for PMDC motor control, since it is widely reported as a powerful approach for robust control issues [3, 4]. It is fast and makes it possible to tackle the effect of both unknown varying parameters and disturbances. The basic idea of the sliding control method is to design a control law so that the trajectories of the tracking error and its time derivatives converge to a properly defined manifold called sliding surface and remain therein. The tracking problem is translated into enforcing the dynamical system to converge towards the sliding surface, defined by s(t)=0, where s(t) is a linear function of the tracking error and its time derivatives. The sliding surface is rendered attractive and invariant by the control law. A common assumption is that there are unknown varying parameters or disturbances. There are two possibilities [5]: (i) assuming that the bounds of such uncertainties are known, and (ii) using a parameter updating mechanism in order to tackle the uncertain bounds. Ideal sliding motion only exists for infinite switching frequency. Thus, from a practical point of view, undesired chattering phenomenon is present [1]. Some research projects on sliding mode control are discussed below.In [6], an adaptive robust sliding nonlinear controller is formulated for a three-phase induction motor drive on the basis of a space-svector modulation scheme. The goal is to control the torque and stator flux. The motor model is fifth order, based on a stationary frame with two axes, and the stator currents and stator fluxes are the state variables. It is assumed that stator and rotor resistances may be varying and uncertain. The controller takes into account such variation: the stator and rotor resistances are online updated on the basis of the stator measured currents and voltages.In [7, 8] a sliding mode controller is developed for a sensorless induction motor (IM) drive, using the principles of direct torque control and space-vector pulse-width modulation (PWM). The goal is to control the rotor speed and stator flux (torque and flux) by means of two sliding mode controllers. Sliding mode observers are used for torque and flux estimation employing two motor models. The inverter is controlled using space-vector PWM.In [9], an adaptive sliding mode controller is designed for a two-mass IM drive without mechanical sensors, with an elastic joint. The goal is to control the motor speed. The speed is not measured, whereas the stator current and the DC link voltage of the motor are. The control structure consists of the rotor flux control loop and the speed control loop: (i) in the flux control loop, an MRAS type estimator is used for estimation of rotor speed and flux, based on the current and voltages of the IM, and (ii) in the speed control loop there is an inner control loop, where the electromagnetic torque of the IM is regulated. In addition, a fuzzy neural network is used with online tuning of its connective weights.In [10], an adaptive robust sliding controller is formulated for SISO nonlinear systems, with implementation on a linear motor. It is assumed that (i) the nonlinear part can be linearly parameterized and (ii) there are unknown varying parameters and disturbances whose bounds are known. A discontinuous projection type updated law is used in order to guarantee the bounded nature of the parameter updates. The control scheme is applied to an X-Y table driven by a linear motor. The control design gives as result a signum type signal, but a saturation type function is proposed to replace it.Although the basic approach of the sliding mode control is intended for a continuous control input, there are applications to two-value control input. For instance, in [11], a sliding control scheme is designed for discrete pulse modulated converters. An integral term is incorporated in the definition of the error function S in order to achieve the desired steady state behavior. Simulations and experiments confirm the improvement of the steady state behavior. The main features of such control scheme are (i) the idea is that the error function S converges to zero, (ii) the control design is based on the properties of the time derivative of the error function S, and (iii) the commutation frequency is not fixed.The drawbacks of sliding mode control are (cf. [5, 6, 10]) (i) the control gain is large when the defined parameter bounds are large, (ii) the control input may exhibit chattering, which may excite high frequency unmodeled modes of the system, and (iii) the input chattering may lead to high power consumption and wear of mechanical components (cf. [12, 13]). There have been significant works focused on the reduction or fixing of the commutation frequency, in order to reduce chattering, mainly in the field of power electronics. The current sliding control schemes with fixed frequency lead to significantly flawed convergence of the system variables towards the sliding surface.Quasi-sliding mode control emerged as an alternative solution to the drawbacks of sliding control, retaining the inherent advantages of its operation. Indeed, the undesirable chattering and high frequency switching of the control signal are avoided. The controller design aims at achieving system convergence towards a boundary layer instead of the sliding surface, as mentioned in [14, pages 335, 336]. In the case of a continuous control input, the boundary layer implies the use of a saturation function in the control law instead of a discontinuous signal (see [10, 15]). The main features are as follows: (Ci) the main idea is that the system converges towards a region so that |S|≤ε, where ε is a small user-defined positive constant; (Cii) the control law is designed to achieve an adequate negative nature of the time derivative of the Lyapunov function or, equivalently, adequate signum properties of the time derivative of the error function; (Ciii) the commutation frequency is not fixed.Thus, it is important to formulate a control law that achieves desired system performance while tackling the effect of uncertainties or disturbances. To develop such controller, in this work, two different controllers were used: the zero average dynamics (ZAD) technique and the fixed point inducting control (FPIC). The ZAD technique, working with a second loop of control (FPIC), results in a quasi-sliding controller that has proven to be effective and robust to uncertainties and disturbances.The theoretical basis of the ZAD technique design was explained by Fossas et al. in [14], in 2000. In the ZAD design, the definition of the duty cycle is such that the average dynamics of the error function is zero for one measuring period. This idea leads to a fixed switching frequency with convergence of the system towards the boundary layer; compars [14, pages 341–343]. In [16] a piece-wise linear approximation of the error function was proposed, in order to simplify the computation of the duty cycle. Nevertheless, the ZAD strategy is not as robust as sliding control. For this reason, the ZAD-FPIC strategy was developed in [16] as an improvement of the ZAD strategy. Indeed, The ZAD-FPIC duty cycle is the weighted sum of (i) the ZAD duty cycle and (ii) a feed-forward component defined as the steady state of the ZAD duty cycle. The ZAD-FPIC strategy allows further improvement of the convergence properties of the ZAD technique. The theoretical basis of the FPIC design was proposed for the first time in [16] and experimentally proven in [17, 18]. The main features of the ZAD-FPIC strategy are as follows: (i) the control design is not aimed at obtaining negativeness or positiveness properties of the time derivative of the error function; instead, a linear combination of the error and its derivative is forced to have zero average, (ii) ZAD-FPIC scheme improves the properties of the ZAD technique by defining a new duty cycle that combines the ZAD duty cycle with its steady state or with its expected duty cycle in each iteration; thus, stability is guaranteed in a wider range of the parameter values, and (iii) the closed loop system is more robust with this controller.In this paper, an adaptive ZAD-FPIC strategy is formulated for motor speed control. The system involves a buck power converter, a PMDC motor, and a dSPACE platform. The load torque and the friction torque are considered unknown, so that they lead to an uncertain parameter. The uncertain parameter is estimated by means of a least mean squares (LMS) mechanism, which is formulated and tested on the real system. The ZAD-FPIC scheme is formulated and experimentally tested. Bifurcation diagrams are developed for the adaptive ZAD-FPIC control system, for different values of the controller parameters. Numerical and experimental diagrams match. The control parameters are defined according to these curves. The main differences of the present paper with respect to closely related papers on ZAD-FPIC design, for instance [16, 17], are as follows: (i) ZAD-FPIC technique is proven for the first time in a high order system (PMDC motor). In previous works, ZAD-FPIC technique is only applied to second order systems; (ii) in previous works, parameters have been assumed as constant or measured. In this work, the effect of parameter estimation on the closed loop performance is taken into account in experiments and simulations, and (iii) the effect of the values of the covariance matrix on the parameter estimation performance is analyzed using simulations and experiments.The paper is organized as follows. In Section2, the proposed system and hardware considerations as well as the mathematical model of the system are presented. In Section 3, the control techniques and load torque estimation are defined. In Section 4, numerical and experimental results are shown. Finally, in Section 5, conclusions are presented.


## 2. Physical and Modelling Considerations

In this section, the physical system and the mathematical model are presented. The physical considerations include hardware characteristics, whereas the mathematical model is a relatively simple dynamical model.


### 2.1. Physical System

Figure1(a) shows the block diagram of the system under study, whereas Figure 1(b) shows the basic circuit considered in this work. According to Figure 1(a), this system is divided into two major groups. The first one is composed of all hardware parts. This group includes mechanical and electronic components. The second one involves software developments. Software is implemented in a dSPACE platform, where the acquisition signals and the control techniques implementations are performed.Schematic diagrams of implementation and physical system.
(a)
Block diagram of the proposed system
(b)
Electrical circuit for the buck-motor systemThe hardware is composed of a PMDC motor with a rated power of 250 W, rated voltage of 42 V, rated DC current of 6 A, and maximum speed of 4000 RPM. For motor speed acquisition, a 1000 pulse per turn encoder was used. The motor is fed by a buck power converter (see Figure1(b)). To measure the capacitor voltage (υc), the inductor current (iL), and the armature current (ia) series resistances were used. The switch gate (MOSFET) is driven by the PWM controller. The PWM signal and the MOSFET are coupled via fast optocouplers HCPL-J312.The digital part was developed in the control- and development-card dSPACE DS1104, where the control techniques were implemented. This card is programmed from the Matlab/Simulink platform, and it has a graphical interface called ControlDesk. The sampling rate of all the variables was set at 6 kHz. The state variablesυc, iL, and ia were digitalized with 12-bit resolution, while the controlled variable Wm was sensed by an encoder with 28-bit resolution. The parameters associated with the buck converter and the controller, as well as the motor parameters B, Jeq, kt, ke, Tfric, RaLa, are constant and are passed to the control block by the userinterface. The load torque TL is variable and will be online estimated. The performance and robustness of the system will be tested by varying one parameter. At each sampling time t=kT, the controller computes the duty cycle and the equivalent PWM signal to control the switch. Because of the physical characteristics of the system, the control action at sampling time t=kT is computed according to the values of the state variables at the previous sampling time t=(k-1)T. This restriction must be taken into account in the controller design.


### 2.2. Mathematical Model

Figure1(b) shows a basic diagram of the system. The buck power converter is used to feed the DC-motor. The system is of variable structure because on/off switch positions produce different topologies. Particularly, when the buck converter works in a continuous conduction mode (CCM), two systems are achieved. When the switch is ON the system is represented by
(1)[W˙mi˙aυ˙ci˙L]=[-BJeqktJeq00-keLa-RaLa1La00-1C01C00-1L-(rs+rL)L][WmiaυciL]+[-(Tfric+TL)Jeq00EL].
This equation can be expressed in a compact form by
(2)x˙=A1x+B1,
where the state variables are the motor speed Wm:=x1, the armature current ia:=x2, the capacitor voltage υc:=x3, and the inductor current iL:=x4. When the switch is OFF the system is represented by
(3)[W˙mi˙aυ˙ci˙L]=[-BJeqktJeq00-keLa-RaLa1La00-1C01C00-1L-(rL)L][WmiaυciL]+[-(Tfric+TL)Jeq00-VfdL]
and in a compact form as:
(4)x˙=A2x+B2.
In all cases, the output of the system is Wm, which corresponds to the variable to be controlled. ke is the voltage constant (V/rad/s); La is the armature inductance (H); Ra is the armature resistance (Ω); B is the viscous friction coefficient (N·m/rad/s); Jeq is the moment of inertia (kg·m2); kt is the motor torque constant (N·m/A); Tfric is the friction torque (N·m); TL is the load torque (N·m). The parameters C and L are the capacitance and inductance of the converter; the parasitic resistance rs is equal to the sum of the source internal resistance and MOSFET resistance; the resistance rL is equal to the sum of the resistance of the coil and the resistance used for measuring the current. E is the power source to feed the buck power converter when the switch is ON (see (1)). Vfd is the required voltage for the diode to be on (see (3)). Equation (3) is valid until iL=0. Only CCM and centered PWM are considered in this work (see Figure 2(a)), so that the system operates as follows:
(5)x˙={A1x+B1sikT≤t<kT+dT2A2x+B2sikT+dT2≤t<kT+T-dT2,A1x+B1sikT+T-dT2≤t<kT+T,
where k represents the kth iteration, T is the sampling period, and d∈[0,1]is the duty cycle, which will be computed in Section 3, and it corresponds to the time ratio between the ON position switch and the sampling time T.Schemes of the PWM and the quasi-sliding surface.
(a)
Centered PWM
(b)
Piece-wise linear functionspwl


## 2.1. Physical System

Figure1(a) shows the block diagram of the system under study, whereas Figure 1(b) shows the basic circuit considered in this work. According to Figure 1(a), this system is divided into two major groups. The first one is composed of all hardware parts. This group includes mechanical and electronic components. The second one involves software developments. Software is implemented in a dSPACE platform, where the acquisition signals and the control techniques implementations are performed.Schematic diagrams of implementation and physical system.
(a)
Block diagram of the proposed system
(b)
Electrical circuit for the buck-motor systemThe hardware is composed of a PMDC motor with a rated power of 250 W, rated voltage of 42 V, rated DC current of 6 A, and maximum speed of 4000 RPM. For motor speed acquisition, a 1000 pulse per turn encoder was used. The motor is fed by a buck power converter (see Figure1(b)). To measure the capacitor voltage (υc), the inductor current (iL), and the armature current (ia) series resistances were used. The switch gate (MOSFET) is driven by the PWM controller. The PWM signal and the MOSFET are coupled via fast optocouplers HCPL-J312.The digital part was developed in the control- and development-card dSPACE DS1104, where the control techniques were implemented. This card is programmed from the Matlab/Simulink platform, and it has a graphical interface called ControlDesk. The sampling rate of all the variables was set at 6 kHz. The state variablesυc, iL, and ia were digitalized with 12-bit resolution, while the controlled variable Wm was sensed by an encoder with 28-bit resolution. The parameters associated with the buck converter and the controller, as well as the motor parameters B, Jeq, kt, ke, Tfric, RaLa, are constant and are passed to the control block by the userinterface. The load torque TL is variable and will be online estimated. The performance and robustness of the system will be tested by varying one parameter. At each sampling time t=kT, the controller computes the duty cycle and the equivalent PWM signal to control the switch. Because of the physical characteristics of the system, the control action at sampling time t=kT is computed according to the values of the state variables at the previous sampling time t=(k-1)T. This restriction must be taken into account in the controller design.


## 2.2. Mathematical Model

Figure1(b) shows a basic diagram of the system. The buck power converter is used to feed the DC-motor. The system is of variable structure because on/off switch positions produce different topologies. Particularly, when the buck converter works in a continuous conduction mode (CCM), two systems are achieved. When the switch is ON the system is represented by
(1)[W˙mi˙aυ˙ci˙L]=[-BJeqktJeq00-keLa-RaLa1La00-1C01C00-1L-(rs+rL)L][WmiaυciL]+[-(Tfric+TL)Jeq00EL].
This equation can be expressed in a compact form by
(2)x˙=A1x+B1,
where the state variables are the motor speed Wm:=x1, the armature current ia:=x2, the capacitor voltage υc:=x3, and the inductor current iL:=x4. When the switch is OFF the system is represented by
(3)[W˙mi˙aυ˙ci˙L]=[-BJeqktJeq00-keLa-RaLa1La00-1C01C00-1L-(rL)L][WmiaυciL]+[-(Tfric+TL)Jeq00-VfdL]
and in a compact form as:
(4)x˙=A2x+B2.
In all cases, the output of the system is Wm, which corresponds to the variable to be controlled. ke is the voltage constant (V/rad/s); La is the armature inductance (H); Ra is the armature resistance (Ω); B is the viscous friction coefficient (N·m/rad/s); Jeq is the moment of inertia (kg·m2); kt is the motor torque constant (N·m/A); Tfric is the friction torque (N·m); TL is the load torque (N·m). The parameters C and L are the capacitance and inductance of the converter; the parasitic resistance rs is equal to the sum of the source internal resistance and MOSFET resistance; the resistance rL is equal to the sum of the resistance of the coil and the resistance used for measuring the current. E is the power source to feed the buck power converter when the switch is ON (see (1)). Vfd is the required voltage for the diode to be on (see (3)). Equation (3) is valid until iL=0. Only CCM and centered PWM are considered in this work (see Figure 2(a)), so that the system operates as follows:
(5)x˙={A1x+B1sikT≤t<kT+dT2A2x+B2sikT+dT2≤t<kT+T-dT2,A1x+B1sikT+T-dT2≤t<kT+T,
where k represents the kth iteration, T is the sampling period, and d∈[0,1]is the duty cycle, which will be computed in Section 3, and it corresponds to the time ratio between the ON position switch and the sampling time T.Schemes of the PWM and the quasi-sliding surface.
(a)
Centered PWM
(b)
Piece-wise linear functionspwl


## 3. Control Goal and Control Strategies

The objective of controlling a DC-motor is to maintain the motor speed in a fixed reference value defined by the user. The motor is fed by a power converter, which, in turn, is controlled by a PWM. Therefore, the voltage of the converter is chosen as control input. Thus, the controller computes the duty cycle to be applied to the buck converter in such a way that the system output (Wm) is regulated. This section is organized as follows: Section 3.1 shows the definition of the error function and its time derivative. Section 3.2 shows the formulation of the ZAD control strategy. Section 3.3 shows the formulation of the ZAD-FPIC control strategy. Section 3.4 shows the definition of the LMS mechanism for estimation of the unknown parameter.


### 3.1. Definition of the Error Function and Its Time Derivative

To define the error function, it is necessary to define the output error and its time derivatives. The output error is defined as(6)e(t)=Wwref(t)-Wm(t),
where Wwref(t) is the reference value for the motor speed and W˙m(t) is obtained from (1) or (3) depending on the time instant. The derivative of (6) is given by
(7)e˙(t)=W˙wref(t)-W˙m(t).
At the sampling time t=kT, (6) and (7) are written as
(8)e(kT)=Wwref(kT)-Wm(kT),(9)e˙(kT)=W˙wref(kT)-W˙m(kT).
Equations (7) and (9) indicate that the derivative of the output error at the sampling time t=kT is computed in two steps: in the first step, the derivative of the error is computed in time domain, and in the second step, the corresponding sampling values of the states are assigned to the expression. The signals e¨(kT) and e⃛(kT) have the same interpretations. With the aim of formulating a quasi-sliding controller and using the fact that the motor is a fourth-order system, an auxiliary third-order function involving e(t), e˙(t) and higher order derivatives is defined as
(10)s(t)=e(t)+ks1e˙(t)+ks2e¨(t)+ks3e⃛(t).
Constants ks1, ks2, and ks3 are control parameters which should be adjusted by the designer to satisfy stability requirements. At t=kT (10) can be written as
(11)s(kT)=e(kT)+ks1e˙(kT)+ks2e¨(kT)+ks3e⃛(kT).
The ZAD strategy requires the computation of signal s˙ and its evaluation at t=kT. The derivative of (10) is
(12)s˙(t)=e˙(t)+ks1e¨(t)+ks2e⃛(t)+ks3e….(t).
Evaluated at time kT, the previous equation is written as
(13)s˙(kT)=e˙(kT)+ks1e¨(kT)+ks2e⃛(kT)+ks3e….(kT),
where e˙(kT) is defined in (9), whereas e¨(kT), e⃛(kT), and e….(kT) are obtained by differentiating (7) and replacing t by kTas follows:
(14)e¨(kT)=W¨wref(kT)-W¨m(kT),e⃛(kT)=W⃛wref(kT)-W⃛m(kT),e….(kT)=W….wref(kT)-W….m(kT).
In turn, the derivatives W¨m(kT), W⃛m(kT), and W….m(kT) are obtained by differentiating (1) or (3), depending on the required signal.Remark 1.
The error functions(kT) and its time derivative s˙(kT) are defined in (11) and (13). The signals required for their computations are the output error (8) and the first and higher order derivatives of the output error, that is, e˙(kT), e¨(kT), e⃛(kT), and e….(kT), which are defined in (9) and (14).Remark 2.
The signalsW¨m(kT), W⃛m(kT), and W….m(kT) are obtained by differentiating expressions (1) or (3), so that their computation involves the values of the state variables at the sampling time t=kT and matrices A1 and B1 of (2) in the case that the switch is ON or matrices A2 and B2 of (4) in the case that the switch is OFF.Remark 3.
The error functions(kT) and its time derivative s˙(kT) depend on the values of the state variables at the sampling time t=kT.


### 3.2. ZAD Strategy

The ZAD strategy is a quasi-sliding control strategy, widely studied for second order systems [14, 16]. The basic idea of this technique is to compute the duty cycle so that the average dynamics of the error function is zero in one time period. A complete description of the ZAD strategy and its application to control buck power converters can be found in [16]. Contrary to the sliding mode control with hysteresis band, this technique allows the a priori definition of the switching frequency.In this paper, the average dynamics of the error function is solved analytically using the assumption that the error function is piece-wise linear, as it is illustrated in Figure2(b). As a result, in average, the error function is zero in each time period, so that the system is forced to evolve in a close neighborhood of the sliding surface. The tasks of the ZAD control design are (cf. [14, pages 338, 339]) as follows: (i) define the error function in terms of the output error, (ii) assume that the error function s behaves as a piece-wise linear function and define this function, and (iii) develop the time integral of the error function using the piece-wise linear definition, and (iv) solve the resulting expression for the ZAD duty cycle dk.According to the previous steps, the average dynamics are defined as a time integral of the error functions(kT) (11) in one time period, using the assumption that the error function is piece-wise linear, namely, spwl. The piece-wise linear function is presented in Figure 2(b), where, (i) when kT≤t<t1 the switch is ON and the system model is given by (1); when t1≤t≤t2 the switch is OFF and the model of the system is given by (3); when t2≤t<(k+1)T, the switch turns ON again and the system model is given by (1), (ii) s˙+ and s˙- are the slopes of spwl when the switch is ON and OFF, respectively, and (iii) s1 and s2 are the values of spwl at some specific instants, which correspond to switching instants. Other simplifications are introduced in the definition of spwl; namely, (i) the slopes of the first and third parts of the function are the same, denoted as s˙+, and (ii) all slopes can be computed using the data at the beginning of the sampling time. Considering these simplifications, the piece-wise linear function spwl is defined as
(15)spwl(t)={s(kT)+(t-kT)s˙+(kT)ifkT≤t<t1s1(kT)+(t-t1)s˙-(kT)ift1≤t≤t2s2(kT)+(t-t2)s˙+(kT)ift2<t≤(k+1)T,
where t1=kT+DkT/2 and t2=(k+1)T-DkT2 (similar to Figure 2(a)); signals s(kT), s˙+(kT), and s˙-(kT) are computed according to Remarks 1 and 2. The signal s(kT) is computed using (11) and (1). The signal s˙+(kT) is computed using (13) and matrices A1 and B1 (2). The signal s˙-(kT) is computed using (13) and matrices A2 and B2 (4). s1(kT)=s(kT)+DkT/2s˙+(kT) and s2(kT)=s1(kT)+T(1-Dk)s˙-(kT). Dependence with respect to k has been explicitly introduced into the equations with the aim of clarifying that these derivatives change each sampling time. DkT is the time the switch is ON, and Dk∈[0,1]. It can be noticed that spwl(t) depends on Dk and (1) and (3). The idea of the ZAD strategy is to design the duty cycle Dk, such that the average of signal spwl(t) is zero during one time period. This condition is expressed as
(16)∫kT(k+1)Tspwl(t)dt=0.
The above integral is solved for Dk:
(17)Dk∣k=2s(kT)+Ts˙-(kT)T(s˙-(kT)-s˙+(kT)),
where the notation k|k is used to emphasize that the duty cycle value depends on the state variables measured at the sampling time kT. However, in the experimental setup, it has been experimentally confirmed that the control action experiences one period delay, so that it is necessary to compute Dk using the values acquired in the previous sampling time. In this case,
(18)Dk∣(k-1)=2s((k-1)T)+Ts˙-((k-1)T)T(s˙-((k-1)T)-s˙+((k-1)T)).
Finally, the ZAD duty cycle is given by
(19)dk={1ifDk|(k-1)>1,Dk|(k-1)if0≤Dk|(k-1)≤1,0ifDk|(k-1)<0,
where (k-1) means a one-period delay in all the measured values, and dk is the duty cycle that should be applied to the system between kT and (k+1)T.Remark 4.
The duty cycledk (19) is saturated between 0 and 1, because dk is the ratio between the time the switch is ON and the time period T. For duty cycle values outside of this specific range the duty cycle is saturated, and in the next period, the controller computes the duty cycle again with the new values of the states.Remark 5.
The ZAD duty cycledk defined in (19) involves the state variables values at the sampling time t=(k-1)T, matrices A1 and B1 of (2), and matrices A2 and B2 of (4). The signals necessary for its computation are (i) the signal Dk|(k-1) (18), (ii) s((k-1)T), which is computed using (11), where e((k-1)T), e˙((k-1)T), e¨((k-1)T), and e⃛((k-1)T) are obtained according to Remarks 1 and 2, (iii) s˙+((k-1)T), which is computed using (13), where e˙((k-1)T), e¨((k-1)T), e⃛((k-1)T), and e….((k-1)T) are obtained according to Remarks 1 and 2, using matrices A1 and B1 of (2), (iv) s˙-((k-1)T), which is computed in a similar way as s˙+((k-1)T), but using matrices A2 and B2 of (4).Remark 6.
Depending on the values ofksi associated with s(KT) (11) and its derivatives, the ZAD duty cycle dk induces the convergence of the error function spwl(t) towards a close neighborhood of s(t)=0, this convergence is achieved through the fulfillment of the ZAD condition (16). Nevertheless, this convergence property is not as strong as the convergence of sliding mode control, and the ZAD strategy is not as robust as sliding control. Even more, ZAD control strategy may lead to unstable closed loop system when there ARE period delays. The system analyzed in this work has one period delay. Experimental and numerical results, not presented here, show that the states of the converter (υc and iL) never stabilize at a fixed point. For this reason, the ZAD-FPIC strategy, which was developed in [16] as an improvement of the ZAD strategy, is added to ZAD control. ZAD-FPIC controller has proven to be effective and robust to (i) stabilize the closed loop system, and (ii) achieve adequate performance of the controlled system.


### 3.3. FPIC Control Technique

As mentioned in Remark6, the ZAD strategy is not as robust as sliding mode control, and it implies severe degradation of the closed loop performance when there is a time delay. Therefore, the ZAD-FPIC is used to control the system.The duty cycle of the ZAD-FPIC strategy is based on (i) the ZAD duty cycle (dk) defined in (19), (ii) a feedforward component defined as d*, which corresponds to the steady state value of dk. Indeed, the new duty cycle is a weighted sum of the duty cycles dk and d*. The theoretical basis of FPIC design was proposed for the first time in [16] and experimentally proven in [17, 18]. The mathematical definition of the steady state value of the ZAD duty cycle, that is, d*, is based on the discrete time representation of the system, as explained below. The system described in Section 2.1 with the ZAD duty cycle dk (19) can be represented as x(k+1)=f(x(k),dk). As dk is a function of the states, then x(k+1) can be expressed as a function of states x(k); that is, x(k+1)=f-(x(k)). This equation can be solved to find out the steady states values. To compute d*, these steady state values are replaced in the expression of dk. The following theorem defines the unsaturated ZAD-FPIC duty cycle as a weighted sum of the ZAD duty cycle dk and its steady state d*.Theorem 7 (FPIC Theorem).
Consider the following discrete-time system:(20)x(k+1)=f(x(k),dk),
where x(k)∈ℜn, f:ℜn+1→ℜn, dk∈ℜ is the duty cycle that depends on the system states. The fixed point of the above system is given by x*=f(x*,d*), where x* and d* are the steady state values of x(k) and dk, respectively. Assume that the fixed point (x*,d*) is stable, so that the modulus of each eigenvalue is less than one, that is, |λi(J)|<1, for all i, where λ1,…,λn are the eigenvalues of the jacobian J1,
(21)J1=∂f∂x|(x*,d*).
Then, the choice
(22)d-k=dk+Nd*N+1
with high enough N achieves the asymptotic convergence of the system (20) to the fixed point (x*,d*) independently of the value of dk.Remark 8.
As parameterksi varies, the system can turn unstable, but the steady state does not change. Even more, this result is the same when one period delay is considered.Remark 9.
Note that (22) does not change the fixed point of (20).The proof is presented in the appendix. The value ofN can be found by means of a numerical analysis. dk refers to the duty cycle computed using the ZAD-technique (19), and d* corresponds to the steady state value of the controlled system. However, for PWM controlled systems, d* can be computed by sensing the input voltage (vin) at the beginning of the period. In this way, it is possible to find out the expected duty cycle in that period, and d* is replaced by the expected duty cycle in the current period. Particularly, in the case E≫Vfd which is the normal case, the expected duty cycle will be
(23)d*=vrefvin.
Taking into account the above theorem and the easy computation of d*, the final duty cycle applied to the motor system, described by (5), is expressed as
(24)dZAD-FPIC:=d={1ifd-k>1d-kifd-k∈[0,1]0ifd-k<0.Remark 10.
The ZAD-FPIC duty cycle (dZAD-FPIC) is defined in (24) and the signals and equations required for its computation are the unsaturated duty cycle d-k (22), the ZAD duty cycle dk (19), the signal d* (23), and the value of the constant N. In addition, the ZAD duty cycle (19) is computed according to Remark 5.Remark 11.
Equations (22) and (24) indicate that the ZAD-FPIC duty cycle dZAD-FPIC is a weighted sum of: (i) the ZAD duty cycle dk (19) and (ii) the steady state of the ZAD duty cycle or the expected duty cycle in the current period, that is, d* (23).


### 3.4. Motor Load Torque Estimator

The control scheme to be formulated relies on the known parameter values of the plant model, but the load torque (TL) and the friction torque (Tfric) exhibit an unknown time varying behavior. Therefore, this subsection shows the formulation of the online estimation mechanism for TL+Tfric, using the LMS technique. Since the sampling rate is relatively high, the estimation mechanism is formulated in continuous time. The LMS is a simplified version of the recursive least squares (RLS) technique, as is discussed below. The RLS method for systems in continuous time aims at minimizing the weighted integral of the difference between the actually observed and the computed values (see [19, 20]). Consider a continuous time system. If the system is of first order, a first order filter given by (25) must be introduced, where cf is a user-defined positive constant (cf. [19]). Consider the following:
(25)Hf=cfp+cf.
The parameterization of the system leads to
(26)F=φ⊤θ,
where F is the “output” vector and φ is the regression vector. Both of them are known and vary with time, whereas θ is the parameter vector, which contains the unknown system parameters. The formulation of the RLS method assumes that the unknown parameters contained in θ are constant, which makes it possible to guarantee the convergence properties. Despite this assumption, the RLS method also achieves adequate performance in real life systems where the parameters usually vary with time (see [19, 21, 22]). This can be handled by properly defining the forgetting factor. The RLS estimator is described by the following equations (cf. [19, 20]):
(27)dθ^dt=Pφε,(28)ε=F-φ⊤θ^,(29)dPdt=αP-Pφφ⊤P,
where P, θ^, F, and φ vary with time, α is the forgetting factor, and θ^ is the estimate of θ. This estimator achieves the asymptotic convergence of the estimate θ^ towards the real parameter vector θ if the “persistent excitation” condition is fulfilled (see [20]). There are several simplified versions of the RLS method that render the computation of the matrix P simpler, but the cost is a slower convergence of the parameter estimate θ^ (see [19]). The LMS algorithm considers a constant scalar value for the matrix P (see [19, 23, 24]), that is,
(30)P=γ,
where γ is a positive scalar constant. Thus, the LMS estimate θ^ is provided by (27), (28), and (30), with F(t) and φ(t) defined on the basis of parameterization (26). To apply the LMS method to the estimation of uncertain parameters of the motor model, the first differential equation given in (1) is used and it is given by
(31)W˙m(t)=-BWm(t)Jeq+ktia(t)Jeq-(Tfric+TL)Jeq.
By applying the first order filter (25) to the above equation, it is obtained (see [19])
(32)cfWm(t)-cfHfWm(t)=-BHfWm(t)Jeq+ktHfia(t)Jeq-Hf(Tfric+TL)Jeq.
By defining F, φ, and θ as
(33)F(t)=cfWm(t)-cfHfWm(t)+BHfWm(t)Jeq-ktHfia(t)Jeq,φ(t)=-1JeqHf,θ=(Tfric+TL).
Equation (32) can be written as
(34)F(t)=φ(t)θ,
where θ is the unknown parameter.Remark 12.
The estimateθ^ for the uncertain parameter θ=Tfric+TL is provided by (27), (28), and (30), with F(t) and φ(t) defined in (33), cf being a user-defined positive constant. Equation (30) is considered instead of (29) in order to avoid complex computation of the matrix P.


## 3.1. Definition of the Error Function and Its Time Derivative

To define the error function, it is necessary to define the output error and its time derivatives. The output error is defined as(6)e(t)=Wwref(t)-Wm(t),
where Wwref(t) is the reference value for the motor speed and W˙m(t) is obtained from (1) or (3) depending on the time instant. The derivative of (6) is given by
(7)e˙(t)=W˙wref(t)-W˙m(t).
At the sampling time t=kT, (6) and (7) are written as
(8)e(kT)=Wwref(kT)-Wm(kT),(9)e˙(kT)=W˙wref(kT)-W˙m(kT).
Equations (7) and (9) indicate that the derivative of the output error at the sampling time t=kT is computed in two steps: in the first step, the derivative of the error is computed in time domain, and in the second step, the corresponding sampling values of the states are assigned to the expression. The signals e¨(kT) and e⃛(kT) have the same interpretations. With the aim of formulating a quasi-sliding controller and using the fact that the motor is a fourth-order system, an auxiliary third-order function involving e(t), e˙(t) and higher order derivatives is defined as
(10)s(t)=e(t)+ks1e˙(t)+ks2e¨(t)+ks3e⃛(t).
Constants ks1, ks2, and ks3 are control parameters which should be adjusted by the designer to satisfy stability requirements. At t=kT (10) can be written as
(11)s(kT)=e(kT)+ks1e˙(kT)+ks2e¨(kT)+ks3e⃛(kT).
The ZAD strategy requires the computation of signal s˙ and its evaluation at t=kT. The derivative of (10) is
(12)s˙(t)=e˙(t)+ks1e¨(t)+ks2e⃛(t)+ks3e….(t).
Evaluated at time kT, the previous equation is written as
(13)s˙(kT)=e˙(kT)+ks1e¨(kT)+ks2e⃛(kT)+ks3e….(kT),
where e˙(kT) is defined in (9), whereas e¨(kT), e⃛(kT), and e….(kT) are obtained by differentiating (7) and replacing t by kTas follows:
(14)e¨(kT)=W¨wref(kT)-W¨m(kT),e⃛(kT)=W⃛wref(kT)-W⃛m(kT),e….(kT)=W….wref(kT)-W….m(kT).
In turn, the derivatives W¨m(kT), W⃛m(kT), and W….m(kT) are obtained by differentiating (1) or (3), depending on the required signal.Remark 1.
The error functions(kT) and its time derivative s˙(kT) are defined in (11) and (13). The signals required for their computations are the output error (8) and the first and higher order derivatives of the output error, that is, e˙(kT), e¨(kT), e⃛(kT), and e….(kT), which are defined in (9) and (14).Remark 2.
The signalsW¨m(kT), W⃛m(kT), and W….m(kT) are obtained by differentiating expressions (1) or (3), so that their computation involves the values of the state variables at the sampling time t=kT and matrices A1 and B1 of (2) in the case that the switch is ON or matrices A2 and B2 of (4) in the case that the switch is OFF.Remark 3.
The error functions(kT) and its time derivative s˙(kT) depend on the values of the state variables at the sampling time t=kT.


## 3.2. ZAD Strategy

The ZAD strategy is a quasi-sliding control strategy, widely studied for second order systems [14, 16]. The basic idea of this technique is to compute the duty cycle so that the average dynamics of the error function is zero in one time period. A complete description of the ZAD strategy and its application to control buck power converters can be found in [16]. Contrary to the sliding mode control with hysteresis band, this technique allows the a priori definition of the switching frequency.In this paper, the average dynamics of the error function is solved analytically using the assumption that the error function is piece-wise linear, as it is illustrated in Figure2(b). As a result, in average, the error function is zero in each time period, so that the system is forced to evolve in a close neighborhood of the sliding surface. The tasks of the ZAD control design are (cf. [14, pages 338, 339]) as follows: (i) define the error function in terms of the output error, (ii) assume that the error function s behaves as a piece-wise linear function and define this function, and (iii) develop the time integral of the error function using the piece-wise linear definition, and (iv) solve the resulting expression for the ZAD duty cycle dk.According to the previous steps, the average dynamics are defined as a time integral of the error functions(kT) (11) in one time period, using the assumption that the error function is piece-wise linear, namely, spwl. The piece-wise linear function is presented in Figure 2(b), where, (i) when kT≤t<t1 the switch is ON and the system model is given by (1); when t1≤t≤t2 the switch is OFF and the model of the system is given by (3); when t2≤t<(k+1)T, the switch turns ON again and the system model is given by (1), (ii) s˙+ and s˙- are the slopes of spwl when the switch is ON and OFF, respectively, and (iii) s1 and s2 are the values of spwl at some specific instants, which correspond to switching instants. Other simplifications are introduced in the definition of spwl; namely, (i) the slopes of the first and third parts of the function are the same, denoted as s˙+, and (ii) all slopes can be computed using the data at the beginning of the sampling time. Considering these simplifications, the piece-wise linear function spwl is defined as
(15)spwl(t)={s(kT)+(t-kT)s˙+(kT)ifkT≤t<t1s1(kT)+(t-t1)s˙-(kT)ift1≤t≤t2s2(kT)+(t-t2)s˙+(kT)ift2<t≤(k+1)T,
where t1=kT+DkT/2 and t2=(k+1)T-DkT2 (similar to Figure 2(a)); signals s(kT), s˙+(kT), and s˙-(kT) are computed according to Remarks 1 and 2. The signal s(kT) is computed using (11) and (1). The signal s˙+(kT) is computed using (13) and matrices A1 and B1 (2). The signal s˙-(kT) is computed using (13) and matrices A2 and B2 (4). s1(kT)=s(kT)+DkT/2s˙+(kT) and s2(kT)=s1(kT)+T(1-Dk)s˙-(kT). Dependence with respect to k has been explicitly introduced into the equations with the aim of clarifying that these derivatives change each sampling time. DkT is the time the switch is ON, and Dk∈[0,1]. It can be noticed that spwl(t) depends on Dk and (1) and (3). The idea of the ZAD strategy is to design the duty cycle Dk, such that the average of signal spwl(t) is zero during one time period. This condition is expressed as
(16)∫kT(k+1)Tspwl(t)dt=0.
The above integral is solved for Dk:
(17)Dk∣k=2s(kT)+Ts˙-(kT)T(s˙-(kT)-s˙+(kT)),
where the notation k|k is used to emphasize that the duty cycle value depends on the state variables measured at the sampling time kT. However, in the experimental setup, it has been experimentally confirmed that the control action experiences one period delay, so that it is necessary to compute Dk using the values acquired in the previous sampling time. In this case,
(18)Dk∣(k-1)=2s((k-1)T)+Ts˙-((k-1)T)T(s˙-((k-1)T)-s˙+((k-1)T)).
Finally, the ZAD duty cycle is given by
(19)dk={1ifDk|(k-1)>1,Dk|(k-1)if0≤Dk|(k-1)≤1,0ifDk|(k-1)<0,
where (k-1) means a one-period delay in all the measured values, and dk is the duty cycle that should be applied to the system between kT and (k+1)T.Remark 4.
The duty cycledk (19) is saturated between 0 and 1, because dk is the ratio between the time the switch is ON and the time period T. For duty cycle values outside of this specific range the duty cycle is saturated, and in the next period, the controller computes the duty cycle again with the new values of the states.Remark 5.
The ZAD duty cycledk defined in (19) involves the state variables values at the sampling time t=(k-1)T, matrices A1 and B1 of (2), and matrices A2 and B2 of (4). The signals necessary for its computation are (i) the signal Dk|(k-1) (18), (ii) s((k-1)T), which is computed using (11), where e((k-1)T), e˙((k-1)T), e¨((k-1)T), and e⃛((k-1)T) are obtained according to Remarks 1 and 2, (iii) s˙+((k-1)T), which is computed using (13), where e˙((k-1)T), e¨((k-1)T), e⃛((k-1)T), and e….((k-1)T) are obtained according to Remarks 1 and 2, using matrices A1 and B1 of (2), (iv) s˙-((k-1)T), which is computed in a similar way as s˙+((k-1)T), but using matrices A2 and B2 of (4).Remark 6.
Depending on the values ofksi associated with s(KT) (11) and its derivatives, the ZAD duty cycle dk induces the convergence of the error function spwl(t) towards a close neighborhood of s(t)=0, this convergence is achieved through the fulfillment of the ZAD condition (16). Nevertheless, this convergence property is not as strong as the convergence of sliding mode control, and the ZAD strategy is not as robust as sliding control. Even more, ZAD control strategy may lead to unstable closed loop system when there ARE period delays. The system analyzed in this work has one period delay. Experimental and numerical results, not presented here, show that the states of the converter (υc and iL) never stabilize at a fixed point. For this reason, the ZAD-FPIC strategy, which was developed in [16] as an improvement of the ZAD strategy, is added to ZAD control. ZAD-FPIC controller has proven to be effective and robust to (i) stabilize the closed loop system, and (ii) achieve adequate performance of the controlled system.


## 3.3. FPIC Control Technique

As mentioned in Remark6, the ZAD strategy is not as robust as sliding mode control, and it implies severe degradation of the closed loop performance when there is a time delay. Therefore, the ZAD-FPIC is used to control the system.The duty cycle of the ZAD-FPIC strategy is based on (i) the ZAD duty cycle (dk) defined in (19), (ii) a feedforward component defined as d*, which corresponds to the steady state value of dk. Indeed, the new duty cycle is a weighted sum of the duty cycles dk and d*. The theoretical basis of FPIC design was proposed for the first time in [16] and experimentally proven in [17, 18]. The mathematical definition of the steady state value of the ZAD duty cycle, that is, d*, is based on the discrete time representation of the system, as explained below. The system described in Section 2.1 with the ZAD duty cycle dk (19) can be represented as x(k+1)=f(x(k),dk). As dk is a function of the states, then x(k+1) can be expressed as a function of states x(k); that is, x(k+1)=f-(x(k)). This equation can be solved to find out the steady states values. To compute d*, these steady state values are replaced in the expression of dk. The following theorem defines the unsaturated ZAD-FPIC duty cycle as a weighted sum of the ZAD duty cycle dk and its steady state d*.Theorem 7 (FPIC Theorem).
Consider the following discrete-time system:(20)x(k+1)=f(x(k),dk),
where x(k)∈ℜn, f:ℜn+1→ℜn, dk∈ℜ is the duty cycle that depends on the system states. The fixed point of the above system is given by x*=f(x*,d*), where x* and d* are the steady state values of x(k) and dk, respectively. Assume that the fixed point (x*,d*) is stable, so that the modulus of each eigenvalue is less than one, that is, |λi(J)|<1, for all i, where λ1,…,λn are the eigenvalues of the jacobian J1,
(21)J1=∂f∂x|(x*,d*).
Then, the choice
(22)d-k=dk+Nd*N+1
with high enough N achieves the asymptotic convergence of the system (20) to the fixed point (x*,d*) independently of the value of dk.Remark 8.
As parameterksi varies, the system can turn unstable, but the steady state does not change. Even more, this result is the same when one period delay is considered.Remark 9.
Note that (22) does not change the fixed point of (20).The proof is presented in the appendix. The value ofN can be found by means of a numerical analysis. dk refers to the duty cycle computed using the ZAD-technique (19), and d* corresponds to the steady state value of the controlled system. However, for PWM controlled systems, d* can be computed by sensing the input voltage (vin) at the beginning of the period. In this way, it is possible to find out the expected duty cycle in that period, and d* is replaced by the expected duty cycle in the current period. Particularly, in the case E≫Vfd which is the normal case, the expected duty cycle will be
(23)d*=vrefvin.
Taking into account the above theorem and the easy computation of d*, the final duty cycle applied to the motor system, described by (5), is expressed as
(24)dZAD-FPIC:=d={1ifd-k>1d-kifd-k∈[0,1]0ifd-k<0.Remark 10.
The ZAD-FPIC duty cycle (dZAD-FPIC) is defined in (24) and the signals and equations required for its computation are the unsaturated duty cycle d-k (22), the ZAD duty cycle dk (19), the signal d* (23), and the value of the constant N. In addition, the ZAD duty cycle (19) is computed according to Remark 5.Remark 11.
Equations (22) and (24) indicate that the ZAD-FPIC duty cycle dZAD-FPIC is a weighted sum of: (i) the ZAD duty cycle dk (19) and (ii) the steady state of the ZAD duty cycle or the expected duty cycle in the current period, that is, d* (23).


## 3.4. Motor Load Torque Estimator

The control scheme to be formulated relies on the known parameter values of the plant model, but the load torque (TL) and the friction torque (Tfric) exhibit an unknown time varying behavior. Therefore, this subsection shows the formulation of the online estimation mechanism for TL+Tfric, using the LMS technique. Since the sampling rate is relatively high, the estimation mechanism is formulated in continuous time. The LMS is a simplified version of the recursive least squares (RLS) technique, as is discussed below. The RLS method for systems in continuous time aims at minimizing the weighted integral of the difference between the actually observed and the computed values (see [19, 20]). Consider a continuous time system. If the system is of first order, a first order filter given by (25) must be introduced, where cf is a user-defined positive constant (cf. [19]). Consider the following:
(25)Hf=cfp+cf.
The parameterization of the system leads to
(26)F=φ⊤θ,
where F is the “output” vector and φ is the regression vector. Both of them are known and vary with time, whereas θ is the parameter vector, which contains the unknown system parameters. The formulation of the RLS method assumes that the unknown parameters contained in θ are constant, which makes it possible to guarantee the convergence properties. Despite this assumption, the RLS method also achieves adequate performance in real life systems where the parameters usually vary with time (see [19, 21, 22]). This can be handled by properly defining the forgetting factor. The RLS estimator is described by the following equations (cf. [19, 20]):
(27)dθ^dt=Pφε,(28)ε=F-φ⊤θ^,(29)dPdt=αP-Pφφ⊤P,
where P, θ^, F, and φ vary with time, α is the forgetting factor, and θ^ is the estimate of θ. This estimator achieves the asymptotic convergence of the estimate θ^ towards the real parameter vector θ if the “persistent excitation” condition is fulfilled (see [20]). There are several simplified versions of the RLS method that render the computation of the matrix P simpler, but the cost is a slower convergence of the parameter estimate θ^ (see [19]). The LMS algorithm considers a constant scalar value for the matrix P (see [19, 23, 24]), that is,
(30)P=γ,
where γ is a positive scalar constant. Thus, the LMS estimate θ^ is provided by (27), (28), and (30), with F(t) and φ(t) defined on the basis of parameterization (26). To apply the LMS method to the estimation of uncertain parameters of the motor model, the first differential equation given in (1) is used and it is given by
(31)W˙m(t)=-BWm(t)Jeq+ktia(t)Jeq-(Tfric+TL)Jeq.
By applying the first order filter (25) to the above equation, it is obtained (see [19])
(32)cfWm(t)-cfHfWm(t)=-BHfWm(t)Jeq+ktHfia(t)Jeq-Hf(Tfric+TL)Jeq.
By defining F, φ, and θ as
(33)F(t)=cfWm(t)-cfHfWm(t)+BHfWm(t)Jeq-ktHfia(t)Jeq,φ(t)=-1JeqHf,θ=(Tfric+TL).
Equation (32) can be written as
(34)F(t)=φ(t)θ,
where θ is the unknown parameter.Remark 12.
The estimateθ^ for the uncertain parameter θ=Tfric+TL is provided by (27), (28), and (30), with F(t) and φ(t) defined in (33), cf being a user-defined positive constant. Equation (30) is considered instead of (29) in order to avoid complex computation of the matrix P.


## 4. Numerical and Experimental Results

In view of Remark6, the ZAD-FPIC strategy with duty cycle (dZAD-FPIC) given by (24) is considered for implementation on the real system. However, there are two major problems associated with the implementation. First, the values of the state variables at the beginning of each period are required for the computation of the duty cycle. Thus, the sampled signals and PWM are synchronized using a trigger signal at the beginning of each switching period. Second, the ZAD-FPIC strategy relies on known values of the friction torque and load torque, which may be uncertain. Indeed, many values of the plant model parameters, both the DC-motor and converter parameters, are used by the controller. Thus, the load and friction torque term is estimated online by the LMS mechanism, whereas the remaining parameters were established previously. The uncertain term θ=Tfric+TL is estimated as θ^, provided by the LMS estimation mechanism, according to Remark 12 of Section 3.4.Figure3 shows the block diagram for the ZAD-FPIC controller simulation benchmark with parameter estimation. The parameter estimation and ZAD-FPIC blocks use the equations mentioned in Remark 10.Figure 3
ZAD-FPIC controller simulation block.Several tests performed on the motor system, and not shown here, proved that the sensitivity of the closed loop system with respect to parameterks3 is significant, but sensitivity with respect to ks1 and ks2 is low. Therefore, ks3 is chosen as a variable control parameter and bifurcation parameter, whereas ks1 and ks2 are fixed control parameters. Other parameter values are shown in Table 1. To ease the visualization of the controller parameters, they will be expressed in dimensionless form and they are called KS1, KS2, and KS3. The relationships between dimensionless parameters (KS1, KS2, and KS3) and control parameters (ks1, ks2, and ks3) are ks1=KS1LC, ks2=KS2LC, and ks3=KS3LCLC.Table 1
Parameters for simulation and experiment.
Parameter
Value
E: Input voltage
40.035 V
r
s: Internal resistance of the source and MOSFET
0.84Ω
V
fd: Diode forward voltage
1.1 V
L: Inductance
2.473 mH
r
L: Internal resistance of the inductor
1.695 Ω
C: Capacitance
46.27μF
R
a: Armature resistance
2.7289 Ω
L
a: Armature inductance
1.17 mH
B: Viscous friction coefficient
0.000138 N·m/rad/s
J
eq: Moment of inertia
0.000115 kg·m2
k
t: Motor torque constant
0.0663 N·m/A
k
e: Voltage constant
0.0663 V/rad/s
T
fric: Friction torque
0.0284 N·m
T
L: Load torque
Variable N·m
W
m
ref: Reference speed
400 rad/s
N: FPIC control parameter
1 or 1.5
F
c: Switching frequency
6 kHz
F
s: Sampling frequency
6 kHz
1
T
_
p: 1 Delay time
166.6μs
K
S
1
,
K
S
2: Control parameters
Equal to 2
K
S
3: Bifurcation parameters
VariableFigure4 shows the bifurcation diagrams of the system output (Wm) and the duty cycle d when the parameter KS3 is varied. In this experiment Tfric+TL=0.0284 N·m, and N=1. Figures 4(a) and 4(b) show simulation results, while Figures 4(c) and 4(d) show experimental results. It is important to note that even in the cases where the duty cycle does not have a fixed frequency, speed regulation is reached with a very low error. Fixed frequency is lost for KS3⪅15, and the converter works in chaotic way. In the interval 15<KS3<30, the converter works with a fixed switching frequency, but chaotic motion is present in the converter. The chaotic motion cannot be noticed in the speed because the motor has a slow response. For KS3>30, the system operation is very close to fixed frequency without chaotic motion. The output error in chaotic regime is greater than the output error in stable region (see Figures 4(a) and 4(c)). The shapes of the closed loop signals of the experiment for KS3>30 are due to measurement noise, delays, uncertainties, and unmodeled dynamics. From a practical point of view, the chaotic behavior of the duty cycle does not affect the speed regulation. However, fixed switching frequency has the advantage that the filtering of harmonics is easier than that of chaotic behavior. For this reason, it is better to design the controller in such a way that all the states are stable and operate in a fixed point.Bifurcation diagram of the output (Wm) and duty cycle (d) of the controlled system varying the bifurcation parameter KS3.
(a)
Simulation results and output of the system
(b)
Simulation results and duty cycle
(c)
Experimental results and output of the system
(d)
Experimental results and duty cycleFigure5 shows time evolution for the output Wm and estimated load torque (Tfric+TL) when the following values are considered: Wmref=400 rad/s, KS3=80, and N=1.5. The torque changes from (Tfric+TL)=0.04 N·m to (Tfric+TL)=0.0715 N·m at t=0.5 s. The motor speed (Wm) follows the reference value (Wmref=400) with an error value below 0.25% only when the load torque estimator is used (see Figures 5(a) and 5(c)). Figures 5(b) and 5(d) show estimated numerical and experimental load torque values, respectively.Evolution ofWm and estimated torque (Tfric+TL).
(a)
Simulation results
(b)
Simulation results
(c)
Experimental results
(d)
Experimental resultsFigure6 shows the estimated load torque value when the adaptive constant γ is varied. For small values of γ, the velocity of convergence from the estimated parameter to the real parameter is slow, but oscillations are absent. This is a result of the parameter estimation theory.Dynamics of estimator whenγ is varied.
(a)
Simulation results
(b)
Experimental results


## 5. Conclusions

In this work, ZAD-FPIC technique has been applied to a high order dynamical system, for the first time. In particular, it was designed and applied successfully to a coupled motor-power converter system. Simulations and experiments were performed, and they showed significant agreement.The quasi-sliding control technique designed in this work allows to choose the switching frequency of the controller. This switching frequency is given by the sampling period, and once the sampling period is defined, the system works in a fixed switching frequency regime.The stability of the closed loop system was analyzed using bifurcation diagrams, and stable behavior and chaotic behavior were observed. For all cases, the regulation error was lower than0.5%. However, when the system operates in a stable zone (KS3>30) the regulation error is lower than 0.15%. In addition, the parameter estimator handles the effect of uncertainty on the load torque and friction torque, so that output regulation is achieved even in the case that the load is changed.



---

*Source: 693685-2013-11-21.xml*