1 Introduction

In the recent years Photovoltaic (PV) energy has gained worldwide attention in the electricity market. Since it is clean, present in huge quantity, low cost and environmental friendly. How to extract the maximum power from the PV systems under dynamic changes in environmental conditions such as irradiance and temperature is still a challenging task [1, 2]. To address this problem, in the past 20 years many maximum power point tracking (MPPT)methods have been discussed in various literatures such as perturb and observe (P&O) method, Delta P&O, Adaptive step size perturb and observe (ADPO)method, Incremental conductance method (INC), modified INC, variable step size INC, Hill climbing (HC) method, modified adaptive hill climbing method (MAHC), fuzzy logic controller method (FLC), artificial neural network method (ANN), parabolic prediction method and other modern methods.The various MPPT methods are grouped into three categories. First group includes P&O [1,2,3], HC, and INC [4, 5] MPPT method. They are widely used due to low cost and ease of implementation. A fixed step size is used for both the transient and the steady-state stages, thus, it is becoming tedious to make their best use in steady-state and under the dynamically changing environmental conditions such as change in irradiance level and temperature simultaneously. They are easily confused around MPP which results in the deviation of the operating point from MPP. This fluctuating behavior also adds to the power losses. The second group includes modified adaptive hill climbing (MAHC) [6] variable-step-size incremental conductance (VSSINC) [7], Delta P&O [8] MPPT methods. These MPPT methods uses a variable step size for transient and the steady-state. These MPPT methods have small steady state oscillation and faster dynamic response as compared with the first group of MPPT methods. The third group includes the Beta method [9], zero-oscillation adaptive-step size P&O(ZA-P&O) [10] and modified INC (modified INC) MPPT methods adjusted at both variable and a fixed step size for the transient and the steady-state conditions respectively [11]. In [12] An adaptive scale factor based MPPT algorithm uses maximum value of a scaling factor to iteratively reduce oscillations at the output. However, under low irradiance the use of maximum value of scaling factor can affect the performance of the algorithm. In [13] First and second order derivatives of the P–V curve are used to obtain the scaling parameter. However, it is difficult to obtain scaling factor for wide range of irradiance. In [14] Approximate location of MPP is determined using circular analogy on the P–V characteristics. However, the algorithm is complex and hence cannot be easily implemented in low cost microcontrollers. In [15] particle swarm optimization is used to find MPP with high accuracy. However, this technique is complex, requires relatively large memory and powerful microcontrollers which also increases cost. In [16] k factor approach is used for MPPT execution.The MPPT method reaches the MPP faster with less oscillations using the constant k with value 0.8.The results obtained indicate a decrease in tracking time and steady-state power oscillations when compared with P&O and INC technique. Among the various proposed MPPT methods perturb and observe method is most widely used. Since it is low cost, easy to implement and it requires measurement of only few parameters. However, it has consistent oscillations around the maximum power point (MPP) due to perturbations which results in fraction of loss in power [17]. In order to address this problem an improved perturb and observe algorithm is presented in this manuscript. The proposed method uses reference cell for measuring change in current when the solar irradiance changes. Reference cell is connected at the edge of PV panel. Once the proposed P&O MPPT tracks MPP it stops tracking and monitors change in current in reference cell. If it detects change in current in reference cell only then it tracks MPP otherwise it stops tracking. The proposed algorithm is different from the conventional MPPT techniques in the sense in conventional MPPT techniques the maximum power point keeps on changing even if the irradiance remains the same. However, in our proposed techniques the same does not change unless the irradiance changes. Here once the maximum power point is reached, the tracking is stopped and reference cell current is monitored. Since both the main PV cell and the reference cell are kept in the same environment therefore any change of irradiance in pilot cell will be same for the main cell. Thus the change in irradiance will result in the change in current generated from pilot cell. This change in pilot cell is sensed by the microcontroller and the execution of the algorithm for maximum power tracking is resumed. The algorithm is developed in such way wherein the microcontroller senses the current of the pilot cell and accordingly disturbs the execution of the main algorithm.

