Journal of Electrical Engineering and Electronic TechnologyISSN: 2325-9833

All submissions of the EM system will be redirected to Online Manuscript Submission System. Authors are requested to submit articles directly to Online Manuscript Submission System of respective journal.

Research Article, J Electr Eng Electron Technol Vol: 9 Issue: 2

An Improved MPPT Solar Charge Controller Based on Artificial Fish-Swarm Algorithm and Narrowed Search Spaced Perturbation Observation Algorithm

Antwi Moses1 and Hongyu Sun1,2, *

1College of Electronic and Information Engineering, Shandong University of Science and Technology, China.

2College of Electrical Engineering and Automation, Shandong University of Science and Technology, China.

*Corresponding Author : Hongyu Sun
College of Electronic and Information Engineering, Shandong University of Science and Technology, China

Received date: March 08, 2020; Accepted date: April 05, 2020; Published date: July 31, 2020

Citation: Moses A, Sun H (2020) An Improved MPPT Solar Charge Controller Based on Artificial Fish-Swarm Algorithm and Narrowed Search Spaced Perturbation Observation Algorithm. J Electr Eng Electron Technol 2020, 9:2 doi: 10.37532/jeeet.2020.9(2)e.174

Keywords: Microelectronics; Microfluidics; Microchip, Microprocessor; Nano Electronics


Recently, solar energy has received much attention due to its environmental friendliness compared to fossil fuel. It is also one of the cheapest available sources of clean energy [1]. Photovoltaic (PV) is a system that converts solar energy directly into electricity. Solar PV cell output characteristics is non-linear and it is affected by light, temperature, and the load at which the light intensity and temperature are fixed. A maximum power point tracking of the solar PV output characteristics may be obtained by changing output voltage [2]. Maximum power is produced at I-V characteristic point where the product of voltage and current is maximum. This point is called maximum power point (MPP).

Many maximum power point tracking (MMPT) algorithm, have been proposed in the literature [3,4]. It is proposed perturb and observe method, incremental conductance method was proposed by Shahidet and Dhar and intelligent-based methods by Mohamed [5- 8]. However, these methods differ in simplicity, speed of convergence, and application of hardware. Among the different proposed MPPT , perturb and observe (P&O) algorithm is one of the most widely accepted in solar PV systems because of its simplicity, ease of implementation, and not requiring previous knowledge for the system characteristics. Nevertheless, the conventional P&O algorithm has some drawbacks including the steady-state swinging around the MPP and the lack of considering the motor rating.

This paper describes the design of an improved MPPT controller using a modified P&O algorithm. The algorithm is used to solve the conventional P&O defects at efficiency above 97%. The buck converter circuit and boost converter circuit are employed to get constant DC voltage output from changing DC panel voltage. The MPPT algorithm in the charge controller is implemented by varying the duty cycle of the dc-dc converter. This paper is organized as follows. First, the characteristics of solar panel and the battery charging system are presented in Section 2. Section 3 presents the proposed modified MPPT algorithm. The simulation and experimental results are given in Section 4. Finally, the conclusion is presented in Section 5.


Design of battery charge controller

Mostly, the PV systems require charge controllers to regulate the battery charging state, optimize battery and system performance, and help prevent battery damage or dangerous conditions during charging. In simple terms, a solar charge controller device controls the charging of a solar cell battery and controls battery drain. The charge controller checks if the battery needs to be recharged and if so, it checks the availability of solar power and begins charging the battery. Moreover, whenever the controller finds that the battery has reached the full charge voltage level, it stops charging from the solar cell. Also, when it finds that there is no solar power available, it assumes it is night and turns on the load. Therefore, the idea of designing such a charge controller is based on the primary responsibility of the battery, such as how to convert solar energy into electricity under different weather conditions of temperature and solar irradiance, and how to increase the charging rate of the battery. Figure 1 shows a schematic diagram of a battery charging system including PV panel and MPPT charge controller. The PV panel changes the solar energy into DC electricity while the MPPT charge controller operates the PV array at maximum power, independent of battery voltage, and also increases array energy utilization, and allows for the use of more efficient high voltage arrays with lower battery system voltages.


