**1. Introduction**

Since the beginning of the 21st century, the conventional utility grid system has started to be replaced by the newly adopted microgrid system due to several reasons. Microgrid systems offer environment-friendly distributed generation by local renewable energy resources [1–10]. From an economic aspect, it reduces the overall cost (combining the generation, transmission, and distribution) considerably. Apart from that, it is a great tool to distribute electricity to those areas where the utility grid-based electricity cannot be reached. However, though a microgrid is easy to construct and implement, the stability maintenance of the microgrid system is a matter of concern to system engineers, professionals, and researchers globally. The stability of the microgrid system is basically hampered

due to the CPL (constant power load) based load in the system. The CPL exhibits negative incremental load characteristics (shown in Figure 1) and easily creates exponential and random oscillation in the system, thus instability is forming in the system [2,11–13]. For compensating the instabilities caused by CPL, a lot of research has been conducted. Research regarding instabilities in microgrids started during 1998–1999, but as the electrification industry and microgrid technology grew gradually, this issue drew attention of researchers all over the world. Research timeline on CPL compensation is shown in Figure 2. The increase in research on microgrid is easily noticeable from this figure. Figure 3 shows the research work done on CPL compensations techniques in different countries. The United States of America is currently in the lead, but China, Norway, France, as well as India are churning up significant contributions.

**Figure 1.** Negative impedance characteristic of constant power load.

**Figure 2.** Research timeline on Constant Power Load Compensation Techniques, considering the published research works.

**Figure 3.** Contributions of different countries on Constant Power Load Instability Compensation research.

Several investigations have been conducted by researchers and system engineers all over the globe to ameliorate the stability scenario of microgrids. For direct current (DC) microgrid, several researches are reviewed at [14–17]. Sliding Mode Control (SMC) and Lyapunov Redesign Control (LRC) techniques are two of the most prominent nonlinear control techniques used to improve microgrid stability [18,19]. Prior to this, several studies have been carried out on the SMC technique. The stability characteristics become harder to establish in large systems. Sliding mode control has been applied in direct current (DC) microgrids to use the actual nonlinear models [20,21]. It has been accomplished by discovering a sliding surface and employing a sliding mode controller, which is discontinuous, for making the system voltage more stable. Later on, in [22], Vinicius Stramosk and Daniel J. Pagano presented a novel Sliding Mode Controller for precise governing of DC bus voltage. In like manner, a non-linear sliding surface is put forward by the two Indian Institute of Technology Jodhpur researchers: Suresh Singh and Deepak Fulwani in [23–25] to moderate CPL instability. The non-linear surface that they had proposed confirmed maintaining the constant power by the converter in practice. In this way, the proposed controller succeeded in mitigating the oscillating effect of the CPL of Point of Loads (POL) which are tightly regulated, and assured that the DC microgrids will operate stably under several disturbance conditions. Researchers Aditya R. Gautam et al. demonstrated, in [23], a robust sliding mode control technique to examine CPL instability. In like manner, in the case of alternating current (AC) microgrid, several researches have been reviewed in [12,26–31].

To achieve better controlled performance for polynomial nonlinear systems, the Lyapunov redesign of adaptive controller has been implemented by Qian Zheng and Fen Wu in [32]. Apart from the microgrid system, Wen-Ching Chung et al has implemented the Lyapunov redesign technique in vehicle dynamics to experience better steering control [33]. Then, Attaullah Y. Memon et al, in [34], used conditional servomotor to experiment with output control of a nonlinear system. In this course, they have implemented the Lyapunov redesign control technique. There are three basic compensation techniques to handle the microgrid instability: (i) feeder side compensation technique, (ii) intermediate circuitry based compensation technique, and (iii) load side compensation technique. In this paper, the storage-based load side compensation technique is adopted due to superior robustness and cost effectiveness among these techniques [35–42]. Adopting storage-based load side compensation in this paper, a comparative performance analysis will be presented for SMC and LRC techniques with the variation of the CPL power. The following are the contributions of this paper: besides modeling of the storage-based load side compensation technique (Section 2), SMC and LRC theories will be presented (Section 3), the robustness of the SMC and the LRC technique will be presented with the variation of CPL power load (Section 4). Then, the comparative performance analysis will be presented between SMC and LRC technique (Section 5) that will justify why the Lyapunov Redesign Control technique shows better robustness than the former one in microgrid application with dense CPL loaded condition. Reasons behind inferior SMC performance and ways to mitigate them will be discussed in Section 6. Section 7 will present numerical analysis of the control systems in real microgrid situations which verifies their effectiveness. Finally, the conclusion will be drawn in Section 8.

