# MPPT for Photovoltaic System Using Nonlinear Controller

Authors: Ramsha Iftikhar; Iftikhar Ahmad; Muhammad Arsalan; Neelma Naz; Naghmash Ali; Hammad Armghan
Journal: International Journal of Photoenergy
 (2018)

---

## Abstract

Photovoltaic (PV) system generates energy that varies with the variation in environmental conditions such as temperature and solar radiation. To cope up with the ever increasing demand of energy, the PV system must operate at maximum power point (MPP), which changes with load as well as weather conditions. This paper proposes a nonlinear backstepping controller to harvest maximum power from a PV array using DC-DC buck converter. A regression plane is formulated after collecting the data of the PV array from its characteristic curves to provide the reference voltage to track MPP. Asymptotic stability of the system is proved using Lyapunov stability criteria. The simulation results validate the rapid tracking and efficient performance of the controller. For further validation of the results, it also provides a comparison of the proposed controller with conventional perturb and observe (P&O) and fuzzy logic-based controller (FLBC) under abrupt changes in environmental conditions.


---

## Body

## 1. Introduction

Human dependence on fossil fuels, for the generation of energy, has created numerous environmental catastrophes across the planet. Increased carbon emission, global warming, and ozone depletion are the direct consequences of this ill use of fossil fuels. This dire environmental situation is demanding us to utilize renewable energy resources to restore the damage done by fuel consumption. Renewable energy sources are not only ecofriendly but are also conveniently available to everyone and everywhere. The most eminent among these renewable sources for energy generation is solar energy [1]. Energy expenditure on earth is almost ten thousand times lesser than the energy bestowed upon us by the sun. Therefore, there is a dire need to develop instruments to utilize this unrestricted energy source. Solar cell is one such promising device that converts solar energy into electrical energy that can be used directly in a number of ways. Although solar or PV cells are quite promising, yet they are unable to convert all the solar energy into electricity. The percentage of the solar energy shining on a PV device that is converted into usable electricity is termed as conversion efficiency [2]. Hence, different techniques have been devised to extract maximum power from PV cells, so that they can operate at their maximum operating efficiency [3].The power characteristics of photovoltaic cells are nonlinear, that vary with the variation in the environmental conditions [4]. Variation in temperature and irradiance, for instance, changes the voltage produced, as well as, the generated current by the PV module [5]. As a result, the generated power also varies. Consequently, the operating point of PV array for maximum power generation changes. This operating point is called maximum power point, and the voltage at which PV module can produce maximum power is called maximum power voltage (or peak power voltage). As this point varies by varying environmental conditions, it makes the maximum power extraction a complex task. The power characteristic curve of a PV module at different irradiance levels is shown in Figure 1. Since the temperature and irradiance changes all the time, so a procedure is required to track this maximum power point.Figure 1
Power characteristics of a PV module.Numerous methods have been proposed in the literature to accomplish the goal of maximum power point tracking (MPPT). They can be categorized into three families of techniques, each having distinct approach to reach MPP. They are(i)
conventional algorithms,
(ii)
bioinspired algorithms,
(iii)
artificial intelligence- (AI-) based algorithms.Conventional algorithms mainly constitute a number of variants of two basic techniques, namely, perturb and observe (P&O) and incremental conductance [6]. In P&O-based algorithms, the output voltage of PV module is perturbed and output power is observed. If ΔPower>0, then the voltage will be further perturbed in the same direction, that is, voltage will be increased if it was previously increased and vice versa. But if it is less than 0, then the voltage will be perturbed in the opposite direction. These perturbations are introduced periodically and the whole process keeps on repeating itself to eventually reach the maximum power point [7]. As the perturbations are periodic in nature, they result in oscillations of the operating point about the MPP. The downside of this algorithm is its slow convergence to the MPP, resulting in degraded efficiency, especially in conditions where environmental variables are varying rapidly. Perturbations in the output are also an eventual outcome of this algorithm.Incremental conductance (IC) is more expeditious, as well as efficient in comparison with P&O [8]. This algorithm works on the principle that the ΔIPV/ΔVPV is equal to −IPV/VPV at MPP. So, if the PV module is being operated at the left of MPP in the power VS voltage curve, then ΔIPV/ΔVPV>−IPV/VPV. But, if it is operating on the right of MPP, then ΔIPV/ΔVPV<−IPV/VPV [9]. The algorithm is capable of tracking the MPP, even when the environmental conditions are varying swiftly. Once the system reaches MPP, it will eventually stop the iterations and will result in much better efficiency in comparison with that of P&O. The cost of better performance is increased complexity and the execution of larger number of instructions to accurately perform the necessary calculations [10].Both P&O and IC are also categorized as hill-climbing methods, since their principle of operation is based on the assumption of existence of global maxima. In the event of partial shading, that is, when a number of PV modules are connected with each other and some of them are under shadow while rest are under sunlight, then the whole system will experience multiple local maxima. The conventional algorithms are viable to converge at these local maxima, since they are unable to distinguish between a global and a local peak [11]. Similarly, both the methods continuously oscillate about the MPP, thus introducing oscillations in the system and power loss.Bioinspired algorithms are much efficient when compared to the conventional ones. They are capable enough to quickly converge to a global maxima and hence can save power loss even in a partially shaded environment. These algorithms generate a population of individuals and each individual represents a distinguished solution. Depending on the type of algorithm, they interact with each other to converge at the maxima. Since the population is initialized randomly, the chances of reaching a global maxima becomes very high. Genetic algorithm (GA) is one such algorithm that solved the obstacle of partial shading [12]. Hardware implementation of GA-based MPPT using FLBC verified its effectiveness under partial shading [13]. Particle swarm optimization (PSO) is another bioinspired algorithm, which is employed successfully in [14]. The particles or solutions swarm independently and evaluate their respective positions using a cost function to estimate their closeness to MPP. The particles eventually converge on a solution that will provide MPP.Despite their usefulness in varying environmental conditions, these techniques are inefficient because of their slow response. These algorithms continuously evaluate and compare the outcomes of a large number of possible solutions, which also introduce oscillations in the output of the PV array. To reduce these oscillations, an improved variant of PSO was suggested in [15], which increased the efficiency of the system. Similarly, PSO was combined with P&O in [16] to achieve results that are better in comparison with either of the two parent techniques. Ant colony optimization (ACO) is another population-based algorithm which was integrated with P&O in [17] to reduce oscillations. Although there are several advantages of bioinspired algorithms, but their difficult encoding schemes, too many parameter assignments, slow convergence under rapidly varying conditions, and difficult theoretical analysis inhibit their practical usage.There are two manifestations of AI-based MPPT algorithms, which are different in nature from one another.Fuzzy logic-based controllers (FLBCs) or algorithms incorporate the human knowledge and information of a particular system in determining a fuzzy rule base to control it. It does not require any mathematical model of the system but it maps the inputs to the output using fuzzy If Else rules. Hence, its performance completely depends on the designer’s information about the behavior of the system and its working in varying environment. Due to this property of fuzzy systems, these controllers are relatively simple to design and are robust in performance, since they are also nonlinear in nature [18]. Their only disadvantage is computational complexity especially during implementation. The second type of AI algorithm is artificial neural network- (ANN-) based MPPT. It is computationally less costly and improves its performance with time on its own. It does require a training data set in the beginning to train the input output relation, but once deployed, they become robust in operation in response to rapid variation in input parameters [19]. A variant of both FLBC- and ANN-based controller is developed in [20], which outperforms its predecessors in performance, robustness, and efficiency. The resultant artificial neuro fuzzy interference system (ANFIS) shows less overshoot, less settling time, and few oscillations about the MPP.In this paper, data points were collected using characteristic curves of a PV module. These points map a particular irradiance and temperature to thepeak power voltage. Linear regression is then executed over these data points to generate a regression plane, which provides the reference peak power voltage under varying temperature and irradiance levels. The generation of reference is the first step in achieving MPPT. To extract actual power, we require a DC-DC converter to operate in succession with the PV array. Sometimes, the operating voltage for loads is different than the output voltage of a PV module. For instance, the nominal voltage of a battery is usually much lower than the panel’s output voltage. In this scenario, it is obvious to use some kind of interface between the input power and the output load [21]. DC-DC buck converter is used in the proposed study to interface loads that require low input voltage [22]. Being the simplest among all the converters, it has the advantage of lowest part count [23]. For the same output power, the size of inductor is much smaller than that of a boost converter, which makes buck more efficient [24]. Buck converter can be operated at full range of duty cycle, that is, [0.1], because it is inherently stable [25]. Converters are usually modelled with the assumption that they depict linear behavior, which is wrong. Abrupt changes in duty cycle introduces abrupt transients in the output that depicts the nonlinear behavior of converters. Hence, it is unwise to use a linear controller for a tracking problem with the converters [5].The paper is organized in the following manner. The model of buck converter is established in Section2. Section 3 describes the generation of regression plane and the reference voltage to extract maximum power from the PV array. A nonlinear backstepping controller is designed in Section 4, and the analysis of global asymptotic stability using Lyapunov stability criteria is given in the same section. Results obtained after simulation are revealed in Section 5. This section also includes results obtained after comparing the proposed controller with the conventional P&O and FLBC. The advantages and disadvantages of the abovementioned techniques are presented in Section 6. Finally the conclusion is presented in Section 7.