Figure 1: Battery charging system.

Solar Panel Characteristics

The two key factors that must be taken into account are radiation and temperature; simply because in solar panels, power generation depends on solar irradiance and operating temperature. They strongly affect the characteristics of solar modules. There is variation in MPP throughout the day (due to changes in irradiance) thus explaining why the voltage-current (VI) and voltage-power (VP) must be frequently tracked by the MPPT to ensure maximum available power from the panel. As the temperature increases, the I-V characteristic of the PV cell shifts to the left, so the MPP decreases as the temperature increases. Meanwhile, the photovoltaic properties of solar panels, their current-voltage or IV curves depend on temperature and irradiance levels. Therefore, the operating current and voltage that maximize power output will vary with environmental conditions. Hence, MPP needs to be located by the tracking algorithm, which is the core of the MPPT controller.

Figure 2 illustrates that the change in current is greater than the change in voltage. In practice, the voltage dependence on radiation is often overlooked [9]. However, since the effects on current and voltage are positive, both increase as the irradiation increases, and therefore the result on power is also positive. The more the irradiation, the greater the power generated, however, temperature comparatively mainly affects the voltage. As shown in Figure 2, the voltage-current and voltage-power characteristics vary with temperature. In order to obtain a stable voltage above and below the output from the output voltage (PV cell), a high efficiency and minimum ripple DC-DC converter is required in the system.


Figure 2: Solar panel characteristics.

Artificial fish-swarm algorithm

Artificial fish swarm algorithm is a kind of swarm intelligence algorithm which simulates the fish in the nature of foraging, cluster and collision behavior and mutual assistance between fish swarm, so as to realize the global optimal [10,11]. The algorithm is described as follows:

The vector image is denoted as the state of artificial fish consisted of n fishes, whereimage is for optimization of variable; Y express food concentration and then the food concentration of artificial fish i in the current position can be expressed as image represents the distance of artificial fish and artificial fish ; δ denoted as crowded degree factor, expressed the crowded extent of artificial fish; Step expressed maximum step length of ever movement of artificial fish; visual is the maximum range what artificial fish percept; try-number denotes the attempt times in the behavior of prey.

(A) Random Behavior

Achieve random behavior is simple. The artificial fish move a step to the direction of food increasing gradually in visual field, which is a behavior similar to natural fish. It ensures that the artificial fish flee sub-maximum to hunt for maximum point. The next position of can be described as:

(1) image Where is random numbers of [-1,1].

(B) Foraging Behavior

For aging behavior denotes fish swimming follow the direction of food increasing, artificial fish in current state and randomly selects a state within its visual field, and calculate the objective function value Y, if in the maximum problem, goes forward a step in the direction of ; Conversely, if the condition is not satisfied after repeating try number times, it moves a step randomly. The formula is as follows:

(2) image

(C) Swarming Behavior

Swarming Behavior refers to a behavior of that fishes move as quickly as possible to the center of the adjacent companions in the process of swimming and avoids overcrowding. Let fish search the number of companions and the center position in the visual range of current, If and , then move one step toward the center position which has more food and not too crowded; Otherwise foraging behavior is executed. The formula is as follows:

(3) image

(D) Following Behavior

Following behavior refers to a behavior that the fish move to the direction which with the maximum food consistence in visual range. Artificial fish search the number of partners in the current state and that is the largest partner within partners, If , that is to say has higher food consistence and is not too crowded, then goes forward one step toward the center position; Otherwise perform foraging behavior. The formula is as follows:

(4) image

Modified Maximum Power Point Tracking Methods