#### **2. Modeling Microgrid with CPL**

To mitigate purturbation caused by CPL loads, a compensation technique at the load side is the rational choice rather than compensating at the feeder side or using the intermediate circuitry approach. The load side compensation technique does required manipulation at the load side of the system to shield it from experiencing the effects caused by constant power loads. To elucidate this method, schematic models of storage-based real power compensation and reactive power compensation techniques (load side) are presented below in Figures 4 and 5 [18].

**Figure 4.** Real power compensation method at the load side, modeled for *d*-axis.

**Figure 5.** Reactive power compensation method at the load side, modeled for *q*-axis.

From the dq-axis models demonstrated above, the combined state space equation of the espoused load side compensation technique is shown in Equation (1) [19].

$$\begin{bmatrix} \frac{d\dot{i}\_{q\text{L}}}{dt} \\ \frac{d\dot{i}\_{q\text{L}}}{dt} \\ \frac{dV\_{q\text{C}}}{dt} \\ \frac{dV\_{q\text{C}}}{dt} \\ \frac{d\dot{V}\_{q\text{C}}}{dt} \\ \frac{d\dot{i}\_{q\text{V}}}{dt} \\ \frac{d\dot{i}\_{q\text{V}}}{dt} \\ \frac{d\dot{i}\_{q\text{V}}}{dt} \end{bmatrix} = \begin{bmatrix} \omega i\_{q\text{L}} - \frac{R\_{i}}{L\_{1}} i\_{d\text{L}} - \frac{V\_{dc}}{L\_{1}} + \frac{V\_{d}}{L\_{1}} \\ -\omega i\_{d\text{L}} - \frac{R\_{i}}{L\_{1}} i\_{q\text{L}} - \frac{V\_{qc}}{L\_{1}} + \frac{V\_{q}}{L\_{1}} \\ -\omega V\_{q\text{C}} + \frac{1}{L} i\_{q\text{L}} - \frac{1}{L} \frac{V\_{dc}}{V\_{qc}} - \frac{1}{L} i\_{q\text{V}} - \frac{1}{L} i\_{q\text{B}} \\ -\omega V\_{d\text{C}} + \frac{1}{L} V\_{q\text{C}} - \frac{R}{L} i\_{q\text{V}} \\ \omega i\_{q\text{V}} + \frac{1}{L} V\_{d\text{C}} - \frac{R}{L} i\_{q\text{V}} \end{bmatrix} \tag{1}$$

#### **3. Introduction to SMC and LRC**

Sliding Mode Control (SMC) is a type of Variable Structure Control (VSC) in control theory. It gets switched from one continuous structure to a different one, based on the current state-space location. That makes SMC a variable structure control method. Its various control structures are configured to move the trajectories to a switching condition all the time, and therefore, the final trajectory will not be wholly within a single control structure. Instead of that, the final trajectory will slide along the control structure boundaries. The system's motion while sliding along such boundaries is known as a Sliding Mode. The geometrical locus involving the boundaries is known as the sliding (hyper) surface. The sliding surface is defined by *σ* = 0, and after the limited time when the trajectories of the system have reached the surface, the sliding mode along the surface begins.

#### *3.1. Sliding Mode Controller (SMC)*

#### 3.1.1. Control Statement of Sliding Mode

Considering a nonlinear dynamic system affine in control:

$$
\dot{\overline{\mathfrak{X}}}(t) = f\left(\overline{\mathfrak{x}}, t\right) + B\left(\overline{\mathfrak{x}}\right)\overline{\mathfrak{u}}\left(t\right),
\tag{2}
$$