Further proposed MPPT algorithm offers the advantage over the recently developed MPPT algorithms in terms of cost and complexity. A standard 395 W, 24 V solar panel cost is 260 $ where as a reference cell costs only 1$ which is very small amount compared to main solar panel and only one reference cell can be used in a single MPPT controller which can be connected to large number of solar panels or a small grid. The proposed algorithm is comprehensively evaluated in terms of the available power, output voltage ripple and dynamic response through experiments without increasing the hardware requirement. The results show that the proposed algorithm exhibits zero oscillations in the steady state, saves the power loss and output voltage ripples are reduced significantly as compared to conventional P&O method. The remaining of this paper is organized as follows: Sect. 2 starts with an overview PV system along with MPPT controller. Then, the conventional perturb and observe method along with experimental results is discussed in Sect. 3. In Sect. 4, the proposed MPPT algorithm is explained and experimental results carried out demonstrate its improved performance as compared to conventional P&O MPPT method. In Sect. 5 hardware implementation of the proposed MPPT method is discussed. Finally, Sect. 6 closes this manuscript.

2 An overview PV system with MPPT controller

Figure 1 depicts PV system with the MPPT algorithm. It includes a solar panel, DC-DC buck converter, resistive load (RL), and MPPT controller. Solar module RPM02 is used with its electrical parameters shown in Table 1. Main specifications for the DC-DC buck converter include, Schottky diode SR360 3A, Cout = 470 uF, L = 300 mH, and switching frequency (MOSFET) = 31.37255 kHz. Rigol DL3021A is used as the DC variable load. A comparison of conventional P&O MPPT method with proposed MPPT method is carried out under constant load resistance of 15 ohms.

Fig. 1
figure 1

Block diagram of PV system along with MPPT controller

Table 1 Specification of solar module RPM0210W measured at standard test conditions. Irradiance: 1000 W/m2, Air mass (AM):1.5, Temperature: 25 °C

3 Conventional perturb and observe MPPT algorithm

The conventional Perturb & Observe Method is a very popular MPPT method due to its, low cost, simple implementation and only few parameters are required for measurement. The location of MPP is found by perturbing the voltage of panel as the duty cycle of the DC-DC converter. The main idea of the algorithm is to periodically perturb the duty cycle (D) of the DC-DC converter and measure the corresponding current and voltage of the solar panel to measure the power. The direction of perturbation is decided depending upon the difference of the present & previous values of voltage and power [18, 19] (Fig. 2). The conventional Perturb & Observer method was implemented on the Hardware. The experimental results in the Fig. 3 shows that the conventional P&O MPPT algorithm fluctuates approximately 0.3 W around the MPP at the steady state. The perturbations of the operating points are continuously repeated even though the MPP has been tracked. This leads to a loss in power and unwanted harmonics at the output. From the Fig. 4 it is clear that output voltage ripple is 1.49 V. in conventional P&O MPPT algorithm.

Fig. 2
figure 2

Flow chart of the conventional Perturb & Observer method

Fig. 3
figure 3

Output Power of conventional P&O algorithm

Fig. 4
figure 4

Output voltage ripple of conventional P&O MPPT

Figure 5 illustrates upon testing P&O algorithm under dynamic changes in irradiance level the conventional P&O algorithm is unable to track MPP point correctly.

Fig. 5
figure 5

Output Power of conventional P&O algorithm at steady state under dynamic changes in irradiance level

4 Proposed MPPT algorithm