## 2. Reference Voltage Generation by Regression Plane

PV characteristic curves are generated by varying temperature from 5°C to 75°C at constant irradiance level of 1000 W/m2. Similarly, more data points were obtained by varying irradiance levels from 200 W/m2–1400 W/m2 at constant temperature of 25°C. The data set obtained by these characteristic curves is used for generation of regression plane that provides us the required peak power voltage vPVR. The generated regression plane is shown in Figure 2 and is given by the following equation:
(1)vPVR=322−1.31∗T−0.00037∗I,where T is temperature and I is irradiance.Figure 2
Regression plane.


## 3. Modeling of Buck Converter

Buck is a switched mode DC-DC converter, whose output voltage has lesser magnitude than the input voltage. It is also termed as a step-down converter. Its circuit diagram is shown in Figure3. It is assumed to be operated in continuous conduction mode (CCM) throughout this paper. It has two modes of operation. In mode1, Switch S is on and Diode D is off. By Kirchoff’s current and voltage law, we can write
(2)iC1=iPV−iL,vL=vC1−vC2,iC2=iL−vC2R.Figure 3
Buck converter.In mode 2,Switch S is off and Diode D is on. Using Kirchoff’s current and voltage laws, we get
(3)iC1=iPV,vL=−vC2,iC2=iL−vC2R.By utilizing inductor’s volt second balance and capacitor’s charge balance, we can write:(4)dvC1dt=iPVC1−iLC1u,diLdt=vC1Lu−vC2L,dvC2dt=iLC2−vC2RC2.After averaging the model for one switching period and assumingx1, x2, x3, and μ to be the average value of vC1, iL, vC2, and u, respectively, we can write them as
(5)x1=vC1,x2=iL,x3=vC2,μ=u.Evaluating the time derivative of (5) using (4), we get
(6)ẋ1=iPVC1−x2C1μ,ẋ2=x1Lμ−x3L,ẋ3=x2C2−x3RC2.This averaged state space model is then used to track the reference peak power voltage.


