New Control Scheme for Solar Power Systems under Varying Solar Radiation and Partial Shading Conditions

: The traditional perturbation and observation (P&O) maximum power point tracking (MPPT) algorithm of a structure is simple and low-cost. However, the P&O algorithm is prone to divergence under solar radiation when the latter varies rapidly and the P&O algorithm cannot track the maximum power point (MPP) under partial shading conditions (PSCs). This study proposes an algorithm from the P&O algorithm combined with the solar radiation value detection scheme, where the solar radiation value detection is based on the solar photovoltaic (SPV) module equivalent conductance threshold control (CTC). While the proposed algorithm can immediately judge solar radiation, it also has suitable control strategies to achieve the high efﬁciency of MPPT especially for the rapid change in solar radiation and PSCs. In the actual test of the proposed algorithm and the P&O algorithm, the MPPT efﬁciency of the proposed algorithm could reach 99% under solar radiation, which varies rapidly, and under PSCs. However, in the P&O algorithm, the MPPT efﬁciency was 96% under solar radiation, which varies rapidly, while the MPPT efﬁciency was only 80% under PSCs. Furthermore, in verifying the experimental results, the proposed algorithm’s performance was higher than the P&O algorithm.


Introduction
On rainy or cloudy days, solar radiation is under 150 W/m 2 and the solar power generation (SPG) system output power is low [1]. The SPG system output energy is dependent on climatic elements (e.g., solar radiation and ambient temperature). Therefore, the maximum power point tracking (MPPT) controller can greatly improve the efficiency of the SPG system [2,3].
Numerous MPPT algorithms are available for the SPG system and have been extensively investigated [4][5][6][7][8][9][10][11][12][13][14][15][16][17][18][19][20][21][22][23]. The hill-climbing (HC) algorithm architecture is simple in that only two power points are compared and then MPPT is executed [4]. Meanwhile, the perturbation and observation (P&O) algorithm compares the relationship between voltage and power slope and then searches for the maximum power point (MPP) [5]. The incremental conductance (INC) method implements MPPT based on the relationship between the incremental conductance (dI/dV) and the conductance (I/V) [6]. The fuzzy logic algorithm is a computer-intelligent control based on fuzzy variables and fuzzy logic inferences [7]. The neural network algorithm is a mathematical model that imitates the structure and function of biological neural networks [8]. Further, the particle swarm optimization (PSO) algorithm is based on imitating the behavior of bird flocks and discovering the advantages of evolution in bird flocks [9]. The artificial bee colony (ABB) algorithm was developed by the bee foraging method [10] while the intelligent monkey king evolution

Perturbation and Observation Algorithm
The P&O algorithm is based on the SPV module P spv -V spv characteristic curve slope (dP spv /dV spv ). If the P&O algorithm actuating point is on the left-half plane (LHP) for the SPV module P spv -V spv characteristic curve, it means that the slope is positive. On the contrary, if the P&O algorithm actuating point is on the right-half plane (RHP) for the SPV module P spv -V spv characteristic curve, it indicates that the slope is negative. This P&O algorithm depends on the slope and further perturbs the duty cycle to track the MPP. However, this algorithm's actuating point oscillates near the MPP, causing low system efficiency. In addition, the SPV module under partial shading implies that this algorithm's actuating point could converge to the SPV module's local maximum power point (LMPP), resulting in power loss [24].