$$
\overline{\mathfrak{X}}(t) \in \mathbb{R}^{\mathfrak{n}}, \overline{\mathfrak{u}}(t) \in \mathbb{R}^{\mathfrak{n}}, f(\overline{\mathfrak{x}}, t) \in \mathbb{R}^{\mathfrak{n}}, B(\overline{\mathfrak{x}}) \in \mathfrak{R}^{\mathfrak{n}\times\mathfrak{m}} \tag{3}
$$

The components of the discontinuous feedback are given by:

$$u\_i(t) = \begin{cases} u\_i^+\left(\overline{\mathbf{x}}, t\right) \dot{\boldsymbol{x}} \, \sigma\_i(\mathbf{x}) > 0\\ u\_i^-\left(\overline{\mathbf{x}}, t\right) \dot{\boldsymbol{x}} \, \sigma\_i(\mathbf{x}) < 0 \end{cases} \, i = 1, 2, \cdots, m\_\prime \tag{4}$$

where *σi*(*x*) = 0 is the *i*-th component of the sliding surface, and *σ*(*x*) = [*σ*1(*x*), *σ*2(*x*), ··· , *σm*(*x*)] *<sup>T</sup>* = 0 is the (*n* − *m*) dimensional sliding manifold. The sliding mode control structure includes selecting a manifold or a hypersurface (i.e., the sliding surface) so that the system trajectory demonstrates desired performance when restricted within this manifold, and finding discontinuous feedback gains to make the trajectory of the system intersect and stay on the manifold. Vicinity of the switching surface can be viewed from Figure 6.

**Figure 6.** Vicinity of the switching surface.

A sliding mode exists, given that in the environs of the switching surface, *σ*(*x*) = 0, the state trajectory's velocity vector, . *x* (*t*), is always directed toward the switching surface. The control laws of the sliding mode not being continuous, it is able of driving trajectories to the sliding mode in finite time (i.e., the sliding surface's stability is superior to asymptotic). Nevertheless, the character of the sliding mode is taken on by the system (e.g., on this surface, the origin *x* = 0 can only possess asymptotic stability) once the trajectories reach the sliding surface.

#### 3.1.2. Chattering

Due to the presence of external disturbance—noise and inertia of the sensors and actuators—the switching around the sliding surface occurs at a very high (but finite) frequency. The main consequence is that the sliding mode occurs in a small vicinity of the sliding manifold, which is called boundary layer, and which has a dimension that is inversely proportional to the control switching frequency. The effect of high frequency switching is known as chattering (shown in Figure 7).

**Figure 7.** The chattering effect of Sliding Mode Controller (SMC).

The high-frequency switching propagate through the system exciting the fast dynamics and undesired oscillations that affect the system output. To prevent the chattering effect different techniques are used. One of the techniques is the use of continuous approximations of *sign*(*.*) using *sat*(*.*) or *tanh*(*.*) function in the implementation of the control law. A consequence of this method is that the invariance property is lost.

#### 3.1.3. Chattering Reduction

