Maximum Power Point Tracking for Photovoltaic System by Using Fuzzy Neural Network

: The electrical energy from the sun can be extracted using solar photovoltaic (PV) modules. This energy can be maximized if the connected load resistance matches that of the PV panel. In search of the optimum matching between the PV and the load resistance, the maximum power point tracking (MPPT) technique o ﬀ ers considerable potential. This paper aims to show how the modelling process of an e ﬃ cient PV system with a DC load can be achieved using a fuzzy neural network (FNN) controller. This is applied via an innovative methodology, which senses the irradiance and temperature of the PV panel and produces an optimal value of duty ration for the boost converter to obtain the MPPT. The coe ﬃ cients of this controller have been reﬁned based upon previous data sets using the irradiance and temperature. A gradient descent algorithm is employed to improve the parameters of the FNN controller to achieve an optimal response. The validity of the PV system using the MPPT technique based on the FNN controller is further demonstrated via a series of experimental tests at di ﬀ erent ambient conditions. The simulation results show how the MPPT technique based on the FNN controller is more e ﬀ ective in maintaining the optimal power values compared with conventional techniques. collects it as an input function. The membership functions and the output weights of the proposed FNN controller were trained by utilizing a gradient descent algorithm to acquire a better output. The validated models were systematically tested to maximize the power output of the conversion system. The simulation results show that the proposed controller is e ﬀ ective and fast to achieve and maintain the optimum operating MPP for di ﬀ erent radiation and temperature conditions. In addition, the FNN controller has good stable sets of responses where there is no oscillation around the optimal value.


Introduction
Increasing the energy demand around the world has focused attention on the need to develop renewable sustainable sources with minimal environmental impact. Of all the potential renewable sources of energy, that derived from solar power continues to grow in prominence as it can be utilized to generate electrical power without pollution and is readily available around the globe. Most significantly, although the cost of installation is still prohibitive [1,2], once operational, the cost of the operation and maintenance is relatively low and commercially competitive with other available power sources.
A key aspect of the solar cell is that it is a not-fixed voltage or current source, and thus depends upon the variation in irradiation, temperature, and load. Therefore, the overall efficiency of the solar array can be considerably low due to these variations. In order to ameliorate the efficiency of the solar cells, the maximum power point tracking (MPPT) technique is utilized to enhance the output. This technique is able to obtain the maximum possible power from a varying source by using a controlled DC-DC converter with a unique tracking algorithm introduced between the photovoltaic (PV) array and the load [2].

PV Modelling
A PV cell mutates solar energy into DC electrical power via a physical operation known as the photoelectric effect. A PV array is composed of a number of PV cells connected in series and parallel to increment the voltage and current in the array. There are several variations of PV cell models [5,7,9] available to potential users. The classifications of these models depend on many factors, like the irradiation, temperature, effect of shadow, and the cell deviation from the diode operation [8,10]. In this paper, an approach has been adopted to use a single-diode model to represent the PV cell. This can then be modelled by a current source in anti-parallel circuit with a diode. In addition, parallel and series resistances are also included due to leakage current and ohmic resistances, as depicted in Figure 1. The equations defining this model are: I pv = I PH − I D − I p (2) Inventions 2019, 4, x 2 of 12 DC-DC converter with a unique tracking algorithm introduced between the photovoltaic (PV) array and the load [2]. Many MPPT techniques have been presented in the literature [1,3,4] including: Incremental Conductance (IC), Perturb and Observe (P and O), and the Feedback Linearization Method. However, most of them have limitations due to the non-linear characteristics of PV cells. More recently, intelligent techniques employing neural network and fuzzy logic are presented as an effective approach to trace the maximum power from the PV cells commensurate with changing atmospheric conditions [5][6][7][8]. Such intelligent techniques based on MPPT provide the facility to achieve a faster response with greater accuracy compared with conventional techniques.
In this paper, a fuzzy neural network (FNN) controller based on the MPPT technique has been designed and implemented to control the duty cycle of a boost converter and to elicit the maximum power from the PV cells. The integrating of fuzzy logic with a neural network is more convenient for MPPT compared with conventional controllers by overcoming the limitations of the individual techniques. In particular, this offers higher accuracy with the non-linear behavior of PV cells. The parameters of the FNN controller are also refined using a gradient descent-based back-propagation algorithm to obtain the optimal results.

