1 Introduction

With the social development of 21 century, the development of all kind science and technology is very rapid, and limited resources on earth is shrinking every day (Yaai et al. 2014). Solar energy, relying on clean and pollution-free, is widely distributed and inexhaustible, and has become an important supplement to the energy system (Abualigah et al. 2018). Photovoltaic cells are important part of solar power system. However, photovoltaic cells are expensive and their output characteristics vary greatly with the environment (Jian 2016). In order to save costs as much as possible, it is crucial to improve utilization rate (Abualigah and Hanandeh 2015). The common methods to improve the utilization rate consist of using MPPT algorithm, improving photovoltaic material efficiency, optimizing the structure of the integration and configuration (Song et al. 2015; Abualigah and Khader 2017). Using MPPT control algorithm is the most economical way. In order to maximize the energy utilization rate, MPPT has been an essential part of photovoltaic power generation systems (AIHC 2018).

Literature (Rong and Liu 2017) adopts constant voltage method to track MPP. The advantages of this method are fast tracking speed, low control cost, simple algorithm structure and easy implementation. No oscillation will occur after tracking to MPP, and the steady-state curve is relatively stable. But the disadvantages are that the tracking MPP value is small, the error is large and the control accuracy is poor. Literature Zhou and Chen (2015) adopts a perturbation observation method, which is self-optimizing process and the algorithm is simple and easy implementation. However, in practical application, if the step size is selected improperly, oscillation would occur in the MPP, and if the external light intensity changes greatly, it will even lead to misjudgment. In literature (Liu et al. 2017), an incremental conductance method is adopted, which has good convergence effect near the MPP. But the step size is a fixed increment, which may lead to oscillation in the process of optimization, and the tracking time is long, reducing the work efficiency of photovoltaic cells. The particle swarm optimization method proposed in literature (Zhao 2014; Han et al. 2016) has stable convergence near MPP and small oscillation. But it needs multiple iterations, so its long convergence time leads to poor performance. Literature Rong et al. (2014) proposed a variable step size algorithm based on photovoltaic cell power-voltage differential (dP/dU). However, the dynamic response speed of the method will be greatly reduced when the light intensity changes drastically. Literature Haifeng et al. (2014) proposed a variable step size weak oscillation method, which improved the perturbation method to improve accuracy and eliminate system oscillation, but the two-step step reduced the system tracking speed.

For the fixed step INC method, perturbation step is larger and tracking speed is faster, but there are more oscillations in steady state and the power loss is larger. The small disturbance step size can improve the steady accuracy, but it causes slower tracking speed. This paper, in order to improve tracking speed and steady state tracking precision, puts forward the improved INC method. In this method, the PU characteristic curve is divided into three sections: non-MPP sections, MPP-like section and MPP sections. In the non-MPP section, the constant voltage method is adopted to reduce the tracking time. In the MPP-like section, the incremental conductance method is adopted and its step size is improved, which effectively reduces the tracking time. In MPP section, particle swarm algorithm is adopted to improve tracking accuracy. In this paper, the MPPT simulation model is built in Matlab/Simulink, and the MPPT algorithm is packaged into a module form. The common constant voltage method, the incremental conductance method and the method proposed in this paper are simulated and analyzed. The simulation and experiment verify that the method is feasible. The technical route of this paper is as follows (Fig. 1):

Fig. 1
figure 1

General procedures of the proposed method

2 Photovoltaic cell mathematical model and characteristics

2.1 Photovoltaic cell equivalent circuit

Photovoltaic cells are made using the principle of photovoltaic volts. The PN junction is the core of its working principle. The external characteristic model of each photovoltaic cell can be regarded as a parallel circuit of a constant current source and a forward diode. Photovoltaic cell equivalent circuit is as follows:According to Fig. 2, photovoltaic cell output characteristics are as follows (Zhu et al. 2016):