To address this issue of steady state oscillates around the MPP in conventional P&O method. An improved P&O MPPT method is proposed. The principle idea of the proposed method is that the perturbations of the operating points are stopped once the MPP point is reached. Figure 6, Illustrates the tracking process of the proposed method. It starts by initializing the value of variable X that stores the information about the number of perturbations. In order to find MPP. The ATMEGA-328 microcontroller maps duty ratio zero (0) to number zero (0) and duty ratio one (1) to 255. In the proposed method the step size is chosen as three (3). Therefore, for worst case scenario of duty ratio 255 total number of perturbations are 255/3 = 85. In the proposed method total number of perturbations are chosen 100. The value of X is automatically decremented by one for every perturbation until it reaches to zero as shown in the Fig. 6. Once the X becomes zero branch (B) is implemented and then change in current is sensed from the reference cell. Here two conditions can arise one is that solar irradiance does not change therefore no change in current occurs in reference cell second condition arises when solar irradiance changes which leads to corresponding change in current in reference cell. When first condition is met branch (A) is implemented. Once the change in current is detected branch (D) is implemented and the value of X is reset to 100.Thus the proposed method starts tracking only upon change in current in the reference cell hence offers the advantage in terms of zero oscillations around the (MPP) and power loss which occurs due to consistent oscillations is saved and 0.24 W additional power is delivered by proposed method (Fig. 7).

Fig. 6
figure 6

Flow chart of proposed MPPT algorithm

Fig. 7
figure 7

Experimental setup of the PV system with MPPT

5 Hardware implementation zero oscillations perturb and observe MPPT

The proposed method is implemented on hardware. The buck converter is designed, formed, and tested having switching frequency (MOSFET) of 31.37255 kHz and input voltage of 16.4 V supplied by solar module RPM02 at constant load of 15 ohms connected from DL3021A150V/40A 200 W. The output voltage is 7.6 V and output current of 0.529A. The output observations are visualized from the KEYSIGHT InfinitVision DSOX3014T of 100 MHz oscilloscope. The output current from the reference cell is converted into voltage by current sensor ACS712 5A before it is given to Audino Uno, set at 31 kHz frequency. The algorithm is designed in such a way that once the algorithm tracks MPP it is stopped there and whenever the current from reference cell changes only then the proposed algorithm starts tracking. Therefore, oscillations are reduced to zero and power loss is also saved. In the experiment the solar cells were kept outside and the experiment was carried out in changing environment and while taking the picture of experimental setup pilot cell and main solar cell was put together along with rest of experimental setup inside the lab. The specification of the equipment’s and components used are given in the Table 2 and Specification of reference cell AMV6V5W00794 is given in the Table 3 respectively. The advantage of the proposed method is that only single reference cell required to connect it to large string of solar panels.

Table 2 Specifications of the components used for experimental verification
Table 3 Specification of reference cell AMV 36-12 V 5 W measured at STC. Irradiance: 1000 W/m2, AM:1.5, Temperature: 25 °C

6 Experimental results and discussion

It is clear from the Fig. 8 that the proposed method completely eliminates the oscillations at the steady state. Besides this Figs. 4 and 9 shows that the proposed method also reduces the output voltage ripples from 1490 to 340 mV. Which is 1150 mV lower as compared to conventional P&O method. The proposed method delivers 0.24 W power more as compared to conventional method that can be confirmed when output power of the proposed method shown Fig. 3 is compared with output power of conventional P&O method shown in Fig. 8. The experimental results were carried out at the fixed step size of three and constant 15 ohms’ load resistance.

Fig. 8
figure 8

Output Power of proposed P&O algorithm at steady state

Fig. 9
figure 9

Output voltage ripple of proposed P&O MPPT

Table 4, illustrates the comparison results of the proposed P&O MPPT algorithm with conventional P&O MPPT algorithm in term of the oscillations at the steady state output power and minimization of output voltage ripple. The comparison results show that the performance of the proposed method is far superior as compared to conventional P&O MPPT method.

Table 4 Experimental comparison of conventional P&OMPPT with improved P&O MPPT at constant load resistance

7 Conclusion

This work has presented an improved perturb and observe MPPT algorithm, which is implemented on hardware. Experimental results demonstrate the improved performance of the proposed algorithm over conventional perturb and observe MPPT algorithm. For instance, experimental results show that the proposed P&O MPPT algorithm has zero oscillations around the MPP and power loss which occurs due to consistent oscillations is saved. the proposed method delivers 0.24 W power more as compared to conventional P&O MPPT method. The proposed approach also minimizes the output voltage ripple by 77.18% as compared to conventional P&O MPPT algorithm. There is further scope to improve the performance of the proposed algorithm under dynamically changing environmental conditions such as irradiance and temperature.