PV Modelling
A PV cell mutates solar energy into DC electrical power via a physical operation known as the photoelectric effect. A PV array is composed of a number of PV cells connected in series and parallel to increment the voltage and current in the array. There are several variations of PV cell models [5,7,9] available to potential users. The classifications of these models depend on many factors, like the irradiation, temperature, effect of shadow, and the cell deviation from the diode operation [8,10]. In this paper, an approach has been adopted to use a single-diode model to represent the PV cell. This can then be modelled by a current source in anti-parallel circuit with a diode. In addition, parallel and series resistances are also included due to leakage current and ohmic resistances, as depicted in Figure 1. The equations defining this model are:  (1) For a solar cell, the photocurrent generated by the solar cell depends on temperature as well as irradiance level and is given by: = kT/q (5) For a solar cell, the photocurrent I PH generated by the solar cell depends on temperature as well as irradiance level and is given by: V pv = αV T ln I PH − I pv where, V T is the temperature voltage, V pv is the PV voltage, V D is the diode voltage, α is the diode goodness, I o is the reverse saturation current of the diode, I pv is the output current of the PV cell, I D is the diode current, I sc is the cell short-circuit current at 25 • C and 1 kW/m 2 , K I is the cell short-circuit current temperature coefficient, T is the PV cell temperature, T r and G are the cell reference temperature and solar irradiation in kW/m 2 respectively, k is Boltzmann's constant, q is the electron charge, R s is the series resistance of PV cell, R sh is the shunt resistance of the PV cell, and T is the PV cell temperature. From Equation (2) and according to Figure 1, the output current of a PV module is given by: Ideally, R s would be zero and R sh infinite. Thus, this typical values are not applicable and manufacturers attempt to reduce the effect of both resistances to upgrade their products.

Boost Converter
The core of the MPPT strategy is a DC-DC converter. A DC-DC converter is utilized to transfer the maximum power of solar array to the load side, ensuring that maximum power has been transferred [11][12][13][14]. In this work, the boost converter is utilized to vary the output voltage by adjusting the duty cycle to elicit the maximum power from the solar array, as depicted in Figure 2. The duty cycle of the boost converter is controlled by using the MPPT algorithm. This converter can be designed and modelled to operate at current-continuous mode (CCM) using the following equations: where D is the duty cycle, V in , V out , V r are the input voltage, output voltage, and output ripple voltage respectively, f is the switching frequency, and R is the load resistance where, is the temperature voltage, is the PV voltage, is the diode voltage, α is the diode goodness, is the reverse saturation current of the diode, is the output current of the PV cell, is the diode current, is the cell short-circuit current at 25 °C and 1 kW/m 2 , is the cell short-circuit current temperature coefficient, T is the PV cell temperature, and G are the cell reference temperature and solar irradiation in kW/m 2 respectively, k is Boltzmann's constant, q is the electron charge, is the series resistance of PV cell, is the shunt resistance of the PV cell, and T is the PV cell temperature. From equation (2) and according to Figure 1, the output current of a PV module is given by: Ideally, would be zero and infinite. Thus, this typical values are not applicable and manufacturers attempt to reduce the effect of both resistances to upgrade their products.

Boost Converter
The core of the MPPT strategy is a DC-DC converter. A DC-DC converter is utilized to transfer the maximum power of solar array to the load side, ensuring that maximum power has been transferred [11][12][13][14]. In this work, the boost converter is utilized to vary the output voltage by adjusting the duty cycle to elicit the maximum power from the solar array, as depicted in Figure 2. The duty cycle of the boost converter is controlled by using the MPPT algorithm. This converter can be designed and modelled to operate at current-continuous mode (CCM) using the following equations: where D is the duty cycle, V , V , V are the input voltage, output voltage, and output ripple voltage respectively, f is the switching frequency, and R is the load resistance

MPPT Technique
The MPPT technique is utilized to obtain the maximum power and efficiency from the solar panel. This consists of a DC-DC converter that interconnects between the PV panel and the load and controller. The photovoltaic modules are not fixed electrical sources and the I-V characteristics are non-linear. This makes it more difficult for utilizing to provide the energy to any load. This is achieved by utilizing a boost converter which can be controlled by varying the duty cycle through an MPPT algorithm [1,4,9,13]. The MPPT controller changes the resistance, as seen from the PV panel, by changing the duty cycle of the boost converter, and hence compels the PV panel to extract MPP to