Nowadays, typical approaches have been developed to reduce the amount of chattering. Slotine [43–45] based their original proposal on the generalized event of the nth-order single input variant of nonlinear system: *x*(*n*) = *f* (*x*, *t*) + *B* (*x*, *t*) *u* ; here *x* is the state variable; *x* = [*x*, . *x*, .. *x*,..., *x*(*n*−<sup>1</sup>)]; *x(n)* is the *x*'s nth-order derivative; *B* is the gain; *f* is a nonlinear function and *u* is the control input. Furthermore, a formula for the switching manifold of the above system and the distance between the state trajectory: *s*, is stated as: *s*(*t*)=( *<sup>d</sup> dt* + *λ*) (*n*−1) *<sup>x</sup>*; while *<sup>λ</sup>* > 0 is a design constant, and *<sup>x</sup>* is the tracking error defined as: *<sup>x</sup>* <sup>=</sup> *<sup>x</sup>* <sup>−</sup> *xd*; whereas *xd* is the state variable for the desired trajectory. Henceforth the corresponding switching manifold is: *s*(*t*) = 0. Meanwhile, Slotine also proposed to smooth the previously mentioned discontinuity via a thin boundary layer closely surrounding the switching manifold. In such case continuous control within this boundary layer was attained by changing the switching term in the control law to a saturation function. Although the system would be driven to the boundary layer, yet the trajectory would not be staying on the switching manifold and thus the sliding mode would not exist [46]. Later Hung and Gao [47] offered the technique of reaching mode and reaching law, which was based upon nth-order m-input systems. To guarantee the state trajectory's attraction towards the switching manifold within the reaching mode, their suggestion was to control the reaching speed by applying certain reaching law. They put forward three certain kinds of reaching laws besides the general form. Among these types they claimed that the power rate reaching law would eliminate chattering and provide fast reaching as well: • *si* = −*ki*|*si*| *<sup>α</sup>sgn*(*si*). The reaching time *Ti* was deduced to: *Ti* <sup>=</sup> <sup>|</sup>*si*(0)<sup>|</sup> 1−*α* (1 − *α*)*ki* , *i* = 1, 2, ... , *m*; where • *si* was the reaching speed; • *si* was defined as according to Equations (6) and (7); • *si* (0) was the initial value of • *si*; *ki* >0 was the switching gain (in the *i*-th dimension), and 0 < *α* < 1. Yet typically it has been found that chattering cannot be totally eliminated by such method. The above approaches are bounded by defects. Besides, Luo & Feng's switching zone [48] appears mainly theoretical, whereas the Ground Validation System (GVS) of Hamerlan et al will have minimal effect on speed and position of the controlled subject [49].

#### *3.2. Lyapunov Redesign Controller (LRC)*

Unlike sliding mode controller (SMC), Lyapunov redesign controller, or LRC, is based only on Lyapunov function [50,51]. Consider a nonlinear system that is described by:

$$
\dot{\mathbf{x}} = f(\mathbf{x}) + G(\mathbf{x})\mathbf{u},
\tag{5}
$$

where *<sup>x</sup>* ∈ *<sup>n</sup>* is the state and *<sup>u</sup>* ∈ *<sup>m</sup>* is the controlled input. Assuming the matrix *<sup>G</sup>*(*x*) and the vector field *ƒ*(*x*) each has two components: an unknown part and a known nominal part. Therefore,

$$f(\mathbf{x}) = f\_0(\mathbf{x}) + f^\*(\mathbf{x}),\tag{6}$$

$$G(\mathbf{x}) = G\_0(\mathbf{x}) + G^\*(\mathbf{x}),\tag{7}$$

where ƒ0 and *G*<sup>0</sup> represent the known nominal plant, and *ƒ\*, G\** characterize the uncertainty. Later let us assume the unknown portion to conform to a certain bounding condition. Additionally, it is assumed that the uncertainty fulfills a so-called matching condition:

$$f^\*(\mathbf{x}) = \mathbf{G}\_0(\mathbf{x})\boldsymbol{\Delta}\_{\dot{f}}(\mathbf{x}),\tag{8}$$

$$\mathcal{G}^\*(\mathbf{x}) = \mathcal{G}\_0(\mathbf{x}) \Delta\_{\dot{G}}(\mathbf{x}),\tag{9}$$

The matching condition suggests that terms of uncertainty are present in the same equations with the control inputs *u*, and consequently, it will be possible to control them by controller. By replacing (6)−(9) in (5) we obtain: .

$$
\dot{\mathbf{x}} = f\_0(\mathbf{x}) + G\_0(\mathbf{x})(\mathbf{u} + \eta(\mathbf{x}, \mathbf{u})),
\tag{10}
$$

which includes all of the uncertainty terms, and is defined by:

$$
\eta(\mathbf{x}, \boldsymbol{\mu}) = \boldsymbol{\Delta}\_{\frac{\boldsymbol{\mu}}{f}} + \boldsymbol{\Delta}\_{\frac{\boldsymbol{\mu}}{G}} \boldsymbol{\mu}, \tag{11}
$$

The Lyapunov redesign method works on the ensuing problem: supposing the equilibrium of the nominal model . *x* = *f*(*x*) + *G*(*x*)*u* been made asymptotically stable uniformly by employing a feedback control law *u* = *p*0(*x*), the goal is to devise a control function *p\*(x)*, which is corrective in nature, so that the enhanced control law *u=p*0(*x*) + *p\**(*x*) can stabilize the system (defined by Equation (10)) faced by the uncertainty (*x*, *u*) getting constrained by a known function.