$$ \left\{ {\begin{array}{*{20}l} {I = I_{\text{ph}} - I_{\text{d}} - I_{\text{sh}} } \hfill \\ {I_{\text{d}} = I_{0} \left[ {\exp \left( {\frac{{q(U + IR_{\text{s}} )}}{AkT}} \right) - 1} \right]} \hfill \\ {I_{\text{sh}} = \frac{{U + IR_{\text{s}} }}{{R_{\text{sh}} }}} \hfill \\ \end{array} } \right. $$
(1)

where U is the photovoltaic cell output voltage; I is its output current; Iph is photoelectric current; Id is the diode reverse saturation current; q is the electron charge; K is boltzmann constant; T is the absolute working temperature value of photovoltaic cell; A is the diode ideal factor; Rs and Rsh are series and parallel resistance respectively.

Fig. 2
figure 2

PV cell equivalent circuit

2.2 Photovoltaic cell modeling and output characteristics

Since most of the above parameters are related to the light intensity and the battery temperature, and the light intensity and temperature are randomly changed, which increases the modeling difficulty of photovoltaic cells and reduces the simulation speed and it is difficult to determine the specific values of these parameters over a period of time. Therefore, the design of photovoltaic cells is generally not used in engineering. So on this issue, the article uses a simple mathematical model to derive the output characteristics of the photovoltaic cell. In this model, only certain parameters that are easily measured can be known, and a precise mathematical model can be established, and the model is applied very much and it also has wide range and good flexibility. Literature Mei et al. (2011) proposes an engineering mathematical model, which only needs short-circuit current Isc, open-circuit voltage Uoc, voltage Um and current Im at MPP. In this case, the ui equation is (Hu et al. 2011):

$$ \left\{ {\begin{array}{*{20}l} {I = I_{\text{sc}} \left\{ {1 - C_{1} \left[ {\exp \left( {\frac{U}{{C_{2} U_{\text{oc}} }}} \right) - 1} \right]} \right\}} \hfill \\ {C_{1} = \left( {1 - \frac{{I_{m} }}{{I_{\text{sc}} }}} \right)\exp \left( { - \frac{{U_{m} }}{{C_{2} U_{\text{oc}} }}} \right)} \hfill \\ {C_{2} = \left( {\frac{{U_{m} }}{{U_{\text{oc}} }} - 1} \right)\left[ {\ln \left( {1 - \frac{{I_{m} }}{{I_{\text{sc}} }}} \right)} \right]^{ - 1} } \hfill \\ \end{array} } \right. $$
(2)

The four parameters in Eq. (2) are provided by the manufacturer. It is important to note, Um and Im are the standard data at normal temperature (25 °C) and illumination (1000 W/m2). In the practical application of photovoltaic power generation system, the output characteristics of photovoltaic cells change with the light intensity and ambient temperature in a day, so Um, Im, Uoc, Isc will also change. By giving an appropriate compensation coefficient and randomly collecting the light intensity and battery temperature at a certain time, the relationship between the above four parameters as a function of any light intensity S and battery temperature T can be obtained as follows (Zheng et al. 2017):

$$ \left\{ {\begin{array}{*{20}l} {I_{\text{sc}}^{'} = I_{\text{sc}} (1 + a\Delta t)\frac{S}{{S_{\text{ref}} }}} \hfill \\ {I_{m}^{'} = I_{m} (1 + a\Delta t)\frac{S}{{S_{\text{ref}} }}} \hfill \\ {U_{\text{oc}}^{'} = U_{\text{oc}} (1 - c\Delta t)(1 + b\Delta S)} \hfill \\ {U_{m}^{'} = U_{m} (1 - c\Delta t)(1 + b\Delta S)} \hfill \\ \end{array} } \right. $$
(3)

In this way, the corresponding parameters will be automatically adjusted as the environment changes, increasing the authenticity and reliability of simulation. In Eq. (3), a = 0.0025 °C, b = 0.0005 W/m2, c = 0.00288 °C. \( \Delta t \) is the actual temperature minus the value of 25 °C, and \( \Delta S \) is the ratio of the actual light intensity to 1000 W/m2 and then − 1.

The engineering mathematical model obtained by the above method does not need complex variable parameters in the physical model, and only needs to know voltage and current of MPP, open-circuit voltage, short-circuit current and arbitrary light intensity, battery temperature to fit the mathematical model of the photovoltaic cell. And then can model and simulate its UI and UP characteristic curves.

When the ambient temperature is fixed at 25 °C, the light intensity is 1000 W/m2, 800 W/m2, 600 W/m2, the output IU, PU characteristic curve of photovoltaic cell are shown in Fig. 2.

From the output UI characteristic curve in Fig. 3, when the fixed battery temperature is always equal to the rated value, the current and power output by the photovoltaic cell will increase as the light intensity gradually increases. At the same temperature, the photovoltaic characteristic curve increases with the increase of illumination intensity. When the maximum power point shifts upward, the short-circuit current increases with the increase of illumination intensity, and the open-circuit voltage Uoc increases slightly with the increase of illumination intensity. Under the same light intensity, the photovoltaic characteristic curve increases with the increase of temperature. When the maximum power point shifts downward, the open-circuit voltage Uoc shifts to the left, and the temperature has a significant influence on the open-circuit voltage. However, the characteristic curve has little change in temperature in the linear region of the constant current source. As the temperature increases, the short-circuit current Isc only increases slightly. It also can be seen from the several UP characteristic curves in Fig. 3 that the voltage corresponding to the maximum power point of the photovoltaic cell output is basically fixed at a value, and the left and right deviation is small. This also shows that when the temperature is constant, the change of illumination intensity has little effect on the output voltage corresponding to the maximum power point, which also provides a basis for maximum power point tracking. This is why the 0.8 times voltage method can be used.

Fig. 3
figure 3

Output characteristics of PV cell under constant temperatures and different light intensities

The efficiency of the boost converter BOOST and the buck converter BUCK (buck converter) in the DC/DC converter is the highest (Xiaogang 2018). The BUCK is a buck converter, which is not easy to be connected to the grid and must always work. In the intermittent state, a capacitor must be used, the capacitor is in a long-term charge and discharge state, and the reliability of the entire circuit is lowered. The BOOST converter is a boost converter that can operate in a continuous mode of inductor current. The ripple current of the inductor L in the circuit is small. Therefore, the BOOST circuit avoids various problems caused by the capacitor. So this article uses BOOST converter to realize the function of MPPT. By changing the duty cycle d of the converter, the resistance value of the photovoltaic panel side can be adjusted, so that the photovoltaic cell load line is continuously close to the optimal load line to achieve maximum power point tracking.

3 Improved MPPT strategy

3.1 Principle of MPPT

The PU characteristic curve of photovoltaic cell at 25 °C and 1000 W/m2 is shown in Fig. 4, where point M is the maximum power point, and the current and voltage at point M are respectively recorded as Im, Um.

Fig. 4
figure 4

PU characteristic curve

The curve in Fig. 3b shows that when the light intensity changes, the MPP voltage changes very small, which is basically at 0.8 times of the Uoc. Analysising Fig. 4a, b and e, f sections based on this, these two far away from the Um. Along with the change of voltage, power change is large. The two paragraphs are non-MPP section, using the constant voltage method skip this section to improve the tracking speed. B–C and D–E sections are MPP-like section. In this part, INC method is used to further improve tracking speed and accuracy. C–D section is MPP section. In C–D section, the voltage range is smaller, and the traditional INC method is easy to produce oscillation in this segment, reducing the accuracy of MPP. Therefore, the PSO algorithm is used in this segment to accelerate convergence, reduce system oscillation, and make tracking more accurate.

3.2 Improvement of INC method

The INC method is the most widely used method in MPP tracking at present. Its principle is to determine output voltage change by judging the ratio of power and voltage variation (Sun et al. 2015). The output P = UI, and at MPP, dP/dU = 0, which means dP/dU = I + U (dI/dU) = 0. When dP/dU > 0, U < Um, the output voltage should be improved. When dP/dU < 0, U > Um, the output voltage should be reduced.

In this paper, we use INC method to track MPP in B–C and D–E segments. The traditional INC method is constant step size, which does not take into account the difference in slope between B-C and D-E segments. In this paper, the difference in dP/dU is fully taken into account and its step size is improved. According to different dU, the INC method can be used in following situations:

(1) dU = 0 and dI = 0

In this case, dP/dU = 0, so at MPP.

(2) dU = 0 but dI ≠ 0

If dU = 0, then Uk = Um, only change the current value to make Ik = Im. Introducing step size scaling factor α, the disturbance step size is αdI, that is:

$$ I(k + 1) = I(k) + \alpha dI $$
(4)

(3) dU ≠ 0

As for the segment of Fig. 4b, c, dP/dU > 0 and dI has a small change, so it can be approximately zero, then:

$$ \left\{ {\begin{array}{*{20}l} {{\text{d}}P/{\text{d}}U = I + U\frac{{{\text{d}}I}}{{{\text{d}}U}} \approx I} \hfill \\ {U(k + 1) = U(k) + \beta \left| {\frac{dP}{dU}} \right| \approx U\left( k \right) + \beta I} \hfill \\ \end{array} } \right. $$
(5)

At this time, the dP/dU value in this section is small. In order to speed up its convergence speed, the step size scaling factor β is introduced, then the disturbed step size β|dP/dU|, only by judging the current I and the setting value of ε can determine whether it is in the C–D section.

For the segment of Fig. 4d, e, when dP/dU < 0, the step size scaling factorγis introduced and the value of γ is less than β, then the disturbed step size is γ|dP/dU|, that is:

$$ U(k + 1) = U(k) - \gamma \left| {\frac{{{\text{d}}P}}{{{\text{d}}U}}} \right| $$
(6)

Compared with the value of ε,it only enters the C–D section when dP/dU is smaller than ε.

3.3 Particle swarm optimization

In C–D section, the POS algorithm is employed, which is put forward by Dr Kennedy and Eberhart watching birds migrate foraging. Mathematical description of the algorithm like this, supposing you have random distribution of Np particle in n dimension, particle position is xi, speed is vi, the objective function is f(xi), Pbesti is its optimal location, Gbesti is the global optimal location and maximum value of the group. After communication iterations of k times, particle swarm optimization algorithm finds the maximum value (Tang et al. 2017; Dabra et al. 2017). The update iteration rules of PSO algorithm are as follows.

$$ \left\{ {\begin{array}{*{20}l} {v_{\text{i}}^{k + 1} = wv_{\text{i}}^{k} + c_{1} r_{1} (P_{\text{besti}} - x_{\text{i}}^{k} ) + c_{2} r_{2} (G_{\text{best}} - x_{\text{i}}^{k} )} \hfill \\ {x_{\text{i}}^{k + 1} = x_{\text{i}}^{k} + v_{\text{i}}^{k + 1} } \hfill \\ {P_{\text{besti}} = \left\{ {\begin{array}{*{20}c} {x_{\text{i}} } & { \, f(x_{\text{i}} ) \ge f(P_{\text{besti}} )} \\ {P_{\text{besti}} } & { \, f(x_{\text{i}} ) \le f(P_{\text{besti}} )} \\ \end{array} } \right.} \hfill \\ {G_{\text{best}} = \hbox{max} \left\{ {f(P_{\text{best1}} ),f(P_{\text{best2}} ), \ldots ,f(P_{{{\text{bestN}}_{\text{p}} }} )} \right\}} \hfill \\ \end{array} } \right. $$
(7)

Formula (7) is the implementation rule of PSO algorithm. w is the particle inertia weight coefficient, c1 and c2 are learning factors, r1 and r2 are random numbers between 0 and 1, f is the objective function, k is the number of iterations, and Np is the total number of particles. Its algorithm is simple and easy to implement. It needs less input parameters and has fast convergence and good stability.

The specific process is to initialize a group of particles in the C–D segment, including random position (U) and velocity (ΔU). The initial value of Pbesti and Gbesti are all equal to 0.8 times of Uoc, and calculate the fitness value (P) of each particle. For each particle, compare its fitness value with its best position Pbesti. If it is better, use it as the current best position Pbesti. Comparing each particle’s Pbesti with Gbest, if it is better, setting Gbest equal to Pbesti. The particle velocity and position are adjusted according to formula (7), and the whole process is continued until the end condition is reached.

3.4 Algorithm flow chart

The flow chart of improved MPPT control strategy can be seen in Fig. 5. The sampled voltage is analyzed. If the voltage is between 0.7Uoc and 0.9Uoc, the improved incremental conductance method is used to track MPP. Otherwise, Using constant voltage method adjusts voltage to this range. In the process of tracking MPP by the improved incremental conductance method, if |dP/dU| < ε or I < ε, the PSO algorithm is further used to improve the stability. Otherwise, the improved INC method is still used. In the PSO algorithm, the sampling power is calculated according to the set initial conditions and regarded as the fitness of the individual population. The MPP is found by comparing the fitness value and continuously changing and adjusting according to formula (7). When the iteration number reaches the set value, the entire control process is completed.

Fig. 5
figure 5

Flow chart of the method in this paper

4 Simulation

The simulation model of the strategy is built on MATLAB/Simulink. The photovoltaic system structure used in this paper mainly includes photovoltaic panels, Boost circuits, MPPT controllers, and PWM drive circuits. Setting at the rated conditions (temperature 25 °C, light intensity 1000 W/m2), Uoc is 21.7 V, Isc is 1.01 A, Um is 17.6 V, and Im is 0.91 A.

In Fig. 6 temperature is 25 °C, the light intensity is reduced from 1000 to 800 W/m2 then to 600 W/m2. The simulation results of photovoltaic cells are as follows.

Fig. 6
figure 6

Output power under different light intensities

As can be seen from the comparison between the improved MPPT method and the constant voltage method that, under standard working conditions, the steady state value of the constant voltage method is 16 W, while that of the method proposed in this paper is 16.15 w, an increase of 1%. When the change of light intensity is greater, the steady state difference is more obvious. When the light intensity is 600 W/m2, the difference reaches 4%. In addition, when the light intensity changes, the method in this paper needs 0.001 s, and the constant voltage method needs 0.005 s to return to the steady state, which improves the recovery capacity by 80%. The INC algorithm needs 0.045 s to reach the steady state, while the method in this paper only needs 0.03 s, which improves the tracking time by 33%. In addition, the steady state value of the method proposed in this paper is relatively high due to the oscillation of the INC algorithm under various light intensity conditions.

The intensity of light in Fig. 7 is 1000 W/m2. The temperature is different from 10 to 25 to 40 °C again The simulation results of photovoltaic cells are as follows.

Fig. 7
figure 7

Output power under different temprature

You can see that when the temperature changes, the steady-state value of the constant voltage method changes greatly. When the temperature is 40 °C, the tracking MPP value of the method in this paper increases by 9%, and tends to increase with the temperature. Compared with INC algorithm, the time of initial tracking to MPP is increased by 33%, and overshoot and recovery time are improved when temperature changes.

Due to the particle swarm algorithm used in the tracking process, the simulation time has increased, but in practical applications, the real-time performance of the proposed method can be obtained with the help of a high-performance microprocessor, and the overall tracking time is reduced compared to the traditional incremental conductivity method.

5 Conclusion

On the basis of analyzing the advantages and disadvantages of various MPPT methods, aiming at the problems of slow tracking speed and poor accuracy of traditional conductance incremental method, this paper proposed an improved MPPT strategy based on INC method. The following conclusions are drawn through theoretical analysis and simulation verification:

  1. (1)

    Compared with the constant voltage method, the accuracy can be improved by more than 4% when the temperature or light intensity is changed, while maintaining the tracking speed.

  2. (2)

    Compared with the traditional incremental conductivity method, the method can reduce the tracking time by 33% and improve the tracking accuracy by 1% when the light intensity or temperature changes.

It should be pointed out that the proposed method is suitable for single peak output characteristic curve. On this basis, follow-up research will continue to improve MPPT algorithm, so that it can be applied to large-scale photovoltaic power generation system photovoltaic arrays, local shadows, uneven lighting and other complex situations.