Available online at www.sciencedirect.com Electric Power Systems Research 78 (2008) 777–784 A novel maximum power point tracking for photovoltaic applications under partially shaded insolation conditions Nabil A. Ahmed a,∗ , Masafumi Miyatake b a Department of Electrical Engineering, Faculty of Technological Studies, Public Authority of Applied Education and Training, Shuwaikh, Kuwait b Department of Electrical and Electronics Engineering, Sophia University, Tokyo, Japan Received 9 June 2006; received in revised form 22 May 2007; accepted 31 May 2007 Available online 25 September 2007 Abstract In this paper, a novel strategy of maximum power point tracking is presented for photovoltaic power generation systems based on Fibonacci search algorithm to realize simple control system to track the real maximum power point even under non-uniform or for rapidly changing insolation conditions. The Fibonacci search technique was modified in order to apply to time-variant P–V characteristics of the PV array. It is proved experimentally and through simulation results that the algorithm has good performances and very fast response even for partial shaded PV modules. The proposed technique can be applied to various types of PV power conditioners including dc–dc and dc–ac converters. It can be commonly used instead of the conventional MPPT techniques. This method requires neither the measurement of temperature and insolation level nor prior knowledge about the model of the used photovoltaic panel. The proposed method can track the global maximum power point in most cases by doing a wide-range search and more power can be extracted with partial shaded PV modules as compared to the other methods. Simulation and experimental results are presented to prove the feasibility of the proposed technique. © 2007 Elsevier B.V. All rights reserved. Keywords: Photovoltaic generation system; Maximum power point tracking; Local maximum; Partially shaded array; Rapidly changeable insolation; Fibonacci search algorithm 1. Introduction The ever-increasing demand for conventional energy sources like coal, natural gas and crude oil is driving society towards the research and development of alternate energy sources. Many such renewable energy sources like wind energy and solar or photovoltaic (PV) are now well developed, cost effective and are being widely used, while some others like fuel cells are in their advanced developmental stage. These energy sources are preferred for being environmental friendly. Photovoltaic energy has become one of the most promising sources of energy due to the fact that PV energy is free and sustainable. Besides this, PV is scaleable from very small to very large and easy to integrate with existing power converters [1]. Although the rapid development of PV materials technology and the increased demands for PV materials have led to ∗ Corresponding author. E-mail address: na.ahmed@paaet.edu.kw (N.A. Ahmed). 0378-7796/$ – see front matter © 2007 Elsevier B.V. All rights reserved. doi:10.1016/j.epsr.2007.05.026 a reduction of the PV module costs [2], the capital costs of PV systems are still very high. Therefore, there is a necessity to design a power converter that is not only high in efficiency but also optimizes the energy production of the PV material. The power produced by a PV module is dependent upon the solar irradiance and temperature of the PV panel. The output power of a PV module also varies as a function of its operating point because of the inherent non-linear current voltage (I–V) relationship of a typical PV cell. Therefore, a maximum power point tracking (MPPT) algorithm is commonly used to maximize the power drown from PV modules under varying atmospheric conditions. Among the MPPT techniques, the perturbation and observation (P and O) method is the most popular because of the simplicity of its control structure and few measured parameters for the power tracking [3]. The name of algorithm itself reveals that it operates by periodically perturbing the control variable and comparing the instantaneous PV output power after perturbation with that before. Therefore, continuous perturbation or oscillation occurs around the MPP in steady state. Incremental conductance (IncCond) method tracks the MPP accurately by 778 N.A. Ahmed, M. Miyatake / Electric Power Systems Research 78 (2008) 777–784 comparing the incremental conductance dI/dV and chord conductance I/V [4]. It depends on the fact that at the MPP, the derivative of PV output power with respect to the PV voltage is zero. This algorithm has the advantage of no oscillation occurs around the MPP in steady state. The drawback of this method is the complexity of the design controller. The mountain climbing method is also often used for MPPT of PV systems. It is simple but the convergence is slow. Voltage- and current-based MPPT methods have been developed in [11,12]. However, these methods cannot readily track immediate and rapid changes in environmental conditions or partial shading of the PV modules. Tracking the maximum power point is difficult when a PV array is partially shaded or is installed in a rapidly changeable insolation conditions, because two or more local maximum power points may appear. The PV power–voltage (P–V) characteristic sometimes shows multi-local maximum operating points under non-uniform isolation conditions or under partially shading PV modules. In this case the operating point of the PV system can tend to converge to a local maximum operating point which is not the real maximum one on the P–V curve. A few papers have been reported trying to avoid this difficulty. However, most of those control systems become rather complicated [5–9]. The authors have proposed a new simple MPPT technique using the Fibonacci line search. It enables intuitive adjustment of control parameters and fast response. The method was already verified with simulations and experiments. However, the method cannot always find the global maximum point when the part of PV array is partially covered with shadow [10,11]. In this paper, a novel strategy of MPPT is proposed for photovoltaic power generation systems based on improving the original Fibonacci search algorithm to realize simple control system to track the real maximum power point even under nonuniform insolation conditions or for rapidly changing insolation. The Fibonacci search technique was modified in order to apply to time-variant P–V characteristics of the PV array. A new initialization function has been introduced to initializing the search condition when sudden or partial change in insolation is detected and doing a wide search, which leads to the real maximum power. It is proved experimentally and through simulation results that the algorithm has good performances and very fast response even for partial shaded PV modules. The proposed technique can be applied to various types of PV power conditioners including dc–dc and dc–ac converters. It can be commonly used instead of the conventional MPPT techniques. This method requires neither the measurement of temperature and insolation level nor prior knowledge about the model of the used PV array. The proposed method can track the global maximum power point in most cases by doing a wide-range search and more power can be extracted with partial shaded PV modules as compared to the other methods. Simulation and experimental results are presented to prove the feasibility of the proposed technique. The Fibonacci numbers are defined in the following manner: c0 = 0, c1 = 1, cn = cn−2 + cn−1 for n ≥ 2 (1) Based on (1), the Fibonacci numbers are calculated as c2 = 1, c3 = 2, c4 = 3, c7 = 13 c5 = 5, c6 = 8, (2) The Fibonacci line search is generally used for optimization techniques applied to one variable functions. This method iteratively restricts and shifts the searching range so as to contain optimal point in the range. The direction of the search shifting is decided by the value of the function at two check points in the range. The process of restricting and shifting is illustrated in Fig. 1. 2.1. Bracketing search method An approach for finding the minimum of a function f(x) in a given interval is to evaluate the function many times and search for a local minimum. To reduce the number of function evaluations it is important to have a good strategy for determining where f(x) is to be evaluated. Two efficient bracketing methods are the golden ratio and Fibonacci searches. To use either bracketing method for finding the minimum of f(x), a special condition must be met to ensure that there is a proper minimum in the given interval. 2. Line search algorithm with Fibonacci sequence This section describes how to use Fibonacci search algorithm for the MPPT array. Fig. 1. The decision process of Fibonacci search algorithm in one search operation: (a) f(c0 ) ≤ f(d0 ) and f(c0 ) > f(d0 ). N.A. Ahmed, M. Miyatake / Electric Power Systems Research 78 (2008) 777–784 2.2. Definition of unimodal function 3. Application of Fibonacci search algorithm for MPPT of photovoltaic The function f(x) is unimodal in an interval I = [a, b], if there exists a unique number p ∝ I such that f (x) is decreasing on [a, p] and f (x) is increasing on [p, b]. In the Fibonacci search two function evaluations are made at the first iteration and then only one function evaluation is made for each subsequent iteration. The search is terminated at the kth subinterval, provided that |bk − ak | ≤ δ or |f(bk ) − f(ak )| ≤ ε where δ and ε are the predetermined tolerances. Assume we are given a function f(x) that is unimodal on the interval [a0 , b0 ]. A value r0 (0.5 < r0 < 1) is selected so that two of the interior points c0 and d0 will be used in the next subinterval and there will be only one new function evaluation. In the classical search methods as golden ratio search two function evaluations are made at the first iteration and then two function evaluations are made for each subsequent iteration and the value of r0 remains constant on each subinterval. The Fibonacci search method differs from the golden ratio method in that the value of r0 is not constant on each subinterval. The (k + 1)st subinterval is obtained by reducing the length of the kth subinterval by a factor of rk = cn − 1 − k /cn − k . The length of the last subinterval is (a0 − b0 )/cn . Additionally, the number of subintervals (iterations) is predetermined and based on the specified tolerances. If f(c0 ) ≤ f(d0 ), then the minimum must occur in the subinterval [a0 , d0 ] and we replace a1 = a0 and b1 = d0 and continue the search in the new subinterval [a1 , b1 ] = [a0 , d0 ]. If f(c0 ) > f(d0 ), then the minimum must occur in the subinterval [c0 , b0 ] and we replace a1 = c0 and b1 = b0 and continue the search in the new subinterval [a1 , b1 ] = [c0 , b0 ]. These choices are shown in Fig. 1. The relation of the variables ai and bi at any iteration interval, which are illustrated in Fig. 1, and the Fibonacci sequence cn are expressed as ai = cn+1 , bi = cn (3) In the algorithm implementation, the Fibonacci numbers are given explicitly (e.g. as constants in the frame program). Eq. (3) shows that the operation is based on the Fibonacci sequence and at each iteration the length of the interval is chosen according to the Fibonacci rule. The value of ai+1 and bi+1 can be decided in the next iteration as ai+1 = cn (= bi ), bi+1 = cn−1 779 (4) The search is terminated when the variable n of the number cn becomes zero or when the condition |bk − ak | ≤ δ or |f(bk ) − f(ak )| ≤ ε is satisfied. When the Fibonacci search algorithm is applied to the MPPT of PV panel, the variable x can be considered as voltage, current of the PV array or duty cycle of the power converter (duty cycle D is selected in this paper) and the function f(x) can be regarded as the output power. However, the original search algorithm cannot be directly applied to time-variant function such as P–V characteristics of PV generation system. Hence, the method should be modified for real-time optimization. 3.1. Modification for sudden insolation change The Fibonacci sequence numbers used in this method is limited between c1 and cN , where cN is the last term in the sequence, and the method restricts search range so as to contain the MPP. The proposed search method iteratively restricts and shifts the searching range so as to contain the optimal point in the range. The direction of the shifting is decided by the value of the function at two check points in the range. The process of restricting and shifting is illustrated in Fig. 2. However, the MPP may move to be outside of the search range due to the sudden change in the insolation. In this case, the search range is being widening as shown in Fig. 2(b) and this is realized by reversing the process of Fig. 1. Fig. 2(b) shows the operation of widening the search range to chase the maximum power point. If the optimal point is assumed to be out of the search range owing to sudden change of insolation, the search range must continue to shift in the same direction. The situation is detected by counting the number of shifts. The counting is initialized when the range shifts to the other direction. If it shifts to the same direction more than one time (it is set by the parameter M), the range was not narrowed but widen. The widening process is practically implemented when the range is shifted to the same direction more than M times and the Fibonacci sequence does not reach the last term cN . The value of ai+1 and bi+1 will be decided in the next iteration as ai+1 = cn+2 , bi+1 = cn+1 (= ai ) (5) The adjustment of control parameters is done with the constants M and N, which influence the speed of response and the oscillation at the steady state. Where, M counts for the number of searching in the same direction and N for the maximum number of restricting and widening the search. 3.2. Modification for gradual insolation change Fig. 3 shows how to cope with the slow change of insolation. The output power is measured twice at two different points (x1 and x2 ) during each control cycle. The measurement should be done at the identical timing, because the insolation may change between the consecutive measurements. If the insolation changes gradually, it causes miss tracking of the position of MPP due to the time difference between measurements. Therefore, the power measured firstly is corrected by using the power 780 N.A. Ahmed, M. Miyatake / Electric Power Systems Research 78 (2008) 777–784 measured at the end of the cycle by assuming linear change of output power as shown in Fig. 3. The correction uses the following equation: Pi (x2−d ) = 2Pi (x2−d ) − Pi−1 (x1+d ) (6) where the d represents the direction of shifting, Pi (x2−d ) and Pi−1 (x1+d ) is the measured power at the beginning (T/2) and the middle of the control cycle for each iteration, Pi (x2−d ) is the estimated power for each iteration. Fig. 3 shows the measured power at two consecutive points and how this power is corrected to be used in Fibonacci search. When the PV array is partially shaded, the P–V curve has two or more maximum points. The algorithm may find a local maximum which is not always the same as the global maximum and fails to track the actual global maximum. In the following subsection, a new correction function is proposed which enables to find the global maximum point. 3.3. New function to guarantee global maximum power A new function is proposed to improve the search algorithm by the initializing the search condition when sudden or partial change of insolation is detected. This new function leads the operating point to the global maximum point, because a widerange search can be realized. The following equation is introduced for the detection of such sudden or partial change of insolation. |Pi (x2−d ) − Pi−1 (x1+d )| <r Pi (x2−d ) (i) (i) Fig. 2. Comparison of f (x1 ) and f (x2 ) to restrict or widen the search range: (a) restricting the search range and (b) widening the search range. (7) If Eq. (7) is not satisfied, the shaded portion of Fig. 3 is preceded and the condition is initialized. The constant r was decided by experimental trials according to the fact that if r is large, initialization often occurs even if the insolation is not changed and if r is very small, no initialization occurs. The optimal value of the constant r in Eq. (7) is decided practically and it is set to be 0.2. The flowchart of the proposed real-time endless optimizing approach based on Fibonacci search algorithm proposed in this section and using the suggested function to improve the Fibonacci search for the proposed study for partially shaded PV panel is shown in Fig. 4. Fig. 5 shows simulation results of the maximum power and generated power under two extreme studying cases when the irradiance is sinusoidal changing and when a step change is occurred. A very fast response and accurate MPPT are achieved even for rapidly and continuously changing insolation. 4. Experimental verifications Fig. 3. Correction of measured power. The fundamental results of simulations and experiments are given in [10]. New experimental results of partial shading effect are mentioned in this paper. N.A. Ahmed, M. Miyatake / Electric Power Systems Research 78 (2008) 777–784 781 Fig. 4. Flowchart of the MPPT control technique with initialization function. 4.1. Configuration of experimental system The configuration of the experimental system is shown in Fig. 6. The experimental set up is composed of a PV panel connected to an electronic load through a PWM boost converter. The rated output power of the PV array is 300 W which consist of six series PV modules (Fuji Electric Co. ELR-615-160Z, 50 W) shown in Fig. 7. A one leg of a 6in1 intelligent power module (IPM) is used as a boost converter. Gating signals of the IPM switching device are generated by a digitals signal processor (DSP). A TMS320LF2407A DSP digital control platform is implemented to obtain the control and PWM functions via software that maximizes the output power. The DSP realizes the complicated algorithm and controls the boost converter switch according to the control algorithm so that the output power can track the maximum power at each sampling instant. Output current and voltage of the boost converter are continuously on line sensed instead of those of the PV array in order to maximize the output power including the losses of the power converter. The control program runs on the DSP is developed with C compiler on a PC. An electronic load is used as a 200 V constant dc voltage load. Control period is set to 0.1 s. The circuit parameters are illustrated in Table 1. The boost converter voltage and current are continuously sensed and the duty cycle of the boost converter switching device is calculated by the DSP according to the proposed MPPT using the Fibonacci search algorithm presented in this paper. The virtual variable xi of the Fibonacci sequence cn is converted to the duty cycle of the boost converter D (0 ≤ D ≤ 1). D= xi 256 − 1 (8) The number 256 which decide the resolution of the duty cycle is derived from the use of 8 bit integer. The parameters M and N are set to 1 and 8, respectively. The initial conditions are selected as follows: (0) x1 = 255−c11 −c10 = 111, (0) x2 = 255−c11 = 166 (9) Fig. 8 shows the relation between the variable x and Fibonacci sequence at initial conditions. Table 2 shows the relation between the Fibonacci numbers, shift direction and the estimated duty cycle during a complete control period. 4.2. Results and discussion Partial shading is made artificially by covering the PV array with a sheet instantaneously. The tested PV array is composed of six series modules with rated output power of 300 W. Four modules are partially covered to produce insolation of 0.7 kW/m2 and two modules are partially covered to produce insolation of 0.2 kW/m2 . The simulated and measured P–V characteristics at the above conditions are as shown in Fig. 9. The P–V characTable 1 Design specifications and circuit parameters Item PV array rating, P (W) Boost inductor, L (mH) Smoothing capacitor, C (F) Output voltage, Vr (V) Switching frequency, fs (kHz) Control cycle, T (s) Value 300 60 1000 200 10 0.1 782 N.A. Ahmed, M. Miyatake / Electric Power Systems Research 78 (2008) 777–784 Table 2 Relation of x and, shift direction and duty cycle Iteration no. Case x3 x1 x2 x4 d Direction D 1 2 3 4 5 6 7 f(x1 ) ≥ f(x2 ) f(x1 ) ≥ f(x2 ) f(x1 ) ≥ f(x2 ) f(x1 ) ≥ f(x2 ) f(x1 ) ≥ f(x2 ) f(x1 ) ≥ f(x2 ) f(x1 ) ≥ f(x2 ) 22 111 166 166 166 166 174 111 166 200 187 179 174 179 166 200 221 200 187 179 179 255 255 255 221 200 187 187 1 1 1 0 0 0 1 Right Right Right Left Left Left Right 0.4353 0.6510 0.7S43 0.7333 0.7020 0.6824 0.7020 teristic under partial shading has a global maximum point and a local maximum point. The difference of output power and voltage at two maximum points is relatively high. Most conventional MPPTs cannot find such global maximum point. The points of global maximum power and local power are located at 60 V, 125 W and 110 V, 80 W, respectively. The step response of the proposed MPPT algorithm is examined experimentally compared to the original method without the proposed function given in Eq. (7). The generated output Fig. 6. Configuration of experimental system. Fig. 7. Photovoltaic solar panel for experiments. Fig. 5. Simulation results at sudden change of insolation: (a) continuous sinusoidal change and (b) step change. Fig. 8. Relation of x and Fibonacci sequence at initial conditions. N.A. Ahmed, M. Miyatake / Electric Power Systems Research 78 (2008) 777–784 Fig. 9. Simulated and measured P–V characteristics under partial shading: (a) simulated and (b) measured. 783 Fig. 10. Experimental response of MPPT with sudden partial shading: (a) proposed method (b) original method. power of the proposed and original search algorithms are shown in Fig. 10(a) and (b), respectively. The working duty cycle are also shown in Fig. 11(a) and (b) for the two methods, respectively. The oscillation in the output power and the duty cycle shown in Figs. 10(a) and 11(a) are due to the wide search range of the proposed method to arrive the real global maximum power point. Fig. 10(b) indicates that the original method could not able to change the duty cycle to track the real maximum power point due to the rapid change in the insolation shown in Fig. 9. Therefore, the original method cannot track the global maximum power point and the generated power is 80 W (local maximum) with a duty cycle of 0.32 as shown in Figs. 10 and 11(b)Figs. 10(b) and 11(b). On the contrary, the new proposed method can track well the global maximum power point by doing wide-range search as shown in Figs. 10(a) and 11(a). The generated power is 125 W at a duty cycle of 0.67. Considering the well-known steady-state voltage conversion characteristic of the typical PWM boost converter, which generally represented by vout = Vin 1−D (10) and the output load voltage was kept constant to 200 V by the electronic load. The operating PV voltages corresponding to the duty cycles of 0.32 and 0.67 are 110 and 60 V, respectively, which correspond to the local and global maximum points of Fig. 9. The total output power with partial shading is increased by a factor of about 36% using the proposed correction function. Fig. 11. Duty cycle variations to sudden partial shading: (a) proposed method and (b) original method. 784 N.A. Ahmed, M. Miyatake / Electric Power Systems Research 78 (2008) 777–784 The saving value in the output power depends on the number of shaded modules in the PV array. In most cases, the proposed method has the guarantee to find the global maximum power point under partial shading or sudden shading conditions independent on the circuit configuration. However, there is a fluctuation in the output power and duty cycle due to the initialization of the search conditions at the beginning of each search when sudden or partial change of insolation is detected. 5. Conclusions In this paper a novel maximum power point tracking method based on Fibonacci search algorithm has been improved and adopted for the MPPT of partial shading or rapidly changing insolation conditions of PV arrays. The line search method with Fibonacci sequence has been employed and modified to apply for time-variant power–voltage characteristics of PV arrays to realize simple control system to track the real maximum power. This method requires neither the measurement of temperature and insolation level nor prior knowledge about the model of the used PV panel. The proposed method can track the global maximum power point in most cases by doing a wide-range search and more power can be extracted with partial shaded PV modules as compared to the other methods. The proposed algorithm has been verified experimentally and with simulation results. A very fast response, good performance and accurate MPPT have been achieved even for PV modules under partial shading or rapidly changing insolations. The proposed approach can be commonly applied instead of the conventional MPPT techniques to any type of PV power conditioners including dc–dc and dc–ac interface systems. References [1] C.W. Tan, T.C. Green, C.A. Hernandez, An improved maximum power point tracking algorithm with current-mode control for photovoltaic applications, in: Proceedings of 1991 IEEE International Conference on Power [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12] Electronics and Drive Systems, Kuala Lumpur, Malaysia, November 28–December 1, 1991. D. Poponi, Analysis of diffusion paths for Photovoltiac technology based on experience curves, Sol. Energy l.74 (2003) 331–349. X. Liu, L.A.C. Lopes, An improved perturbation and observation maximum power point tracking algorithm for PV arrays, in: Proceedings of the IEEE 35th Annual Meeting of Power Electronics Specialists Conference PESC’04, 2004. C. Hua, J. Lin, C. Shen, Implementation of a DSP controlled photovoltaic system with peak power tracking, IEEE Trans. Ind. Electron. 45 (1998) 99–107. X. Sun, W. Wu, X. Li, Q. Zhao, A research on photovoltaic energy controlling system with maximum power point tracking, in: Proceedings of the Power Conversion Conference, vol. II, no. D6-3, PCC-Osaka, April 2–5, 2002, pp. 822–826. N. Kasa, T. Iida, G. Majumdar, Robust control for maximum power point tracking in photovoltaic power system, in: Proceedings of the Power Conversion Conference, vol. II, no. D6-4, PCC-Osaka, April 2–5, 2002, pp. 827–832. M.F. Shraif, C. Alonso, A. Martinez, A simple and robust maximum power point control (MPPC) for ground photovoltaic generators, in: Proceedings of the International Power Electronics Conference, vol. 1, IPEC-Tokyo, April 3–7, 2000, pp. 158–163. M. Matsui, T. Kitano, D. Xu, Z. Yang, New MPPT control scheme utilizing power balance at dc link instead of array power detection, in: Proceedings of the International Power Electronics Conference, vol. 1, IPEC-Tokyo, April 3–7, 2000, pp. 164–169. Y. Kuo, T. Liang, J. Chen, Novel maximum-power-point-tracking controller for photovoltaic energy conversion system, IEEE Trans. Ind. Electron. 48 (3) (2001) 594–601. M. Miyatake, T. Kouno, M. Nakano, Maximum power point tracking control employing fibonacci search algorithm for photovoltaic power generation system, in: Proceedings of the International Conference of Power Electronics, ICPE’01, Seoul, Korea, October 15–19, 2001, pp. 622–625. N.A. Ahmed, M. Miyatake, A stand-alone hybrid generation system combining solar photovoltaic and wind turbine with simple maximum power point tracking control, in: Proceedings of the CES/IEEE 5th International Power Electronics and Motion Control Conference, IPEMC’06, Shanghai, China, August 13–16, 2006. N.A. Ahmed, M. Miyatake, Power fluctuations suppression of stand-alone hybrid generation systems combining solar photovoltaic and wind turbine with fuel cell, in: Proceedings of the 2006 International Conference on Electrical Machines and Systems, ICEMS’ 2006, Nagasaki, Japan, November 20–23, 2006.