MPPT Technique
The MPPT technique is utilized to obtain the maximum power and efficiency from the solar panel. This consists of a DC-DC converter that interconnects between the PV panel and the load and controller. The photovoltaic modules are not fixed electrical sources and the I-V characteristics are non-linear. This makes it more difficult for utilizing to provide the energy to any load. This is achieved by utilizing a boost converter which can be controlled by varying the duty cycle through an MPPT algorithm [1,4,9,13]. The MPPT controller changes the resistance, as seen from the PV panel, by changing the duty cycle of the boost converter, and hence compels the PV panel to extract MPP to the load. In recent years, several techniques have been developed which can effectively track the MPP.

Fuzzy Neural Network (FNN) Controller
The combination between fuzzy logic and the neural network offers the advantages of both networks (human-like IF-THEN rules thinking, ease of incorporating expert knowledge, learning abilities, optimization abilities, and connectionist structures) [15][16][17][18]. For the present work, the fuzzy neural network controller is utilized to overcome the drawbacks of the individual techniques and control the PV output power to extract MPP. The FNN can thus be considered as a hybrid form of the neural network, with similarities to the general structure, but having special connections and node operations within the network, as shown in Figure 3. The FNN controller consists of a four-layer neural network based on fuzzy logic with an optimization algorithm for learning the neural network. The basic function of each layer is described as follows [14][15][16]: Input Layer: The input layer is utilized to translate the input variables into linguistic variables, which represents the solar irradiance and the cell temperature.
Hidden Layer: This layer represents the linguistic term layer which utilizes the Gaussian membership function to fuzzify the crisp inputs.: where, and (i=1, 2,.., m; j=1, 2,.., n), are the mean and standard deviation of the Gaussian function respectively, in the jth term of the ith input linguistic variable to the node of this layer. Rule Layer: This layer represents the fuzzy reasoning and implementation of the fuzzy rules mechanism. The output of this layer is given as: where, O is the i output of the rule layer. Output Layer: This layer implements the defuzzification process and produces the final output from all layers in the FNN controller as follows: where, w denotes the i output weight.

Input Layer:
The input layer is utilized to translate the input variables x n into linguistic variables, which represents the solar irradiance and the cell temperature.
Hidden Layer: This layer represents the linguistic term layer which utilizes the Gaussian membership function to fuzzify the crisp inputs.: where, µ ij and σ ij (i=1, 2,.., m; j=1, 2,.., n), are the mean and standard deviation of the Gaussian function respectively, in the jth term of the ith input linguistic variable x j to the node of this layer. Rule Layer: This layer represents the fuzzy reasoning and implementation of the fuzzy rules mechanism. The output of this layer is given as: (11) where, O i is the i th output of the rule layer. Output Layer: This layer implements the defuzzification process and produces the final output from all layers in the FNN controller as follows: where, w o i denotes the i th output weight.

Learning Algorithm for the FNN Controller
Once the fuzzy neural network has been initialized, a gradient descent-based back-propagation algorithm is utilized to learn the parameters of the FNN exploiting the training patterns. The main goal of a supervised learning algorithm is to minimize the mean square error function: where, y FNN is the output of the fuzzy neural network and y p is the desired output. The parameter of the FNN controller presented in Figure 3 should be adjusted according to the following equations [19]: where, η is the learning rate for each parameter in the system, i = 1, 2, . . . , n, and j = 1, 2, . . . , m.

FNN Controller Based on Maximum Power Point Tracking (MPPT) for the Photovoltaic (PV) System
The FNN controller MPPT is utilized to trace the MPP. Figure 4 depicts the overall block diagram of the FNN controller based on MPPT for a PV system. The optimal PV system consists of a PV panel, a boost converter with an MPPT algorithm, and load. The main goal of the MPPT algorithm is to set the duty cycle of the boost converter to make the converter deliver the maximum power to the load at any given temperature and irradiance. The input impedance of the boost converter (which is the same resistance that achieves the requirement to extract the maximum power) is calculated using the equation below: Keeping output impedance constant, the duty cycle is changed using the MPPT technique until the input impedance seen from the source is equal to the optimal load impedance.
The FNN controller based on MPPT takes the operating temperature and irradiance from the PV panel as the input factors. The parameters of the FNN controller are training and optimized according to the mean square error function to acquire a better output. The output of the FNN controller is compared with a high-frequency carrier signal to get the optimal duty cycle of the boost converter which coincides to Pmax for any given weather conditions. Inventions 2019, 4, x 6 of 12