## 4. Backstepping Control

In order to effectively track the reference generated by the regression plane, a nonlinear controller based on backstepping approach is designed. The controller provides the inputμ that will determine the duty ratio to be supplied to the switch in buck converter. The reference vPVR generated in Section 2 is termed here as x1ref to avoid any confusion while deriving the controller.Assuminge1 to be the error between actual and required PV array output voltage
(7)e1=x1−x1ref.The goal is to converge the error signale1 to zero. Derivative of (7) with respect to time gives
(8)ė1=ẋ1−ẋ1ref.Inserting (6) in (8) gives
(9)ė1=iPVC1−x2C1μ−ẋ1ref.LetV1 be a positive definite Lyapnuov candidate function for checking the convergence of e1 to 0.
(10)V1=12e12.To ensure asymptotic stability, derivative of the Lyapnuov function must be negative definite. Taking time derivative of (10), we have
(11)V̇1=e1ė1.Using (9), we get
(12)V̇1=e1iPVC1−x2C1μ−ẋ1ref.ForV̇1 to be negative definite, let
(13)iPVC1−x2C1μ−ẋ1ref=−K1e1,so that V̇1 becomes
(14)V̇1=−K1e12.Rewriting (13) as
(15)x2=C1μK1e1+iPVC1−ẋ1ref.Let (15) be the reference current for inductor, given by
(16)β=C1μK1e1+iPVC1−ẋ1ref.Let us define the errore2 to track x2 to β
(17)e2=x2−β.Rewriting (17) as
(18)x2=e2+β.Putting (18) in (9) gives
(19)ė1=iPVC1−e2+βC1μ−ẋ1ref.Puttingβ from (16) in (19). After simplification, we get
(20)ė1=−K1e1−e2C1μ.Hence, (11) becomes
(21)V̇1=e1ė1=e1−K1e1−e2C1μ,(22)V̇1=−K1e12−e1e2C1μ.Here, the first term in (22) is negative definite, but we are not sure about the second term. By taking the derivative of (16) and (17) and simplifying the expressions
(23)ė2=ẋ2−β̇,and
(24)β̇=C1μK1ė1+i̇PVC1−x¨1ref−μ̇μ2C1K1e1+iPVC1−ẋ1ref.Simplifying using (16) and (20)
(25)β̇=C1μK1−K1e1−e2C1μ+iPVC1−x¨1ref−μ̇μβ.Inserting (25) in (23), ė2 becomes
(26)ė=ẋ2−C1μ−K12e1−K1e2C1μ−C1μi̇PVC1−x¨1ref+μ̇uβ.Now, to guarantee convergence of bothe1 and e2 to zero, a composite Lyapunov function Vc is defined as follows:
(27)VC=V1+12e22.If the time derivative ofVC is negative definite, then according to Lyapunov stability criteria, both the errors e1 and e2 will converge to 0. In other words, it will ensure that x1 will converge to x1ref, so that our system can reach to MPP. Taking the time derivative of (27), we get
(28)V̇C=V̇1+e2ė2=−K1e12−e1e2C1μ+e2ė2,or
(29)V̇C=−K1e12+e2ė2−e1C1μ.ForV̇C to be negative definite, take
(30)ė2−e1C1μ=−K2e2,where K2 is a positive constant. So that the V̇C becomes
(31)V̇C=−K1e12−K2e22.Using (6), (26), and (30), we get
(32)−K2e2=x1Lμ−x3L+K12C1e1μ+K1e2−iPVμ+C1x¨1refμ+μ̇μβ−e1C1μ.Solving (32) for μ̇
(33)μ̇=μβ−K2e2−x1Lμ+x3L−K12C1e1μμβ−K1e2+iPVμ−C1x¨1refμ+e1C1μ,where 0<μ<1 and β≠0. Using μ obtained by integrating (33), V̇C becomes negative definite, proving the asymptotic stability of the system, which is evident from (31) as V̇C≤0. Moreover, the convergence of e1 to 0 or PV array input voltage to vPVR is also ensured.