Proposed Algorithm
When solar radiation varies rapidly, the traditional P&O algorithm's actuating point is continuously perturbed and does not immediately catch the MPP, thereby causing low system efficiency. In order to solve this problem, the proposed CTC is integrated with the P&O algorithm. This proposed algorithm can estimate the actual solar radiation value and execute the MPPT, improving the system efficiency.
Moreover, solar radiation is stable as in Equation (1). This proposed algorithm is to keep a constant duty cycle and improve the perturbation problem. Notably, this greatly improves the MPPT efficiency of the P&O algorithm.
The proposed algorithm first executes the MPPT to track the MPP where the slope is 0, which will then be entered in the CTC mode. The illustration of the proposed algorithm control principle is as follows: (1) Figure 1 illustrates the I spv -V spv characteristic curves of the SPV module, which has been informed. When solar radiation G and temperature T change, so do the SPV module output voltage V spv and the current I spv (2). The important parameter, R spv , of Equation (2) changes based on G and T. Thus, R spv can reflect G and T changes and R spv of the SPV module is an important reference factor for the CTC.
Processes 2021, 9, x FOR PEER REVIEW 3 of 13 P&O algorithm. This proposed algorithm can estimate the actual solar radiation value and execute the MPPT, improving the system efficiency. Moreover, solar radiation is stable as in Equation (1). This proposed algorithm is to keep a constant duty cycle and improve the perturbation problem. Notably, this greatly improves the MPPT efficiency of the P&O algorithm. (1) The proposed algorithm first executes the MPPT to track the MPP where the slope is 0, which will then be entered in the CTC mode. The illustration of the proposed algorithm control principle is as follows: (1) Figure 1 illustrates the Ispv-Vspv characteristic curves of the SPV module, which has been informed. When solar radiation G and temperature T change, so do the SPV module output voltage Vspv and the current Ispv (2). The important parameter, Rspv, of Equation (2) changes based on G and T. Thus, Rspv can reflect G and T changes and Rspv of the SPV module is an important reference factor for the CTC.
(2) The SPV module (Everbright, model number Q025) was used during the experiment. Figure 1a shows the SPV module Ispv-Vspv characteristic curves of the T of 25 degrees and the G of 200, 400, 600, 800 and 1000 W/m 2 . Figure 1b shows the SPV module Ispv-Vspv characteristic curves of the G of 1000 W/m 2 and the T of 0, 25, 50 and 75 °C.
In this study, the proposed method (based on Figure 1a,b Ispv-Vspv characteristic curves) converted the relationship between Ispv and Rspv −1 through Microsoft Excel and presented it with trend lines. Hence, four trend lines were drawn (as in Figure 2) to illustrate the relationship between Ispv and Rspv −1 as follows: line A for the T of 0 °C and the G of 0-1000 W/m 2 , line B for the T of 25 °C and the G of 0-1000 W/m 2 , line C for the T of 50 °C and the G of 0-1000 W/m 2 and line D for the T of 75 °C and the G of 0-1000 W/m 2 . The mathematical model of the four trend lines could be approximated by the following quadratic equation, simplified as Equation (3).
Ispv is obtained by Equation (3) as follows: The SPV module (Everbright, model number Q025) was used during the experiment. Figure 1a shows the SPV module I spv -V spv characteristic curves of the T of 25 degrees and the G of 200, 400, 600, 800 and 1000 W/m 2 . Figure 1b shows the SPV module I spv -V spv characteristic curves of the G of 1000 W/m 2 and the T of 0, 25, 50 and 75 • C.
In this study, the proposed method (based on Figure 1a,b I spv -V spv characteristic curves) converted the relationship between I spv and R spv −1 through Microsoft Excel and presented it with trend lines. Hence, four trend lines were drawn (as in Figure 2) to illustrate the relationship between I spv and R spv −1 as follows: line A for the T of 0 • C and the G of 0-1000 W/m 2 , line B for the T of 25 • C and the G of 0-1000 W/m 2 , line C for the T of 50 • C and the G of 0-1000 W/m 2 and line D for the T of 75 • C and the G of 0-1000 W/m 2 . The mathematical model of the four trend lines could be approximated by the following quadratic equation, simplified as Equation (3).
Processes 2021, 9, 1359 4 of 12 In Figure 2, line A was drawn with Equation (3) where the parameters a, b and c are −0.0007, 0.1572 and −0.0005, respectively. Line B was drawn with the parameters a, b and c as 0.0002, 0.1197 and 0.00003, respectively. Line C was drawn with the parameters a, b and c as −0.0013, 0.1204 and −0.0012, respectively. Line D was drawn with the parameters a, b and c as −0.0001, 0.1112 and −0.0058, respectively. When the G and T change, the corresponding points of Rspv −1 and Ispv range from line A to line D, as shown in Figure 2. In this study, Rspv −1 = Pspv/Vspv 2 , according to Equation (4), to calculate Ispv,line (e.g., Ispv,lineA, Ispv,lineB, Ispv,lineC and Ispv,lineD). As shown in Figure 2, when Rspv −1 = 0.2 S, Ispv,lineA, Ispv,lineB, Ispv,lineC and Ispv,lineD are different. Although the four trend lines have the same Rspv −1 , a different T and G draw different trend lines and the calculated Ispv,line will be significantly different.
In this study, the proposed method, based on Figure 1a,b Ispv-Vspv characteristic curves, converted the relationship between Rspv −1 and the G through Microsoft Excel and presented it with trend lines. The four trend lines were drawn (as in Figure 3 The mathematical model of the four trend lines could be approximated by the following quadratic equation, simplified as Equation (5): In Figure   I spv is obtained by Equation (3) as follows: In Figure 2, line A was drawn with Equation (3) where the parameters a, b and c are −0.0007, 0.1572 and −0.0005, respectively. Line B was drawn with the parameters a, b and c as 0.0002, 0.1197 and 0.00003, respectively. Line C was drawn with the parameters a, b and c as −0.0013, 0.1204 and −0.0012, respectively. Line D was drawn with the parameters a, b and c as −0.0001, 0.1112 and −0.0058, respectively.
When the G and T change, the corresponding points of R spv −1 and I spv range from line A to line D, as shown in Figure 2. In this study, R spv −1 = P spv /V spv 2 , according to Equation (4), to calculate I spv,line (e.g., I spv,lineA , I spv,lineB , I spv,lineC and I spv,lineD ). As shown in Figure 2, when R spv −1 = 0.2 S, I spv,lineA , I spv,lineB , I spv,lineC and I spv,lineD are different. Although the four trend lines have the same R spv −1 , a different T and G draw different trend lines and the calculated I spv,line will be significantly different.
In this study, the proposed method, based on Figure 1a,b I spv -V spv characteristic curves, converted the relationship between R spv −1 and the G through Microsoft Excel and presented it with trend lines. The four trend lines were drawn (as in Figure 3) to show the relationship between the R spv −1 and the G as follows: line A.1 for the T of 0 • C and the G of 0-1000 W/m 2 , line B.1 for the T of 25 • C and the G of 0-1000 W/m 2 , line C.1 for the T of 50 • C and the G of 0-1000 W/m 2 and line D.1 for the T of 75 • C and the G of 0-1000 W/m 2 . The mathematical model of the four trend lines could be approximated by the following quadratic equation, simplified as Equation (5): In Figure 3, line A.1 was drawn with Equation (5) Figure 3, respectively, and then the G can be calculated by Equation (5).   Figure 3, respectively, and then the G can be calculated by Equation (5).
The proposed algorithm can calculate the G to improve the MPPT range and accuracy. Equation (5) is derived from Equations (2)-(4) and Figure 1a,b. Therefore, the proposed algorithm under a different G and T can accurately track the MPP and improve the MPPT performance.
A comparison of the four trend lines in Figure 3 shows that (1)  In order to determine the sudden change of G, the proposed algorithm used a continuous detection G variation value (dG). Generally, a sudden change in G is small in magnitude (smaller than 27 W/m 2 ) [25]. In this control scheme judgment, G does not change, which reduces unnecessary vibrations of the actuating point. Therefore, in this study, the CTC threshold value was set to 27 W/m 2 . Once the G change was detected to be more than 27 W/m 2 , the proposed algorithm tracked the new MPP.
The designer's actual demand sets the value of the CTC threshold. If the value of the CTC threshold is too small, the response is fast and the actuating point oscillations around the MPP cause power loss. On the contrary, when the value of the CTC threshold is too large, the response is slow and the MPPT will lack precision. Figure 4a illustrates that when time = 0 s, there is a G of 600 W/m 2 , Pspv = 12 W and a duty cycle of 0.7, then when time = 0.2 s, the G of 600 W/m 2 drops to 500 W/m 2 . Thus, the G variation value is more than 27 W/m 2 . Therefore, the proposed algorithm starts to track the new MPP. The Pspv of 10 W and duty cycle of 0.6 are shown in Figure 4b,c. Figure 4a displays that when time = 0.4 s, the G of 500 W/m 2 drops down to 490 W/m 2 . Thus, the G variation value is less than 27 W/m 2 . Therefore, the proposed algorithm to calculate the duty cycle is fixed, preventing perturbations that cause power loss. The Pspv of 9.8 W and the duty cycle of 0.6 are shown in Figure 4b,c. Figure 4a illustrates that when time = 0.6 s, the G increases from 490 W/m 2 to 500 W/m 2 . Thus, the G variation value is less than 27 W/m 2 and that the duty cycle is also fixed. The Pspv of 10 W and duty cycle of 0.6 are shown in Figure 4b,c. The proposed algorithm can calculate the G to improve the MPPT range and accuracy. Equation (5) is derived from Equations (2)-(4) and Figure 1a,b. Therefore, the proposed algorithm under a different G and T can accurately track the MPP and improve the MPPT performance.
A comparison of the four trend lines in Figure 3 shows that (1)  In order to determine the sudden change of G, the proposed algorithm used a continuous detection G variation value (dG). Generally, a sudden change in G is small in magnitude (smaller than 27 W/m 2 ) [25]. In this control scheme judgment, G does not change, which reduces unnecessary vibrations of the actuating point. Therefore, in this study, the CTC threshold value was set to 27 W/m 2 . Once the G change was detected to be more than 27 W/m 2 , the proposed algorithm tracked the new MPP.
The designer's actual demand sets the value of the CTC threshold. If the value of the CTC threshold is too small, the response is fast and the actuating point oscillations around the MPP cause power loss. On the contrary, when the value of the CTC threshold is too large, the response is slow and the MPPT will lack precision. Figure 4a illustrates that when time = 0 s, there is a G of 600 W/m 2 , P spv = 12 W and a duty cycle of 0.7, then when time = 0.2 s, the G of 600 W/m 2 drops to 500 W/m 2 . Thus, the G variation value is more than 27 W/m 2 . Therefore, the proposed algorithm starts to track the new MPP. The P spv of 10 W and duty cycle of 0.6 are shown in Figure 4b,c. Figure 4a displays that when time = 0.4 s, the G of 500 W/m 2 drops down to 490 W/m 2 . Thus, the G variation value is less than 27 W/m 2 . Therefore, the proposed algorithm to calculate the duty cycle is fixed, preventing perturbations that cause power loss. The P spv of 9.8 W and the duty cycle of 0.6 are shown in Figure 4b,c. Figure 4a illustrates that when time = 0.6 s, the G increases from 490 W/m 2 to 500 W/m 2 . Thus, the G variation value is less than 27 W/m 2 and that the duty cycle is also fixed. The P spv of 10 W and duty cycle of 0.6 are shown in Figure 4b  The change in the Rspv of the SPV module is an important factor for MPPT. This proposed algorithm not only detects the SPV Module Pspv-Vspv characteristic curves but also utilizes the CTC based on Rspv to track the MPP. Furthermore, the proposed algorithm is suitable for poor climates (e.g., rain, cloud and shadow). Figure 5 shows the proposed algorithm flowchart. First, the proposed algorithm implements the P&O algorithm, then reaches MPP; the duty cycle is fixed. Secondly, the proposed algorithm enters the CTC threshold control where dVspv(n) = Vspv(n) − Vspv(n − 1); dPspv(n) = Pspv(n) − Pspv(n−1); the present SPV module output current is Ispv; the present solar radiation is G; dG = |G(n) − G(n−1)|; a, b and c are the parameters of Equations (3) and (4) and d, e and f are the parameters of Equation (5). The change in the R spv of the SPV module is an important factor for MPPT. This proposed algorithm not only detects the SPV Module P spv -V spv characteristic curves but also utilizes the CTC based on R spv to track the MPP. Furthermore, the proposed algorithm is suitable for poor climates (e.g., rain, cloud and shadow). Figure 5 shows the proposed algorithm flowchart. First, the proposed algorithm implements the P&O algorithm, then reaches MPP; the duty cycle is fixed. Secondly, the proposed algorithm enters the CTC threshold control where dV spv (n) = V spv (n) − V spv (n − 1); dP spv (n) = P spv (n) − P spv (n − 1); the present SPV module output current is I spv ; the present solar radiation is G; dG = |G(n) − G(n − 1)|; a, b and c are the parameters of Equations (3) and (4) and d, e and f are the parameters of Equation (5). Figure 6 illustrates the boost converter with the MPPT algorithm-embedded diagram [26]. Its main elements include an inductor (L of 1 mH), a power MOSFET (S 1 ), a diode (D) and a capacitor (C out of 220 µF). It includes feedback circuits of an optical coupler and a current transducer. Further, it detects the V spv and I spv and transmits the signals to the microcontroller unit (MCU). The MCU (Microchip Technology, model number 18F452) outputs the PWM signal (PWM frequency of 30 kHz) and then drives the gate driver to control S 1 and reach the MPP.  Figure 6 illustrates the boost converter with the MPPT algorithm-embedded diagram [26]. Its main elements include an inductor (L of 1 mH), a power MOSFET (S1), a diode (D and a capacitor (Cout of 220 μF). It includes feedback circuits of an optical coupler and current transducer. Further, it detects the Vspv and Ispv and transmits the signals to the m crocontroller unit (MCU). The MCU (Microchip Technology, model number 18F452) ou puts the PWM signal (PWM frequency of 30 kHz) and then drives the gate driver to con trol S1 and reach the MPP.    Figure 6 illustrates the boost converter with the MPPT algorithm-embedded diagram [26]. Its main elements include an inductor (L of 1 mH), a power MOSFET (S1), a diode (D and a capacitor (Cout of 220 μF). It includes feedback circuits of an optical coupler and current transducer. Further, it detects the Vspv and Ispv and transmits the signals to the m crocontroller unit (MCU). The MCU (Microchip Technology, model number 18F452) ou puts the PWM signal (PWM frequency of 30 kHz) and then drives the gate driver to con trol S1 and reach the MPP.   Figure 7 shows the experimental SPV module and the prototype setup. The SPV module (model number Q025, Everbright, Beijing, China) G of 1000 W/m 2 and T of 25 °C specifications are as follows: VMPP = 8.3 V, IMPP = 2.4 A and PMPP = 20 W. In this experiment, the SPV module output power was connected to the input of the boost converter and the boost converter output was connected to the load. The MCU was employed to perform the MPPT control. The MCU outputted the PWM signal to drive the boost converter power MOSFET, S1, which then reached the MPP. In order to verify the proposed algorithm and the P&O algorithm performance, this study ran an experimental test under varying solar radiation and partial shading conditions. The results of the experimental proposed algorithm performance were higher than the P&O algorithm (Figures 8 and 9). In order to verify the proposed algorithm and the P&O algorithm performance, this study ran an experimental test under varying solar radiation and partial shading conditions. The results of the experimental proposed algorithm performance were higher than the P&O algorithm (Figures 8 and 9). Figure 8 displays the comparison between the proposed algorithm and the P&O algorithm test results when the varying irradiance of 500 W/m 2 dropped to 220 W/m 2 then increased to 500 W/m 2 with a T of 25 • C. Figure 8a shows that the proposed algorithm's MPPT was activated. When time = t 0 , the SPV module R spv −1 = 0.154 S, V spv = 8.5 V, I spv = 1.32 A and P spv = 11.22 W. According to Equation (4), the following were calculated: I spv,lineA , I spv,lineB , I spv,lineC and I spv,lineD , respectively. The I spv,lineC = 1.299 A and I spv > 1.005·I spv, lineC . Thus, the I spv fell on line B (Figure 2), which corresponded with line B.1 (Figure 3). Equation (5) was used to calculate the G = 500 W/m 2 . At time = t 1 , the SPV module R spv −1 = 0.072 S, V spv = 8.5 V, I spv = 0.62 A and P spv = 5.3 W. According to Equation (4), the following were calculated: I spv,lineA , I spv,lineB , I spv,lineC and I spv,lineD , respectively. The I spv,lineC = 0.6 A and I spv > 1.005·I spv,lineC . Therefore, the I spv fell on line B (Figure 2), which corresponded with line B.1 (Figure 3). Equation (5) was used to calculate the G = 220 W/m 2 . At time = t 2 , the SPV module R spv −1 = 0.154 S, V spv = 8.5 V, I spv = 1.32 A and P spv = 11.22 W. According to Equation (4), the following were calculated: I spv,lineA , I spv,lineB , I spv,lineC and I spv,lineD , respectively. The I spv,lineC = 1.299 A and I spv > 1.005·I spv,lineC . Thus, the I spv fell on line B (Figure 2, which corresponded with line B.1 (Figure 3). Equation (5) was used to calculate the G = 500 W/m 2 . The proposed algorithm could accurately calculate the G and adjust the duty cycle track to the MPP. When the G was constant, the duty cycle was fixed. Therefore, the proposed algorithm caught the MPP accurately. Figure 8b displays the P&O algorithm test results. This algorithm's MPPT was activated and perturbed to track the MPP and then the perturb method resulted in power loss. When the P&O algorithm at time = t 0 and a G of 500 W/m 2 , at time = t 1 , the G of 500 W/m 2 dropped to 220 W/m 2 and at time = t 2 , the G of 220 W/m 2 rose to 500 W/m 2 . The experiment results verified that the proposed algorithm's MPPT efficiency was better than the P&O algorithm (as in Table 1). In order to verify the proposed algorithm and the P&O algorithm performance, this study ran an experimental test under varying solar radiation and partial shading conditions. The results of the experimental proposed algorithm performance were higher than the P&O algorithm (Figures 8 and 9).      Figure 9 shows the comparison between the proposed algorithm and the P&O algorithm test results in partial shading conditions. The G and T were respectively 540 W/m 2 and 25 • C. Figure 9a shows that the proposed algorithm MPPT was activated. When the proposed algorithm at time = t 0 , the SPV module R spv −1 = 0.166 S, V spv = 9 V, I spv = 1.5 A and P spv = 13.5 W. According to Equation (4), the following were calculated: I spv,lineA , I spv,lineB , I spv,lineC and I spv,lineD , respectively. The I spv,lineC = 1.41 A and I spv > 1.005·I spv,lineC . Therefore, I spv fell on line B (Figure 2), which corresponded with line B.1 (Figure 3). Equation (5) was used to calculate the G = 540 W/m 2 . At time = t 1 , the SPV module suffered 1/2 partial shading conditions P spv = 6 W. The proposed algorithm was provided by the P&O algorithm with a quick response and accurately calculated the G and adjusted the duty cycle track to the MPP. When the G was constant, the duty cycle was fixed. Therefore, the proposed algorithm stably caught the MPP. At time = t 2 , the SPV module R spv −1 = 0.166 S, V spv = 9 V, I spv = 1.5 A and P spv = 13.5 W. According to Equation (4), the following were calculated: I spv,lineA , I spv,lineB , I spv,lineC and I spv,lineD , respectively. The I spv,lineC = 1.41 A and I spv > 1.005·I spv,lineC , so I spv fell on line B (Figure 2), which corresponded with line B.1 ( Figure 3). Equation (5) was used to calculate the G = 540 W/m 2 . Similarly, the proposed algorithm caught the MPP accurately. Figure 9b shows the P&O algorithm test results. This algorithm's MPPT was activated and perturbed to track the MPP. However, the perturb method could converge to the LPPP, resulting in a lower system efficiency. When the P&O algorithm at time = t 0 and G of 540 W/m 2 , at time = t 1 , the SPV module suffered 1/2 partial shading conditions P spv = 4.7 W and at time = t 2 , a G of 540 W/m 2 . Similarly, the experiment results verified that the proposed algorithm's MPPT efficiency was higher than the P&O algorithm (as in Table 1).

Conclusions
The proposed algorithm by the P&O algorithm was combined with the solar radiation value detection scheme where the solar radiation value detection was based on the SPV module equivalent CTC. Further, it could operate consistently at the MPP under varying solar radiation and partial shading conditions. Therefore, this proposed algorithm could improve the P&O algorithm perturbation problem, avoiding actuating point oscillations near the MPP. Furthermore, this algorithm could converge to the MPP under partial shading conditions. The experiment results showed that the proposed algorithm under varying solar radiation (500 W/m 2 to 220 W/m 2 then to 500 W/m 2 ) and partial shading conditions reached 99% of MPPT efficiency. Thus, the proposed algorithm was better than the P&O algorithm. Accordingly, the proposed algorithm was confirmed to be of a high performance under various solar radiation and partial shading conditions.
In this research, the SPV system focused on the MPPT algorithm. This system can already provide maximum power to provide load under varying solar radiation and partial shadow conditions. However, it is well-known that SPV systems cannot provide power at night and must be connected to the grid, batteries, wind power and hydropower to provide users with sufficient power quality. Therefore, the system's operation matching between SPV systems and other power equipment is an important topic for future research.