Simulation Results
The PV system with an FNN controller based on MPPT has been implemented in the Matlab/Simulink software package, as shown in Figure 5. The Simulink model of the PV module is developed according to the mathematical equations (1)(2)(3)(4)(5). The BPSX 150S PV module has been used which consists of 72 multi-crystalline silicon solar cells, and its characteristics are shown in Table 1. The Simulink model of the boost converter and FNN controller are shown in Figures 6 and 7, respectively. The values of inductance and capacitor of the boost converter are 8 mH and 2200 µF respectively, whilst the output load value is 20 ohm.

Simulation Results
The PV system with an FNN controller based on MPPT has been implemented in the Matlab/Simulink software package, as shown in Figure 5. The Simulink model of the PV module is developed according to the mathematical Equations (1)-(5). The BPSX 150S PV module has been used which consists of 72 multi-crystalline silicon solar cells, and its characteristics are shown in Table 1

Simulation Results
The PV system with an FNN controller based on MPPT has been implemented in the Matlab/Simulink software package, as shown in Figure 5. The Simulink model of the PV module is developed according to the mathematical equations (1)(2)(3)(4)(5). The BPSX 150S PV module has been used which consists of 72 multi-crystalline silicon solar cells, and its characteristics are shown in Table 1. The Simulink model of the boost converter and FNN controller are shown in Figures 6 and 7, respectively. The values of inductance and capacitor of the boost converter are 8 mH and 2200 µF respectively, whilst the output load value is 20 ohm.     Based on Equation 16, the data set was found through performing a set of measurements on the model of the solar panel using Matlab Simulink. At each value of irradiance and temperature fed to the solar panel, the input impedance Ri value was calculated to achieve the MPPT of the solar panel. After identifying the values of the ideal input resistors for all probabilities of solar irradiance and temperature, the value of the duty ratio D was calculated from equation 16 after the output impedance was fixed at 20 ohm. The temperature values were 10, 20, 30, 40, and 50 degrees Celsius, while the irradiance values were taken as 500, 600, 700, 800, 900, and 1000 watts per square meter. Thus, the sum of data is 5 × 6, equal to 30. This means that at every temperature and irradiance value, there is an ideal value for the duty ratio that is fed to the boost converter to extract maximum power. Therefore, the training data for the FNN will be the solar irradiance and the temperature as inputs, while the duty ratio is the desired output.
The membership functions and the output weights of the FNN have been learned (off-line) by  Based on Equation 16, the data set was found through performing a set of measurements on the model of the solar panel using Matlab Simulink. At each value of irradiance and temperature fed to the solar panel, the input impedance Ri value was calculated to achieve the MPPT of the solar panel.
After identifying the values of the ideal input resistors for all probabilities of solar irradiance and temperature, the value of the duty ratio D was calculated from equation 16 after the output impedance was fixed at 20 ohm. The temperature values were 10, 20, 30, 40, and 50 degrees Celsius, while the irradiance values were taken as 500, 600, 700, 800, 900, and 1000 watts per square meter. Thus, the sum of data is 5 × 6, equal to 30. This means that at every temperature and irradiance value, there is an ideal value for the duty ratio that is fed to the boost converter to extract maximum power. Therefore, the training data for the FNN will be the solar irradiance and the temperature as inputs, while the duty ratio is the desired output.
The membership functions and the output weights of the FNN have been learned (off-line) by utilizing the m-file to get the optimal value of the parameters. Figure 8 shows the membership Based on Equation (16), the data set was found through performing a set of measurements on the model of the solar panel using Matlab Simulink. At each value of irradiance and temperature fed to the solar panel, the input impedance Ri value was calculated to achieve the MPPT of the solar panel. After identifying the values of the ideal input resistors for all probabilities of solar irradiance and temperature, the value of the duty ratio D was calculated from Equation (16) after the output impedance was fixed at 20 ohm. The temperature values were 10, 20, 30, 40, and 50 degrees Celsius, while the irradiance values were taken as 500, 600, 700, 800, 900, and 1000 watts per square meter. Thus, the sum of data is 5 × 6, equal to 30. This means that at every temperature and irradiance value, there is an ideal value for the duty ratio that is fed to the boost converter to extract maximum power. Therefore, the training data for the FNN will be the solar irradiance and the temperature as inputs, while the duty ratio is the desired output.
The membership functions and the output weights of the FNN have been learned (off-line) by utilizing the m-file to get the optimal value of the parameters. Figure 8 shows the membership functions of the FNN controller before and after training. The x-axis of the membership function represents the normalized crisp values of temperature and irradiance, where the temperature values are normalized or mapped to 50, while the irradiance values are mapped and normalized to 1000. During training, the main part of FNN (the mean and standard deviation of the Gaussian function) with the output weights have been adapted and changed to get the desired values of duty ratio D by using the back-propagation algorithm. The number of iterations tested were 47 and 163 with 0.0005 error tolerance.   After initial testing of the functioning of the PV system, the results of the PV response (power, current and voltage) were systematically simulated. The boost converter output responses under the variation of temperature at irradiance equal to 800 W/m 2 and 500 W/m 2 are shown in Figures 9 and 10, respectively. Table 2 summarizes the comparison of power and efficiency between the PV panel and the load with and without MPPT. The results show that the proposed fuzzy neural controller is much better than the direct coupling between the resistor load and the PV panel. For instance, by connecting the load directly to the PV panel at G = 1000 W/m 2 and T = 30, the power will be 81 watts, whilst for the same load, when connected to the PV through the boost converter-based MPPT algorithm, the power will be 141 watts. Thus, the gained power is 60 watt. Figure 11 shows the PV system response under variation of irradiation (G) at temperature (T) equal to 30 °C, whilst Table 3 explains the results of Figure 11. Figure 12 shows how the output power of the converter (load power) tracks the output power of the PV module for many step changes in irradiance at T = 30 °C. Therefore, the fuzzy neural network is efficient to extract MPPT at any environmental variation in temperature and irradiance. After initial testing of the functioning of the PV system, the results of the PV response (power, current and voltage) were systematically simulated. The boost converter output responses under the variation of temperature at irradiance equal to 800 W/m 2 and 500 W/m 2 are shown in Figures 9 and 10, respectively. Table 2 summarizes the comparison of power and efficiency between the PV panel and the load with and without MPPT. The results show that the proposed fuzzy neural controller is much better than the direct coupling between the resistor load and the PV panel. For instance, by connecting the load directly to the PV panel at G = 1000 W/m 2 and T = 30, the power will be 81 watts, whilst for the same load, when connected to the PV through the boost converter-based MPPT algorithm, the power will be 141 watts. Thus, the gained power is 60 watt. Figure 11 shows the PV system response under variation of irradiation (G) at temperature (T) equal to 30 • C, whilst Table 3 explains the results of Figure 11. Figure 12 shows how the output power of the converter (load power) tracks the output power of the PV module for many step changes in irradiance at T = 30 • C. Therefore, the fuzzy neural network is efficient to extract MPPT at any environmental variation in temperature and irradiance.        Figure 11. The boost converter output responses at T = 30 °C.