## 5. Simulation and Results

The parameters of PV array that are used in this work are mentioned in Table1. Similarly, the parameters of controller and converter are mentioned in Table 2. Simulations of the proposed controller are performed in MATLAB/SIMULINK to verify its performance. The section is divided into four subsections. The first two subsections critically analyzes the performance of the proposed controller under sudden changes in temperature and irradiance. Whereas, the latter two compare the proposed controller with P&O and FLBC-based MPPT algorithms.Table 1
Parameters of PV array.
Parameter
Value
PV module per string
10
Parallel connected strings
1
Number of cells per module
72
Open circuit voltage
363
Short circuit current
7.84
Voltage at MPP
290
Current at MPP
7.35
Maximum power per module
213.15Table 2
Parameters of controller and converter.
Parameter
Value
K1
8
K2
26,000
Input capacitor,C1
39 uF
Inductor,L
7 mH
Output capacitor,C2
39 uF
Load resistor,R
10 ohms
Switching frequency,fs
100 KHz


### 5.1. Test under Varying Irradiance

To test the proposed controller in harsh environment, the initial irradiance is kept at 200 W/m2, which is abruptly changed to 600 W/m2 after 0.1 s. Similarly, after 0.2 s, it is changed to 1000 W/m2. The whole experiment is performed while keeping the temperature of PV module equal to 25°C. The regression plane successfully generates the tracking peak power voltage which is successfully tracked by the controller, as shown in Figure 4. Similarly, Figure 5 depicts the change in generated power by the system as a result of abrupt variation in irradiance. Again, the PV module reaches at maximum power within 0.002 seconds with almost negligible ripple.Figure 4
Tracking of PV module voltage.Figure 5
Generated power under varying irradiance.