Then, let us think about the specifics of the Lyapunov redesign technique, that is comprehensively offered for a more common case. Let us assume a control law: *u=p*0(*x*) to exist so that *x =* 0 becomes a stable equilibrium point which is uniformly asymptotically of the closed-loop nominal system . *x* = *f*(*x*) + *G*0(*x*)*p*0(*x*). We also assume to know a Lyapunov function *V*0(*x*) that fulfills:

$$a\_1(||x||) \le V\_0(x) \le a\_2(||x||),\tag{12}$$

$$\frac{\partial V\_0}{\partial \mathbf{x}}[f(\mathbf{x}) + \mathbf{G}\_0(\mathbf{x})p\_0(\mathbf{x})] \le -a\_3(\|\mathbf{x}\|),\tag{13}$$

where *<sup>α</sup>*1, *<sup>α</sup>*2, *<sup>α</sup>*<sup>3</sup> : <sup>+</sup> <sup>→</sup><sup>1</sup> are stringently increasing functions that satisfy *<sup>α</sup>i*(0) = 0 and *<sup>α</sup>i*(*r*) <sup>→</sup> <sup>∞</sup> as *r* → ∞. These types of functions are sometimes called as class *K*<sup>∞</sup> functions. The term of uncertainty is presumed to satisfy the bound

$$||\eta(\mathbf{x},\mu)||\_{\infty} \le \bar{\eta}(t,\mathbf{x}),\tag{14}$$

where the bounding function \_ *η* is presumed to be known 'a priori', or accessible for measurement. At this point, let us proceed to designing the corrective "control component" *p\**(*x*) so that the system classes described by (10) and conforming to (14) are stabilized by *u=p*<sup>0</sup> + *p\**. An approach adhering to the nominal Lyapunov function *V*<sup>0</sup> is used as the base to design the corrective control term, thus

the name 'Lyapunov redesign method' is justified. Considering the exact same Lyapunov function *V*<sup>0</sup> guaranteeing the nominal closed-loop system's asymptotic stability, let us think about the time derivative of *V*<sup>0</sup> which is alongside the solutions of the full system (10). We have:

$$\begin{split} \dot{V}\_{0} &= \frac{\partial V\_{0}}{\partial \mathbf{x}} [f\_{0}(\mathbf{x}) + \mathbb{G}\_{0}(\mathbf{x})(\mathbf{u} + \boldsymbol{\eta}(\mathbf{x}, \boldsymbol{u}))] \\ &= \frac{\partial V\_{0}}{\partial \mathbf{x}} [f\_{0}(\mathbf{x}) + \mathbb{G}\_{0}(\mathbf{x})p\_{0}(\mathbf{x})] + \frac{\partial V\_{0}}{\partial \mathbf{x}} \mathbb{G}\_{0}(\mathbf{x})p^{\*}(\mathbf{x}) + \boldsymbol{\eta}(\mathbf{x}, \boldsymbol{u})) \leq -\mathfrak{a}\_{3}(\|\mathbf{x}\|) + \omega(\mathbf{x})^{T}p^{\*}(\mathbf{x}) + \omega(\mathbf{x})^{T}\boldsymbol{\eta}(\mathbf{x}, \boldsymbol{u}) \end{split} \tag{15}$$

where,

$$
\omega(\mathbf{x}) = \left[\frac{\partial V\_0}{\partial \mathbf{x}} G\_0(\mathbf{x})\right]^T \in \mathfrak{R}^m,\tag{16}
$$

which is a recognized function. We obtain by taking limits:

$$\begin{split} \dot{V}\_0 &\leq -\mathfrak{a}\_3(\|\|x\|\|) + \sum\_{i=1}^m \omega\_i(\mathbf{x}) p\_i^\*(\mathbf{x}) + ||\omega(\mathbf{x})|| \|\dot{1}||\eta(\mathbf{x}, \boldsymbol{\mu})||\_\infty \\ &= -\mathfrak{a}\_3(\|\|\mathbf{x}\|\|) + \sum\_{i=1}^m \omega\_i(\mathbf{x}) p\_i^\*(\mathbf{x}) + \bar{\eta}(\mathbf{x}, t) |\omega\_i(\mathbf{x})| \, \end{split} \tag{17}$$