The MPPT algorithms are required in PV applications because the MPP of a solar panel varies with irradiation and temperature, so the use of MPPT algorithm is obligatory in order to get maximum power from the solar array. In the past few years, many methods for finding MPP have been developed and published. These techniques change in many features, such as the required sensor, complexity, cost, effective range, rate of convergence, proper tracking when irradiation or temperature changes, hardware required for the implementation or popularity, among others [11].

Amongst these technologies, the P&O and InCond algorithms are the most common. Both P&O and InCond algorithms so-called ‘hillclimbing’ methods, which consists of moving the operation point of the PV array in the direction in which power increases. Hill-climbing techniques are the most popular MPPT methods because they are easy to implement and have good performance when radiation is constant. These techniques have the advantage of being easy to implement, but they also have disadvantages. Additional techniques based on different principles are fuzzy logic control, neural networks, fractional open circuit voltage or short circuit current, current sweep, etc. Moreover, most of these methods produce local maximum and some, (such as fractional open circuit voltage or short circuit current) give an approximate MPP, not the precise one. Under normal conditions, the V-P curve has only one maximum, so it is not a problem. Though, if the PV array is partially colored, there are multiple maxima in these curves.

The Perturb and Observe (P&O) is the most commonly used MPPT algorithms due to its ease of implementation in its basic form. The P&O algorithm is also recognized as “hill-climbing”, but both names refer to the same algorithm, depending on how it is implemented. [Hohm and Ropp [12] Hill-climbing includes a perturbation on the duty cycle of the power converter and P&O a perturbation in the operating voltage of the DC link between the PV array and the power converter. In the event of the Hill-climbing, perturbing the duty cycle of the power converter suggests modifying the voltage of the DC link between the PV array and the power converter, so both names refer to the same [11].Flowchart of the modified narrowed search spaced Perturb and Observe algorithm is displayed in Figure 3.


Figure 3: Modified P&O algorithm.

The voltages V_1 and V_2 is measures first to find the MPP holding region to reduce the operating point of the solar panel into area 2 region, which of it is(10% of the power curve), and at that point starts the P&O. , At this point, only few perturbation, MPP is attained and kept. In addition, under unvarying weather situations, it will adhere to the MPP, whereas the irradiance varies. Therefore, then arrowed search spaced P&O MPPT algorithm is implemented in this study, due to its briefness [13]. As shown in Figure 4, the p-v curve has been separated into (3) three, (Area1, Area 2, and Area 3).


Figure 4: Examine space check of the power curve.

When far from the maximum power point, choose a large step to approach the optimal state of system quickly. When close to the maximum power point, employ a small step to reach the maximum power point and reduce the oscillation.

DC-DC Buck Converter

The Figure 5, shows a diagram of the DC/DC converter implemented in hardware. The DC-DC converter is a power electronic circuit that converts a dc voltage to a different dc voltage level and usually provides a regulated output. Therefore, dc-dc converter is used to control the charging current of the battery and also to switch the output power of the PV panel. Moreover, the main module of MPPT hardware is the switch mode DC-DC converter.


Figure 5: Buck converter.

It is broadly used in DC power supplies and DC motor drives to convert unregulated DC input to a controlled DC output at the required voltage level. MPPT uses the same converter for different purposes, adjusting the PV MPP input voltage and providing load matching for maximum power transfer.

Therefore, in order to alter the input resistance of the panel to match the load resistance (by changing the duty cycle), a DCDC converter is needed [14]. Boost converters are used for more practical applications from solar panels. In this experiment, the active switch (IGBT) is on dc-dc converter as it is obtained by using the duality principle on the circuit of a buck boost converter. The Boost converters are used for more practical applications from solar panels. The input of the boost converter is linked to the PV array and output is connected to the load. However, in order to acquire a stable voltage from an input power source (PV cells) above and below than the output, a high efficiency and minimum ripple DC-DC converter is needed in a system for residential power production. The buckboost converter makes it possible to efficiently convert a DC voltage to a lower or higher voltage. In addition, the buck-boost converter is especially suited for PV maximum power tracking purposes, with the goal of always getting the maximum possible power from the solar panel, regardless of the load.


Figure 6: MModel of buck converter based on MATLAB/SIMULINK.

PV Current and Voltage Sensor

In general, dc-dc converter is used to convert the voltage from the panel or array to a voltage close to the grid voltage and maximize the power drawn from the panel.


Figure 7: PV current Sensor

On the other hand, the current and voltage sensors are also used for voltage and current monitoring, recording or verification of operational applications.


Figure 8: PV Voltage Sensor.

The voltage sense divider is powered by a simple buffer amplifier that shares a package with the current sense amplifier. A peak detector circuit is implemented due to current ripple, and the signal is amplified before analog to digital conversion.

Materials and Simulation

Materials and equipment

The following materials and equipment were used in the study: IGBT-based DC-DC buck converter, 0.11 mH of the inductor and 6.6 mF of the capacitor, 12V / 100AH battery, Solar Module: 100-18-M.


To validate the implementation of the recommended algorithm, a MATLAB/Simulink model of the buck converter was developed as shown in Figure 9. In this study, PV module simulated is built on the characteristic equation of the solar cell. The implementation of the MPPT algorithm is used by the coding of the flow chart, making it easy to understand and implement the modifications in the P&O algorithm.


Figure 9: Model of buck converter based on MATLAB/SIMULINK.

The IGBT-based dc-dc buck converter is measured by the gate signal that is determined by the proposed P&O algorithm. Therefore, the switch frequency of the gate signal is 40 kHz and the buck converter contained of 0.11 MHz of the inductor and 6.6 mF of the capacitor.


Figure 10: Solar Module: 100-18-M.

All electrical specifications are +/-3%, All technical date at Standard Test Conditions (STC), Irradiance Level 1000 W/m2, Spectrum AM1.5, and Cell Temperature 25 °C.

PV simulator

As shown in Figure 11, a solar module was formed according to the conditions described in table 1 and a modified solar irradiance profile is made in the software interface of the PV simulator.


Figure 11: PV simulatorsoftware interface.

  Parameter   ValueMaximum Power (Pmax)  100WOpen Circuit Voltage (Voc)  21.6VShort Circuit Current (Isc)  6.12AMaximum Power Voltage (Vmp)  18VMaximum Power Current (Imp)  5.56AMaximum System Voltage    1000VNormal Operating Cell Temperature (NOCT)    45Temperature Cycling Range  -40Weight  7.5kgDimensions  1200Maximum Series Fuse Rating  10A

Table 1: Solar Module Used in the Experiment:

Buck converter frequency

Figure12 shows a high-frequency (40 KHz) buck converter design. The converter is controlled by the MPPT signal consisting of ARM platform, and the IGBT driver circuit which drive the power IGBT used in the converter as a switch. The ARM programming changes the duty cycle based on temperature and solar radiation levels. The controller attempts to maximize the watts output from the PV simulator by regulatory the duty cycle so that the PV simulator working is always at its maximum power point.


Figure 12: Buck Converter Circuit with IGBT Driver.

Battery -12V/100AH

In this research, 12V/100AH battery was used, as it shown in Fig.13.


Figure 13: Battery 12A/100AH

Results and Discussion

Solar panel output characteristics curves

Under different temperature conditions, the output voltage and current of the photovoltaic panel do not have a curve changing with temperature.

Figure 14 shows that the output current of a photovoltaic panel was greatly affected by the light intensity, which was substantially proportional. Typically, when the radiation was 1000 w/m2, the current was 8 A. When the radiation was 600 w/m2, the current decreased to 5 A, and when the radiation increased to 800 w/m2, the current increased to 6A.


Figure 14: PV battery Output Current.

In Figure 15, the output voltage of the photovoltaic panel is less affected by the light intensity. As the time increased the radiation also varied. When the radiation reduced from 1000w/m2 to 600w/m2 the output voltage was fairly constant around 21V.


Figure 15: PV battery output voltage

Because the output power of the photovoltaic panel was equal to the output voltage of the photovoltaic panel multiplied by the current, the power output curve of the photovoltaic panel was similar to the current output curve under different light intensities (shown in Figure 16). It was realized that the output power was affected by change in radiation. The output reduced when the radiation reduced.


Figure 16: PV battery output power.

In Figure 17, when the light intensity increased, the output current of the photovoltaic panel increased greatly. However, at a specific light intensity the output current remained constant till the voltage was 25V when the current began to reduce.


Figure 17: Volta metric characteristics of PV cells under different light intensities.

As can be seen from Figure 18 that output power of the photovoltaic panel varies with light intensity. The higher the light intensity the higher the output power. The output power steadily increased from 0V till it reached it 25V, 27V, 29 and 30V for 300W/ m2, 600W/m2, 800W/m2 and 1000W/m2 respectively when it started to reduce sharply.


Figure 18: Volta metric characteristics of PV panels under different light intensities.

Figure 19 shows the maximum power point curve of the photovoltaic panel at a 25 ° temperature environment with a light intensity of 1000 W/m2. At the maximum power point voltage Vm of 29V, the photovoltaic panel has a maximum output power Pm of 200W.


Figure 19: P-V Characteristic Curve.

Figure 20 is a p-v schematic diagram of the perturbation and observation method.

As shown in figure 20, if the output voltage increases, the power Pn+1 are greater than the Pn power. Meanwhile the maximum power point which is on the right side of the current time is necessary to continue to increase the voltage. If the power Pn+1is less than the Pn power, the maximum power point on the left side of the current time, and the voltage needs to be reduced. Therefore, if the output voltage is reduced, the Pn+1 power is less than the Pn power; the maximum power point on the right side of the current time, and the voltage needs to be increased. However, If the Pn+1 power is greater than the Pn power, then the maximum power point on the left side of the current time needs to continue to reduce the voltage.


Figure 20: Schematic diagram of P&O

In Table 2, the controller developed works near the MPP of changed solar irradiance, which draws nearly 95% of the power at the MPP. In addition, the intensity vs. output power solar radiation is shown in Figure 21 (records of Table 2).

The Solar radiationPV current
at operating
point of the
(Amp)PV voltage
at operating
point of the controller
(Volt) MPP Power
(Watt)   Operating
point of the     controller power (Watt)1000.241513.7873.483.332000.490413.9287.286.833000.73914.04111.1310.384000.994913.77414.9813.75001.242913.85418.817.226001.479714.1922.57217001.689814.91926.2925.218001.91115.1829.9429.019002.117915.54133.5232.9110002.337415.57937.0236.41

Table 2: Bulk charging stage analyses.


Figure 21: Solar irradiation intensity vs output power


The study concludes that:

1. Efficiency of 97 % can be achieved with an improved design and implementation of (MPPT) solar charge controller based on modified perturbation and observation (P&O) algorithm.

2. A maximum power output of 200W can be achieved at a maximum voltage of 29V.

3. Photovoltaic current output is directly proportional to light intensity (radiation), however, the output voltage is independent of the light intensity.

4. Photovoltaic power output is directly affected by the light intensity

5. To reduce payback time in using solar panels the maximum power point must be constantly and quickly tracked.

6. The cost of installing any solar charging controller can be optimized by adding MPPT and appropriate algorithms.


This work was supported in part by the Grants from the National Natural Science Foundation of China (Grant No.61701284), China Postdoctoral Science Foundation (Grant No.2016M602165), Opening Project Fund of State Key Laboratory of Mining Disaster Prevention and Control Cofounded by Shandong Province and the Ministry of Science and Technology (Grant No. MDPC201715), Key Research and Development project of Shandong Province (Grant No. 2018GHY115022), Shandong Natural Science Foundation (Grant No. ZR2017MF070) and Qingdao Postdoctoral Application Research Project (Grant No. 2016113).


  1. Ali Chermitti, Omar Boukli-Hacene, Bencherif Mohamed, 2012. Improvement of the “Perturb and Observe MPPT Algorithm in Photovoltaic System under Rapidly Changing Climatic Conditions” International Journal of Computer Applications (0975 – 8887) Volume 56– No.12.
  2. De Brito, M.A.G.; Galotto, L.; Sampaio, L.P.; et al., 2012. "Evaluation of the main MPPT techniques for photovoltaic applications", IEEE Trans. Ind. Electron, 60(3), 1156-1167.
  3. Dhar, S.; Sridhar, R.; Mathew, G., 2013. Implementation of PV cell based standalone solar power system employing incremental conductance MPPT algorithm[C]// Circuits, Power and Computing Technologies (ICCPCT), International Conference on. IEEE.
  4. Esram, T.; Chapman, P.L., 2007. "Comparison of Photovoltaic Array Maximum Power Point Tracking Techniques," IEEE Transactions on Energy Conversion, vol. 22, no. 2, pp. 439-449.
  5. Femia, N.; Petrone, G.; Spagnuolo, G.; Vitelli, M., 2009. "A technique for improving P&O MPPT performances of double-stage grid-connected photovoltaic systems", IEEE Trans. Ind. Electron., 56, (11), pp. 4473-4482.
  6. Hohm, D.P.; Ropp, M.E., 2000. “Comparative Study of Maximum Power Point Tracking Algorithms Using an Experimental, Programmable, Maximum Power Point Tracking Test Bed”. Photovoltaic Specialists Conference, Conference Record of the Twenty-Eighth IEEE 15-22 Pages:1699 – 1702
  7. Knopf, H. 1999. Analysis, Simulation, and Evaluation of Maximum Power Point Tracking (MPPT) Methods for a Solar Powered Vehicle, MATER OF SCIENCE THESIS IN ELECTRICAL AND COMPUTER ENGINEERING, PORTLAND STATE UNIVERSITY.
  8. LI Xiaolei, SHAO Zhijiang, QIAN Jixin. An Optimizing Method Based on Autonomous Animats:Fish-swarm Algorithm [J]. Systems Engineering-theory & Practice, 2002,(11):32-38.
  9. Moon, S.; Yoon, S.G.; Park, J.H., 2015. A New Low-Cost Centralized MPPT Controller System for Multiply Distributed Photovoltaic Power Conditioning Modules. IEEE Transactions on Smart Grid, 6(6), 2649-2658.
  10. Mohamed, A.A.S.; Berzoy, A.; Mohammed, O., 2014. "Optimized-fuzzy MPPT controller using GA for stand-alone photovoltaic water pumping system", Proc. IECON– 40th Annu. Conf. IEEE Ind. Electron. Soc., pp. 2213-2218.
  11. Mohamed, A. A.S.; Berzoy, A.; Mohammed, O., 2016. Design and Hardware Implementation of FL MPPT Control for PV Systems Based on GA and Small-Signal Analysis[J], IEEE Transactions on Sustainable Energy, 8(1),1-1.
  12. Shahid, H.; Kamran, M.; Mehmood, Z.; et al., 2018. Implementation of the novel temperature controller and incremental conductance MPPT algorithm for indoor photovoltaic system. Solar Energy, 163,235-242.
  13. Subudhi, B.; Pradhan, R., 2012. "A comparative study on maximum power point tracking techniques for photovoltaic power systems", IEEE Transactions on Sustainable Energy, 4(1), 89-98.
  14. T. Markvart, Solar electricity, Wiley, 2000, p. 280.
international publisher, scitechnol, subscription journals, subscription, international, publisher, science

Track Your Manuscript

Awards Nomination

Recommended Conferences

World Summit Biosensor and Bioelectronics

Hamburg, Germany