### 5.2. Test under Varying Temperature

In this case, the initial temperature of the PV cell is first maintained at 25°C, which is then increased to 40°C after an interval of 0.1 s. Similarly, after 0.2 s, the temperature is sharply increased to 55°C. Throughout this experiment, the irradiance is kept 1000 W/m2, so that the system’s performance can be verified only under varying temperature condition. The proposed controller yet again successfully tracks the reference voltage, as shown in Figure 6. Similarly, the controller is robust enough to maximize the power by reaching MPP in less than 0.001 seconds. The generated power under varying temperature is shown in Figure 7.Figure 6
Tracking of PV module voltage.Figure 7
Generated power under varying temperature.


### 5.3. Comparison with P&O

Conventional P&O and the proposed controller are first compared under varying irradiance while keeping the temperature constant and then under varying temperature while keeping the irradiance constant. The conditions of both the tests are kept same as before in the previous respective experiments. The proposed controller clearly outperforms the P&O algorithm. Here, in Figure8, the generated power under varying irradiance is shown. The proposed controller is not only robust, but the ripples are also negligible. The efficiency of the system is greatly enhanced when the proposed controller is used. The power generated under varying temperature conditions, shown in Figure 9, also verifies the abovementioned results. The P&O algorithm also takes considerably much more time to reach the MPP when initially the conditions were kept constant.Figure 8
Power comparison under varying irradiance.Figure 9
Power comparison under varying temperature.


### 5.4. Comparison with FLBC

Once again, the same two tests were performed to study the comparison between backstepping and fuzzy logic-based controller, except for one change. Since both the controllers showed very rapid response to variations, the time between the successive variations was reduced 10 times. So the changes in temperature and irradiance are introduced after every 0.01 s. The comparison of generated power under varying irradiance is shown in Figure10, and the comparison under temperature variation is shown in Figure 11. The results that are obtained by using backstepping controller are free of ripples and overshoot, but with FLBS, both of them are easily visible. To compare the two techniques further, a comparison between the voltage tracking of the two controllers under varying temperature is shown in Figure 12. Although both the controllers successfully track the reference, but still the FLBC displays large ripples in the voltage waveform along with an overshoot. If we take into account the computational complexity and the results unveiled in this document, we can easily state that the proposed backstepping controller successfully outperforms the FLBC-based MPPT.Figure 10
Power comparison under varying irradiance.Figure 11
Power comparison under varying temperature.Figure 12
vPVR tracking, backstepping versus FLBC.


## 5.1. Test under Varying Irradiance

To test the proposed controller in harsh environment, the initial irradiance is kept at 200 W/m2, which is abruptly changed to 600 W/m2 after 0.1 s. Similarly, after 0.2 s, it is changed to 1000 W/m2. The whole experiment is performed while keeping the temperature of PV module equal to 25°C. The regression plane successfully generates the tracking peak power voltage which is successfully tracked by the controller, as shown in Figure 4. Similarly, Figure 5 depicts the change in generated power by the system as a result of abrupt variation in irradiance. Again, the PV module reaches at maximum power within 0.002 seconds with almost negligible ripple.Figure 4
Tracking of PV module voltage.Figure 5
Generated power under varying irradiance.


## 5.2. Test under Varying Temperature

In this case, the initial temperature of the PV cell is first maintained at 25°C, which is then increased to 40°C after an interval of 0.1 s. Similarly, after 0.2 s, the temperature is sharply increased to 55°C. Throughout this experiment, the irradiance is kept 1000 W/m2, so that the system’s performance can be verified only under varying temperature condition. The proposed controller yet again successfully tracks the reference voltage, as shown in Figure 6. Similarly, the controller is robust enough to maximize the power by reaching MPP in less than 0.001 seconds. The generated power under varying temperature is shown in Figure 7.Figure 6
Tracking of PV module voltage.Figure 7
Generated power under varying temperature.


## 5.3. Comparison with P&O