The second term at the right-hand side of (17) can be made equal to zero if *p*∗ *<sup>i</sup>* (*x*) is taken as:

$$p\_i^\*(\mathbf{x}) = -\bar{\eta}(\mathbf{x}, t) \text{sgn}(\omega\_i(\mathbf{x})),\tag{18}$$

Every term of the corrective control vector *p\**(*x*) is chosen to be of the form *p\**(*x*) *<sup>=</sup>* <sup>±</sup>\_ *η*(*x*, *t*), where the sign of *p\**(*x*) is contingent on the sign of *<sup>i</sup>*(*x*) and changes as *<sup>i</sup>*(*x*) changes its sign. Substituting Equation (18) in Equation (17), the desired "stability" property is obtained. .

*V*<sup>0</sup> ≤ −*α*3(||*x*||); which infers that the closed-loop system is stable asymptotically. The augmented control law *u=p*0(*x*) + *p*\*(*x*) is discontinuous since each element *p*∗ *<sup>i</sup>* (*x*) is discontinuous at *<sup>i</sup>*(*x*)=0. Moreover, the discontinuity jump \_ *<sup>η</sup>*(*x*, *<sup>t</sup>*) → −\_ *η*(*x*, *t*) can have great magnitude if the bound of uncertainty \_ *η* is large. As demonstrated earlier, chattering can be caused by discontinuities in the control law; hence smoothing the discontinuity is desirable and is expected to retain some degree the nice stability properties at the same time from the original discontinuous control law. It is achievable by replacing Equation (18) with

$$p\_i^\*(\mathbf{x}) = -\bar{\eta}(\mathbf{x}, t) \tanh(\frac{\omega\_i(\mathbf{x})}{\varepsilon}),\tag{19}$$

where *ε* > 0 is a small design constant. It can be noted with *ε* approaching zero, the function tanh( *<sup>ω</sup><sup>i</sup> ε* ) gets converged to the sgn(*i*) function, which is discontinuous. By substituting Equation (19) in Equation (17) we obtain:

$$\dot{V}\_0 \le -a\_3(||\mathbf{x}||) + \overline{\eta}(\mathbf{x}, t) \sum\_{i=1}^m (|\omega\_i(\mathbf{x})| - \omega\_i(\mathbf{x}) \text{tanh}(\frac{\omega\_i(\mathbf{x})}{\varepsilon})),\tag{20}$$

Using Lemma: .

$$
\dot{V}\_0 \le -a\_3(||\mathbf{x}||) + \varepsilon mk\overline{\eta}(\mathbf{x}, \mathbf{t}),
\tag{21}
$$

*<sup>α</sup>*<sup>3</sup> being a strictly increasing class *<sup>k</sup>*<sup>∞</sup> function, for all *<sup>r</sup>* > 0 and any uniformly bounded function \_ *<sup>η</sup>*, there can exist a sufficiently small *<sup>ε</sup>*, so that . *V*<sup>0</sup> ≤ 0 for *x* outside of a region *D<sup>ε</sup>* = {*x V*(*x*) ≤ *r*}. Consequently, the trajectory becomes convergent to the invariant set *Dε*. A Lyapunov function's level surfaces are shown in Figure 8. It demonstrates the Lyapunov surfaces for increasing values of *k*. The condition . *<sup>V</sup>*<sup>0</sup> <sup>≤</sup> 0 suggests that the a trajectory moves within the set <sup>Ω</sup>*<sup>k</sup>* <sup>=</sup> {*<sup>x</sup>* <sup>∈</sup>*n*|*V*(*x*) <sup>≤</sup> *<sup>k</sup>*} when it crosses the Lyapunov surface *V(x) = k*, and it cannot ever come out. The trajectory moves to an inner Lyapunov surface with smaller values of *k* when *V* < 0. The Lyapunov surface *V*(*x*) *= k* reduces

back to the origin as k decreases, which shows that the approach of the trajectory to the origin with progressing time.

**Figure 8.** A Lyapunov function's level surfaces.