Conclusion
The design and verification process of FNN based on the MPPT technique for developing a highly efficient method to optimize energy extraction from a PV generation system was presented. The components and subsystems of the whole proposed system model have been analyzed and validated using MATLAB Simulink software. The FNN controller was proposed based on the MPPT technique used to control the duty cycle of the boost converter to extract the maximum power from the PV panel. The FNN controller takes the operating data from the PV panel under different  Inventions 2019, 4, x 10 of 12 Figure 11. The boost converter output responses at T = 30 °C.

Conclusion
The design and verification process of FNN based on the MPPT technique for developing a highly efficient method to optimize energy extraction from a PV generation system was presented. The components and subsystems of the whole proposed system model have been analyzed and validated using MATLAB Simulink software. The FNN controller was proposed based on the MPPT technique used to control the duty cycle of the boost converter to extract the maximum power from the PV panel. The FNN controller takes the operating data from the PV panel under different

Conclusions
The design and verification process of FNN based on the MPPT technique for developing a highly efficient method to optimize energy extraction from a PV generation system was presented. The components and subsystems of the whole proposed system model have been analyzed and validated using MATLAB Simulink software. The FNN controller was proposed based on the MPPT technique used to control the duty cycle of the boost converter to extract the maximum power from the PV panel. The FNN controller takes the operating data from the PV panel under different conditions and collects it as an input function. The membership functions and the output weights of the proposed FNN controller were trained by utilizing a gradient descent algorithm to acquire a better output. The validated models were systematically tested to maximize the power output of the conversion system. The simulation results show that the proposed controller is effective and fast to achieve and maintain the optimum operating MPP for different radiation and temperature conditions. In addition, the FNN controller has good stable sets of responses where there is no oscillation around the optimal value.