Conventional P&O and the proposed controller are first compared under varying irradiance while keeping the temperature constant and then under varying temperature while keeping the irradiance constant. The conditions of both the tests are kept same as before in the previous respective experiments. The proposed controller clearly outperforms the P&O algorithm. Here, in Figure8, the generated power under varying irradiance is shown. The proposed controller is not only robust, but the ripples are also negligible. The efficiency of the system is greatly enhanced when the proposed controller is used. The power generated under varying temperature conditions, shown in Figure 9, also verifies the abovementioned results. The P&O algorithm also takes considerably much more time to reach the MPP when initially the conditions were kept constant.Figure 8
Power comparison under varying irradiance.Figure 9
Power comparison under varying temperature.


## 5.4. Comparison with FLBC

Once again, the same two tests were performed to study the comparison between backstepping and fuzzy logic-based controller, except for one change. Since both the controllers showed very rapid response to variations, the time between the successive variations was reduced 10 times. So the changes in temperature and irradiance are introduced after every 0.01 s. The comparison of generated power under varying irradiance is shown in Figure10, and the comparison under temperature variation is shown in Figure 11. The results that are obtained by using backstepping controller are free of ripples and overshoot, but with FLBS, both of them are easily visible. To compare the two techniques further, a comparison between the voltage tracking of the two controllers under varying temperature is shown in Figure 12. Although both the controllers successfully track the reference, but still the FLBC displays large ripples in the voltage waveform along with an overshoot. If we take into account the computational complexity and the results unveiled in this document, we can easily state that the proposed backstepping controller successfully outperforms the FLBC-based MPPT.Figure 10
Power comparison under varying irradiance.Figure 11
Power comparison under varying temperature.Figure 12
vPVR tracking, backstepping versus FLBC.


## 6. Comparison between Analyzed Techniques

All the techniques analyzed in the previous section vary the output voltage of PV array by varying the duty cycle of the converter. Hence, the PV array output voltage waveforms obtained using all the techniques are compared and the results are presented in Table3. The results are compared on the basis of rise time (RT), settling time (ST) (2% and 5% criteria), steady-state error (SSE), and overshoot and ripples in the output voltage of PV array, measured in voltage from peak to peak. Both P&O and FLBC show large oscillations about the reference, so their output voltage never reached within 2% of the steady-state value. Their value is shown as not applicable (NA) in Table 3.Table 3
Comparison.
Method
RT (ms)
ST 5% criteria (ms)
ST 2% criteria (ms)
SSE (%)
Overshoot (V)
Ripples (V)
Backstepping
1.4
1.6
1.81
0.16
0.6
0.9
P&O
1.3
59
NA
0.3
70
8.9
FLBC
1.3
1.9
NA
0.29
12.8
9Both the backstepping-based control and FLBC with regression plane require three sensors in total; one voltage sensor, one temperature sensor, and one sensor to measure irradiance. However, P&O algorithm requires a voltage and a current sensor to measure PV array output voltage and current for its operation. The regression plane, used in the proposed technique and FLBC, requires regular maintenance to accurately generate the reference. FLBC is also computationally complex and can cause unwanted delays in MPPT, which will result in wastage of useful energy. However, P&O is the simplest of all. But when we analyze the data presented in Table3, the superiority of the proposed technique becomes evident. Robustness of controller along with negligible steady-state error validates its exceptional performance. Similarly, least overshoot and ripples have been recorded for backstepping-based approach. Consequently, electrical components with small sizes, such as inductor, capacitor, switches, and diodes, can be selected, when used with the proposed controller, which will increase the efficiency of the overall system.


## 7. Conclusion

In this paper, nonlinear backstepping controller is proposed to be used for MPPT using buck converter. To extract maximum power, the duty cycle of buck converter is controlled to track the reference generated by the regression plane using the proposed controller. The performance of the proposed controller outclassed the conventional P&O and FLBC and it also proves the global asymptotic stability using Lyapunov stability criteria, whereas the previous two techniques are unable to do so. Regression plane does require some maintenance, because in real world, the PV arrays are subjected to wear and tear. The work can be further extended by successfully implementing the proposed converter in experimental setup. Similarly, robustness of bioinspired algorithms can be improved to generate the reference voltage swiftly and it should replace the regression plane.



---

*Source: 6979723-2018-04-04.xml*