Top Banner
DESIGN AND SIMULATION OF PHOTOVOLTAIC WATER PUMPING SYSTEM A Thesis Presented to the Faculty of California Polytechnic State University, San Luis Obispo In Partial Fulfillment of the Requirements for the Degree of Master of Science in Electrical Engineering by Akihiro Oi September 2005
113
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Ao thesis

DESIGN AND SIMULATION OF

PHOTOVOLTAIC WATER PUMPING SYSTEM

A Thesis Presented to the Faculty of

California Polytechnic State University, San Luis Obispo

In Partial Fulfillment of the Requirements for the Degree of

Master of Science in Electrical Engineering

by

Akihiro Oi September 2005

Page 2: Ao thesis

ii

AUTHORIZATION FOR REPRODUCTION OF MASTER’S THESIS

I grant permission for the reproduction of this thesis in its entirety or any of its parts, without

further authorization from me.

Signature (Akihiro Oi)

Date

Page 3: Ao thesis

iii

APPROVAL

Title: DESIGN AND SIMULATION OF PHOTOVOLTAIC WATER PUMPING SYSTEM

Author: Akihiro Oi

Date Submitted: 26th September, 2005

Dr. Taufik Committee Chair Dr. Ahmad Nafisi

Signature

Committee Member Dr. William Ahlgren

Signature

Committee Member Signature

Page 4: Ao thesis

iv

ABSTRACT

DESIGN AND SIMULATION OF PHOTOVOLTAIC WATER PUMPING SYSTEM

Akihiro Oi

This thesis deals with the design and simulation of a simple but efficient photovoltaic

water pumping system. It provides theoretical studies of photovoltaics and modeling

techniques using equivalent electric circuits. The system employs the maximum power point

tracker (MPPT). The investigation includes discussion of various MPPT algorithms and

control methods. PSpice simulations verify the DC-DC converter design. MATLAB

simulations perform comparative tests of two popular MPPT algorithms using actual

irradiance data. The thesis decides on the output sensing direct control method because it

requires fewer sensors. This allows a lower cost system. Each subsystem is modeled in

order to simulate the whole system in MATLAB. It employs SIMULINK to model a DC

pump motor, and the model is transferred into MATLAB. Then, MATLAB simulations

verify the system and functionality of MPPT. Simulations also make comparisons with the

system without MPPT in terms of total energy produced and total volume of water pumped

per day. The results validate that MPPT can significantly increase the efficiency and the

performance of PV water pumping system compared to the system without MPPT.

Page 5: Ao thesis

v

ACKNOWLEDGEMENTS

I would like to first acknowledge my advisor, Dr. Taufik, for his support and advice

throughout my graduate program. His power electronics courses and his dedication to his

students gave me the best experience during the program. I would also like to express my

sincere appreciation to my other thesis committees, Dr. Nafisi and Dr. Ahlgren, for review of

this thesis in detail and their important feedback.

I would like to thank my colleague and friend, John Carlin, who has a career

experience in designing photovoltaic systems. A number of ideas generated from our

numerous discussions and his feedback are incorporated in this thesis. Also, thanks to my

other good colleagues, James Silva, John Cadwell, Michael Chong, James Sorenson, Sajiv

Nair, Alan Yeung, Yat Tam, all other denizens of “EE Grad Lab” and the lab technicians for

their support and willingness to help me out during various stages of my project.

Finally, to my parents, my sister, and my friends - many thanks for much support the

whole way through, especially Jenny Ho for her constant encouragement and support during

two years of my graduate work.

Akihiro Oi

September 2005

Page 6: Ao thesis

vi

Table of Contents

List of Tables .................................................................................................... viii List of Figures ......................................................................................................ix Chapter 1 Introduction ..........................................................................................1

1.1 Water Pumping Systems and Photovoltaic Power.......................................................... 1 1.2 Energy Storage Alternatives ........................................................................................... 3 1.3 The Proposed System...................................................................................................... 4

1.3.1 PV Module............................................................................................................................ 5 1.3.2 Maximum Power Point Tracker............................................................................................ 5 1.3.3 MPPT Controller .................................................................................................................. 6 1.3.4 Water Pump .......................................................................................................................... 7

1.4 Background and Scope of This Thesis............................................................................ 8 Chapter 2 Photovoltaic Modules ........................................................................10

2.1 Introduction................................................................................................................... 10 2.2 Photovoltaic Cell........................................................................................................... 10 2.3 Modeling a PV Cell ...................................................................................................... 12

2.3.1 The Simplest Model............................................................................................................ 12 2.3.2 The More Accurate Model.................................................................................................. 15

2.4 Photovoltaic Module..................................................................................................... 17 2.5 Modeling a PV Module by MATLAB.......................................................................... 18 2.6 The I-V Curve and Maximum Power Point.................................................................. 25

Chapter 3 Maximum Power Point Tracker.........................................................27 3.1 Introduction................................................................................................................... 27 3.2 I-V Characteristics of DC Motors................................................................................. 28 3.3 DC-DC Converter ......................................................................................................... 31

3.3.1 Topologies .......................................................................................................................... 31 3.3.2 Cúk and SEPIC Converters ................................................................................................ 32 3.3.3 Basic Operation of Cúk Converter...................................................................................... 34

3.4 Mechanism of Load Matching ...................................................................................... 37 3.5 Maximum Power Point Tracking Algorithms............................................................... 38

3.5.1 Perturb & Observe Algorithm............................................................................................. 40 3.5.2 Incremental Conductance Algorithm.................................................................................. 44

3.6 Control of MPPT........................................................................................................... 47 3.6.1 PI Control............................................................................................................................ 47 3.6.2 Direct Control ..................................................................................................................... 48 3.6.3 Output Sensing Direct Control ........................................................................................... 50

3.7 Limitations of MPPT .................................................................................................... 52 Chapter 4 Design and Simulations .....................................................................55

4.1 Introduction................................................................................................................... 55 4.2 Cúk Converter Design................................................................................................... 55

4.2.1 Component Selection.......................................................................................................... 56 4.2.2 PSpice Simulations ............................................................................................................. 59 4.2.3 Choice of MPPT Sampling Rate......................................................................................... 61

4.3 Comparisons of P&O and incCond Algorithm............................................................. 62 4.4 MPPT Simulations with Resistive Load ....................................................................... 66

Page 7: Ao thesis

vii

4.5 MPPT Simulations with DC Pump Motor Load........................................................... 70 4.5.1 Modeling of DC Water Pump............................................................................................. 71 4.5.2 MATLAB Simulation Results ............................................................................................ 73

4.6 System with MPPT vs. Direct-coupled System............................................................ 75 Chapter 5 Conclusion..........................................................................................78

5.1 Summary....................................................................................................................... 78 5.2 Difficulties and Future Research .................................................................................. 79 5.3 Concluding Remarks..................................................................................................... 80

Bibliography .......................................................................................................81 Appendix A.........................................................................................................84

A.1 MATLAB Functions and Scripts ................................................................................. 84 A.1.1 MATLAB Function for Modeling BP SX 150S PV Module............................................. 84 A.1.2 MATLAB Script to Draw PV I-V Curves ......................................................................... 85 A.1.3 MATLAB Function to Find the MPP ................................................................................ 86 A.1.4 MATLAB Script: P&O Algorithm .................................................................................... 86 A.1.5 MATLAB Script: incCond Algorithm............................................................................... 88 A.1.6 MATLAB Script for MPPT with Output Sensing Direct Control Method........................ 90 A.1.7 MATLAB Script for MPPT Simulations with DC Pump Motor Load.............................. 93 A.1.8 MATLAB Script for MPPT Simulations with Direct-coupled DC Water Pump .............. 97

A.2 MPPT Simulations with Resistive Load .................................................................... 100 A.2.1 Direct Control Method with P&O Algorithm.................................................................. 100 A.2.2 Direct Control Method with incCond Algorithm............................................................. 101

Appendix B .......................................................................................................102 B.1 DSP Control ............................................................................................................... 102

B.1.1 TMS320F2812 DSP......................................................................................................... 102 B.1.2 SIMULNK and TI DSP.................................................................................................... 102 B.1.3 Example ........................................................................................................................... 103

Page 8: Ao thesis

viii

List of Tables

Table 1-1: PV powered, Diesel powered, vs. Windmill [13].................................................... 3 Table 2-1: Electrical characteristics data of PV module taken from the datasheet [1]........... 18 Table 3-1: Load matching with the resistive load (6) under the varying irradiance............ 53 Table 3-2: Load matching with the resistive load (12) under the varying irradiance.......... 53 Table 4-1: Design specification of the Cúk Converter ........................................................... 55 Table 4-2: Cúk converter design: comparisons of simulations and calculated results ........... 60 Table 4-3: Comparison of the P&O and incCond algorithms on a cloudy day ...................... 65 Table 4-4: Energy production and efficiency of PV module with and without MPPT .......... 75 Table 4-5: Total volume of water pumped for 12 hours......................................................... 77

Page 9: Ao thesis

ix

List of Figures

Figure 1-1: Block diagram of the proposed PV water pumping system................................... 5 Figure 2-1: Illustration of the p-n junction of PV cell [16]..................................................... 11 Figure 2-2: Illustrated side view of solar cell and the conducting current [16] ...................... 11 Figure 2-3: PV cell with a load and its simple equivalent circuit [16] ................................... 12 Figure 2-4: Diagrams showing a short-circuit and an open-circuit condition [16]................. 13 Figure 2-5: I-V plot of ideal PV cell under two different levels of irradiance (25oC)............ 15 Figure 2-6: More accurate equivalent circuit of PV cell......................................................... 16 Figure 2-7: PV cells are connected in series to make up a PV module .................................. 17 Figure 2-8: Picture of BP SX 150S PV module [1] ................................................................ 18 Figure 2-9: Equivalent circuit used in the MATLAB simulations ......................................... 19 Figure 2-10: Effect of diode ideally factors by MATLAB simulation (1KW/m2, 25oC) ....... 21 Figure 2-11: Effect of series resistances by MATLAB simulation (1KW/m2, 25oC) ............ 22 Figure 2-12: I-V curves of BP SX 150S PV module at various temperatures........................ 24 Figure 2-13: Simulated I-V curve of BP SX 150S PV module (1KW/m2, 25oC) .................. 25 Figure 2-14: I-V and P-V relationships of BP SX 150S PV module...................................... 26 Figure 3-1: PV module is directly connected to a (variable) resistive load............................ 27 Figure 3-2: I-V curves of BP SX 150S PV module and various resistive loads..................... 28 Figure 3-3: Electrical model of permanent magnet DC motor ............................................... 29 Figure 3-4: PV I-V curves with varying irradiance and a DC motor I-V curve ..................... 30 Figure 3-5: PV I-V curves with iso-power lines (dotted) and a DC motor I-V curve ............ 31 Figure 3-6: Circuit diagram of the basic Cúk converter ......................................................... 34 Figure 3-7: Circuit diagram of the basic SEPIC converter ..................................................... 34 Figure 3-8: Basic Cúk converter when the switch is ON........................................................ 35 Figure 3-9: Basic Cúk converter when the switch is OFF ...................................................... 35 Figure 3-10: The impedance seen by PV is Rin that is adjustable by duty cycle (D).............. 38 Figure 3-11: I-V curves for varying irradiance and a trace of MPPs (25oC).......................... 39 Figure 3-12: I-V curves for varying irradiance and a trace of MPPs (50oC).......................... 40 Figure 3-13: Plot of power vs. voltage for BP SX 150S PV module (1KW/m2, 25oC).......... 41 Figure 3-14: Flowchart of the P&O algorithm ....................................................................... 41 Figure 3-15: Erratic behavior of the P&O algorithm under rapidly increasing irradiance..... 43 Figure 3-16: Flowchart of the incCond algorithm .................................................................. 46 Figure 3-17: Block diagram of MPPT with the PI compensator ............................................ 48 Figure 3-18: Block diagram of MPPT with the direct control................................................ 48 Figure 3-19: Relationship of the input impedance of Cúk converter and its duty cycle ........ 49 Figure 3-20: Output power of Cúk converter vs. its duty cycle (1KW/m2, 25oC).................. 51 Figure 3-21: Flowchart of P&O algorithm for the output sensing direct control method ...... 52 Figure 4-1: Schematic of the Cúk converter with PMDC motor load .................................... 59 Figure 4-2: PSpice plots of input/output current (above) and voltage (below) ...................... 60 Figure 4-3: Transient response when duty cycle is increased 0.35% at 250ms...................... 61 Figure 4-4: Searching the MPP (1KW/m2, 25oC)................................................................... 62 Figure 4-5: Irradiance data for a sunny and a cloudy day of April in Barcelona, Spain [2]... 63 Figure 4-6: Traces of MPP tracking on a sunny day (25oC)................................................... 64 Figure 4-7: Trace of MPP tracking on a cloudy day (25oC) ................................................... 65

Page 10: Ao thesis

x

Figure 4-8: MPPT simulation flowchart ................................................................................. 68 Figure 4-9: MPPT simulations with the resistive load (100 to 1000W/m2, 25oC) ................. 69 Figure 4-10: Output protection & regulation (100 to 1000W/m2, 25oC)................................ 70 Figure 4-11: Kyocera SD 12-30 water pump performance chart [13].................................... 71 Figure 4-12: SIMULINK model of permanent magnet DC pump motor............................... 72 Figure 4-13: SIMULINK DC machine block parameters....................................................... 72 Figure 4-14: SIMULINK plot of Rload ().............................................................................. 73 Figure 4-15: MPPT simulations with the DC pump motor load (20 to 1000W/m2, 25oC)..... 74 Figure 4-16: SIMULINK plot of DC motor I-V curve ........................................................... 75 Figure 4-17: Flow rates of PV water pumps for a 12-hour period.......................................... 76 Figure A-1: MPPT Simulations with the direct control method (P&O algorithm) .............. 100 Figure A-2: MPPT Simulations with the direct control method (incCond algorithm) ......... 101 Figure B-1: A simple example of generating PWM from the voltage input ........................ 103 Figure B-2: Plots of the input voltage and the PWM output shown as duty cycle ............... 103

Page 11: Ao thesis

1

Chapter 1 Introduction

Water resources are essential for satisfying human needs, protecting health, and

ensuring food production, energy and the restoration of ecosystems, as well as for social and

economic development and for sustainable development [25]. However, according to UN

World Water Development Report in 2003, it has been estimated that two billion people are

affected by water shortages in over forty countries, and 1.1 billion do not have sufficient

drinking water [26]. There is a great and urgent need to supply environmentally sound

technology for the provision of drinking water. Remote water pumping systems are a key

component in meeting this need. It will also be the first stage of the purification and

desalination plants to produce potable water.

In this thesis, a simple but efficient photovoltaic water pumping system is presented.

It provides theoretical studies of photovoltaics (PV) and its modeling techniques. It also

investigates in detail the maximum power point tracker (MPPT), a power electronic device

that significantly increases the system efficiency. At last, it presents MATLAB simulations

of the system and makes comparisons with a system without MPPT.

1.1 Water Pumping Systems and Photovoltaic Power

A water pumping system needs a source of power to operate. In general, AC

powered system is economic and takes minimum maintenance when AC power is available

from the nearby power grid. However, in many rural areas, water sources are spread over

many miles of land and power lines are scarce. Installation of a new transmission line and a

transformer to the location is often prohibitively expensive. Windmills have been installed

Page 12: Ao thesis

2

traditionally in such areas; many of them are, however, inoperative now due to lack of proper

maintenance and age. Today, many stand-alone type water pumping systems use internal

combustion engines. These systems are portable and easy to install. However, they have

some major disadvantages, such as: they require frequent site visits for refueling and

maintenance, and furthermore diesel fuel is often expensive and not readily available in rural

areas of many developing countries.

The consumption of fossil fuels also has an environmental impact, in particular the

release of carbon dioxide (CO2) into the atmosphere. CO2 emissions can be greatly reduced

through the application of renewable energy technologies, which are already cost competitive

with fossil fuels in many situations. Good examples include large-scale grid-connected wind

turbines, solar water heating, and off-grid stand-alone PV systems [24]. The use of

renewable energy for water pumping systems is, therefore, a very attractive proposition.

Windmills are a long-established method of using renewable energy; however they

are quickly phasing out from the scene despite success of large-scale grid-tied wind turbines.

PV systems are highly reliable and are often chosen because they offer the lowest

life-cycle cost, especially for applications requiring less than 10KW, where grid electricity is

not available and where internal-combustion engines are expensive to operate [24]. If the

water source is 1/3 mile (app. 0.53Km) or more from the power line, PV is a favorable

economic choice [13]. Table 1-1 shows the comparisons of different stand-alone type water

pumping systems.

Page 13: Ao thesis

3

System Type Advantages Disadvantages PV Powered System Low maintenance

Unattended operation Reliable long life No fuel and no fumes Easy to install Low recurrent costs System is modular and

closely matched to need

Relatively high initial cost Low output in cloudy

weather

Diesel (or Gas) Powered System

Moderate capital costs Easy to install Can be portable Extensive experience

available

Needs maintenance and replacement Site visits necessary Noise, fume, dirt problems Fuel often expensive and

supply intermittent Windmill No fuel and no fumes

Potentially long-lasting Works well in windy sites

High maintenance Seasonal disadvantages Difficult find parts thus

costly repair Installation is labor

intensive and needs special tools

Table 1-1: PV powered, Diesel powered, vs. Windmill [13]

1.2 Energy Storage Alternatives

Needless to say, photovoltaics are able to produce electricity only when the sunlight

is available, therefore stand-alone systems obviously need some sort of backup energy

storage which makes them available through the night or bad weather conditions.

Among many possible storage technologies, the lead-acid battery continues to be the

workhorse of many PV systems because it is relatively inexpensive and widely available. In

addition to energy storage, the battery also has ability to provide surges of current that are

much higher than the instantaneous current available from the array, as well as the inherent

Page 14: Ao thesis

4

and automatic property controlling the output voltage of the array so that loads receive

voltages within their own range of acceptability [16].

While batteries may seem like a good idea, they have a number of disadvantages.

The type of lead-acid battery suitable for PV systems is a deep-cycle battery [15], which is

different from one used for automobiles, and it is more expensive and not widely available.

Battery lifetime in PV systems is typically three to eight years, but this reduces to typically

two to six years in hot climate since high ambient temperature dramatically increases the rate

of internal corrosion [24]. Batteries also require regular maintenance and will degrade very

rapidly if the electrolyte is not topped up and the charge is not maintained. They reduce the

efficiency of the overall system due to power loss during charge and discharge. Typical

battery efficiency is around 85% but could go below 75% in hot climate [24]. From all those

reasons, experienced PV system designers avoid batteries whenever possible.

For water pumping systems, appropriately sized water reservoirs can meet the

requirement of energy storage during the downtime of PV generation. The additional cost of

reservoir is considerably lower than that incurred by the battery equipped system. As a

matter of fact, only about five percent of solar pumping systems employ a battery bank [13].

1.3 The Proposed System

The experimental water pumping system proposed in this thesis is a stand-alone type

without backup batteries. As shown in Figure 1-1, the system is very simple and consists of

a single PV module, a maximum power point tracker (MPPT), and a DC water pump. The

size of the system is intended to be small; therefore it could be built in the lab in the future.

The system including the subsystems will be simulated to verify the functionalities.

Page 15: Ao thesis

5

Figure 1-1: Block diagram of the proposed PV water pumping system

1.3.1 PV Module

There are different sizes of PV module commercially available (typically sized from

60W to 170W). Usually, a number of PV modules are combined as an array to meet

different energy demands. For example, a typical small-scale desalination plant requires a

few thousand watts of power [24]. The size of system selected for the proposed system is

150W, which is commonly used in small water pumping systems for cattle grazing in rural

areas of the United States. The power electronics lab located in the building 20, room 104,

has three BP SX 150S multi-crystalline PV modules. Each module provides a maximum

power of 150W [13], therefore the proposed system requires only one of them. A detailed

discussion about PV and modeling of PV appears in Chapter 2.

1.3.2 Maximum Power Point Tracker

The maximum power point tracker (MPPT) is now prevalent in grid-tied PV power

systems and is becoming more popular in stand-alone systems. It should not be confused

with sun trackers, mechanical devices that rotate and/or tilt PV modules in the direction of

sun. MPPT is a power electronic device interconnecting a PV power source and a load,

DC Water Pump [13] PV Module [1]

Page 16: Ao thesis

6

maximizes the power output from a PV module or array with varying operating conditions,

and therefore maximizes the system efficiency. MPPT is made up with a switch-mode DC-

DC converter and a controller. For grid-tied systems, a switch-mode inverter sometimes fills

the role of MPPT. Otherwise, it is combined with a DC-DC converter that performs the

MPPT function.

In addition to MPPT, the system could also employ a sun tracker. According to the

data in reference [15], the single-axis sun tracker can collect about 40% more energy than a

seasonally optimized fixed-axis collector in summer in a dry climate such as Albuquerque,

New Mexico. In winter, however, it can gain only 20% more energy. In a climate with more

water vapor in the atmosphere such as Seattle, Washington, the effect of sun tracker is

smaller because a larger fraction of solar irradiation is diffuse. It collects 30% more energy

in summer, but the gain is less than 10% in winter. The two-axis tracker is only a few

percent better than the single-axis version. Sun tracking enables the system to meet energy

demand with smaller PV modules, but it increases the cost and complexity of system. Since

it is made of moving parts, there is also a higher chance of failure. Therefore, in this simple

system, the sun tracker is not implemented. A detailed discussion on MPPT appears in

Chapter 3.

1.3.3 MPPT Controller

Analog controllers have traditionally performed control of MPPT. However, the use

of digital controllers is rapidly increasing because they offer several advantages over analog

controllers. First, digital controllers are programmable thus capable of implementing

advanced algorithm with relative ease. It is far easier to code the equation, x = y × z, than to

design an analog circuit to do the same [23]. For the same reason, modification of the design

Page 17: Ao thesis

7

is much easier with digital controllers. They are immune to time and temperature drifts

because they work in discrete, outside the linear operation. As a result, they offer long-term

stability. They are also insensitive to component tolerances since they implement algorithm

in software, where gains and parameters are consistent and reproducible [23]. They allow

reduction of parts count since they can handle various tasks in a single chip. Many of them

are also equipped with multiple A/D converters and PWM generators, thus they can control

multiple devices with a single controller.

This thesis, therefore, chooses a method of digital control for MPPT. The design and

simulations of MPPT in Chapter 4 are done on the premise that it is going to be built with a

microcontroller or a DSP, and the algorithm is readily transferable to its implementation.

Chapter 3 provides discussions of various control methods. Appendix B provides

introduction of Texas Instruments DSP and SIMULINK as an implementation tool.

1.3.4 Water Pump

Two types of pumps are commonly used for PV water pumping applications: positive

displacement and centrifugal [19]. Positive displacement types are used in low-volume

pumps [13] and cost-effective. Centrifugal pumps have relatively high efficiency [19] and

are capable of pumping a high volume of water [13]. A typical size of system with this type

pump is at least 500W or larger. There is a growing trend among the pump manufacturers to

use them with brushless DC motors (BDCM) for higher efficiency and low maintenance [19].

However, the cost and complexity of these systems will be significantly higher. Water

pumps are driven by various types of motors. AC induction motors are cheaper and widely

available worldwide. The system, however, needs an inverter to convert DC output power

from PV to AC power, which is usually expensive, and it is also less efficient than DC

Page 18: Ao thesis

8

motor-pump systems [19]. In general, DC motors are preferred because they are highly

efficient and can be directly coupled with a PV module or array. Brushed types are less

expensive and more common although brushes need to be replaced periodically (typically

every two years) [19]. There is also an aforementioned brushless type.

The water pump chosen here for its size and cost is the Kyocera SD 12-30

submersible solar pump, pictured in Figure 1-1. It is a diaphragm-type positive displacement

pump equipped with a brushed permanent magnet DC motor and designed for use in stand-

alone water delivery systems, specifically for water delivery in remote locations. Flow rates

up to 17.0L/min (4.5GPM) and heads up to 30.0m (100ft.) [13]. The typical daily output is

between 2,700L and 5,000L [13]. The rated maximum power consumption is 150W. It

operates with a low voltage (12~30V DC), and its power requirement is as little as 35W [13].

A simple model of this water pump is used for simulations in Chapter 4.

1.4 Background and Scope of This Thesis

The impetus for this research is to investigate the use of power electronics in

renewable energy, particularly photovoltaics (PV). Numerous studies have been done in PV

systems, a significant number of them in Europe, Japan, and Australia. In the United Sates,

there is a growing interest in PV, but research and development in PV systems is far behind

from the aforementioned countries, and unfortunately, California State Universities (CSUs)

are no exception. There are only a small number of studies related to PV systems in the past.

Among them, there were a few senior projects which built PV facilities here in California

Polytechnic State University, San Luis Obispo. Two senior projects, also here, built a simple

PV battery charger, and a few others dealt with a sun tracker. There have been only two

master’s theses written about PV systems in the CSU system. The first attempt to study

Page 19: Ao thesis

9

MPPT was made by Dang [4] of California Polytechnic State University, Pomona. The

thesis built a small PV module simulator and a buck converter without a controller. Then, it

provided a rudimentary computer simulation of MPPT with a resistive load. The study was,

however, far from comprehensive. Another was done here by Day [5], and it centered round

a power system for a miniature satellite. It included MPPT in the system, but the

functionality of MPPT was not tested. The theoretical study was insufficient, and it lacked

simulations and experiments to ensure the functionality of MPPT.

MPPT is one of many applications of power electronics, and it is a relatively new and

unknown area. There is no textbook that provides comprehensive and detailed explanations

about MPPT. Therefore, this thesis investigates it in detail and provides better explanations

for students who are interested in this research area. In order to understand and design

MPPT, it is necessary to have a good understanding of the behaviors of PV. The thesis

facilitates it using MATLAB models of PV cell and module. Each subsystem in the PV

water pumping system is modeled for MATLAB simulations. Finally, the functionality of

MPPT for water pumping systems is verified and validated.

This thesis is limited to providing theoretical studies and simulations of PV water

pumping system with MPPT. The system will not be built in this thesis; that is left as future

work. Thus, it will not cover a discussion about actual implementation of DSP or

microcontrollers, nor other hardware implementation, beyond a discussion on component

selection for the DC-DC converter. A major assumption made in simulations is the use of an

ideal DC-DC converter, as opposed to a more realistic model that includes losses. The model,

however, should provide sufficient results for verification of MPPT functionality.

Page 20: Ao thesis

10

Chapter 2 Photovoltaic Modules

2.1 Introduction

The history of PV dates back to 1839 when a French physicist, Edmund Becquerel,

discovered the first photovoltaic effect when he illuminated a metal electrode in an

electrolytic solution [16]. Thirty-seven years later British physicist, William Adams, with his

student, Richard Day, discovered a photovoltaic material, selenium, and made solid cells

with 1~2% efficiency which were soon widely adopted in the exposure meters of camera [16].

In 1954 the first generation of semiconductor silicon-based PV cells was born, with

efficiency of 6% [3], and adopted in space applications. Today, the production of PV cells is

following an exponential growth curve since technological advancement of late ‘80s that has

started to rapidly improve efficiency and reduce cost.

This chapter discusses the fundamentals of PV cells and modeling of a PV cell using

an equivalent electrical circuit. The models are implemented using MATLAB to study PV

characteristics and simulate a real PV module.

2.2 Photovoltaic Cell

Photons of light with energy higher than the band-gap energy of PV material can

make electrons in the material break free from atoms that hold them and create hole-electron

pairs, as shown in Figure 2-1. These electrons, however, will soon fall back into holes

causing charge carriers to disappear. If a nearby electric field is provided, those in the

conduction band can be continuously swept away from holes toward a metallic contact where

Page 21: Ao thesis

11

they will emerge as an electric current. The electric field within the semiconductor itself at

the junction between two regions of crystals of different type, called a p-n junction [16].

Figure 2-1: Illustration of the p-n junction of PV cell [16]

Showing hole-electron pairs created by photons

The PV cell has electrical contacts on its top and bottom to capture the electrons, as

shown in Figure 2-2. When the PV cell delivers power to the load, the electrons flow out of

the n-side into the connecting wire, through the load, and back to the p-side where they

recombine with holes [16]. Note that conventional current flows in the opposite direction

from electrons.

Figure 2-2: Illustrated side view of solar cell and the conducting current [16]

Page 22: Ao thesis

12

2.3 Modeling a PV Cell

The use of equivalent electric circuits makes it possible to model characteristics of a

PV cell. The method used here is implemented in MATLAB programs for simulations. The

same modeling technique is also applicable for modeling a PV module.

2.3.1 The Simplest Model

The simplest model of a PV cell is shown as an equivalent circuit below that consists

of an ideal current source in parallel with an ideal diode. The current source represents the

current generated by photons (often denoted as Iph or IL), and its output is constant under

constant temperature and constant incident radiation of light.

Figure 2-3: PV cell with a load and its simple equivalent circuit [16]

There are two key parameters frequently used to characterize a PV cell. Shorting

together the terminals of the cell, as shown in Figure 2-4 (a), the photon generated current

will follow out of the cell as a short-circuit current (Isc). Thus, Iph = Isc. As shown in Figure

2-4 (b), when there is no connection to the PV cell (open-circuit), the photon generated

current is shunted internally by the intrinsic p-n junction diode. This gives the open circuit

voltage (Voc). The PV module or cell manufacturers usually provide the values of these

parameters in their datasheets.

Page 23: Ao thesis

13

Figure 2-4: Diagrams showing a short-circuit and an open-circuit condition [16]

The output current (I) from the PV cell is found by applying the Kirchoff’s current

law (KCL) on the equivalent circuit shown in Figure 2-3.

dsc III −= (2.1)

where: Isc is the short-circuit current that is equal to the photon generated current, and Id is

the current shunted through the intrinsic diode.

The diode current Id is given by the Shockley’s diode equation:

)1( / −= kTqVod

deII (2.2)

where: Io is the reverse saturation current of diode (A),

q is the electron charge (1.602×10-19 C),

Vd is the voltage across the diode (V),

k is the Boltzmann’s constant (1.381×10-23 J/K),

T is the junction temperature in Kelvin (K).

Replacing Id of the equation (2.1) by the equation (2.2) gives the current-voltage

relationship of the PV cell.

)1( / −−= kTqVosc eIII (2.3)

where: V is the voltage across the PV cell, and I is the output current from the cell.

Page 24: Ao thesis

14

The reverse saturation current of diode (Io) is constant under the constant temperature

and found by setting the open-circuit condition as shown in Figure 2-4 (b). Using the

equation (2.3), let I = 0 (no output current) and solve for Io.

)1(0 / −−= kTqVosc

oceII (2.4)

)1( / −= kTqVosc

oceII (2.5)

)1( / −= kTqV

sco oce

II (2.6)

To a very good approximation, the photon generated current, which is equal to Isc, is

directly proportional to the irradiance, the intensity of illumination, to PV cell [15]. Thus, if

the value, Isc, is known from the datasheet, under the standard test condition, Go=1000W/m2

at the air mass (AM) = 1.5, then the photon generated current at any other irradiance, G

(W/m2), is given by:

Gosco

Gsc IGG

I ||

= (2.7)

Figure 2-5 shows that current and voltage relationship (often called as an I-V curve)

of an ideal PV cell simulated by MATLAB using the simplest equivalent circuit model. The

discussion of MATLAB simulations will appear in Section 2.5. The PV cell output is both

limited by the cell current and the cell voltage, and it can only produce a power with any

combinations of current and voltage on the I-V curve. It also shows that the cell current is

proportional to the irradiance.

Page 25: Ao thesis

15

0 0.1 0.2 0.3 0.4 0.5 0.6 0.70

0.5

1

1.5

2

2.5

3

3.5

4

4.5

5

Cell Voltage (V)

Cel

l Cur

rent

(A)

Full Sun (1000W/m2)

Half Sun (500W/m2)

Figure 2-5: I-V plot of ideal PV cell under two different levels of irradiance (25oC)

2.3.2 The More Accurate Model

There are a few things that have not been taken into account in the simple model and

that will affect the performance of a PV cell in practice.

a) Series Resistance

In a practical PV cell, there is a series of resistance in a current path through the

semiconductor material, the metal grid, contacts, and current collecting bus [2]. These

resistive losses are lumped together as a series resister (Rs). Its effect becomes very

conspicuous in a PV module that consists of many series-connected cells, and the value of

resistance is multiplied by the number of cells.

b) Parallel Resistance

This is also called shunt resistance. It is a loss associated with a small leakage of

current through a resistive path in parallel with the intrinsic device [2]. This can be

Page 26: Ao thesis

16

represented by a parallel resister (Rp). Its effect is much less conspicuous in a PV module

compared to the series resistance, and it will only become noticeable when a number of PV

modules are connected in parallel for a larger system.

c) Recombination

Recombination in the depletion region of PV cells provides non-ohmic current paths

in parallel with the intrinsic PV cell [2] [7]. As shown in Figure 2-6, this can be represented

by the second diode (D2) in the equivalent circuit.

Rp

Rs

D1 D2Isc

Load

-

+

Figure 2-6: More accurate equivalent circuit of PV cell

Summarizing these effects, the current-voltage relationship of PV cell is written as:

⋅+−

−−

−−=

⋅+

⋅+

p

skTRIV

q

okT

RIVq

osc RRIV

eIeIIIss

11 221 (2.8)

It is possible to combine the first diode (D1) and the second diode (D2) and rewrite

the equation (2.8) in the following form.

⋅+−

−−=

⋅+

p

snkTRIV

q

osc RRIV

eIIIs

1 (2.9)

where: n is known as the “ideality factor” (“n” is sometimes denoted as “A”) and takes the

value between one and two [7].

V n=1 n=2

Page 27: Ao thesis

17

2.4 Photovoltaic Module

A single PV cell produces an output voltage less than 1V, about 0.6V for crystalline-

silicon (Si) cells, thus a number of PV cells are connected in series to archive a desired

output voltage. When series-connected cells are placed in a frame, it is called as a module.

Most of commercially available PV modules with crystalline-Si cells have either 36 or 72

series-connected cells. A 36-cell module provides a voltage suitable for charging a 12V

battery, and similarly a 72-cell module is appropriate for a 24V battery. This is because most

of PV systems used to have backup batteries, however today many PV systems do not use

batteries; for example, grid-tied systems. Furthermore, the advent of high efficiency DC-DC

converters has alleviated the need for modules with specific voltages. When the PV cells are

wired together in series, the current output is the same as the single cell, but the voltage

output is the sum of each cell voltage, as shown in Figure 2-7.

0 5 10 15 20 25 30 35 40 450

0.5

1

1.5

2

2.5

3

3.5

4

4.5

5

Voltage (V)

Cur

rent

(A)

0.6V for each cell

3 cells

9 cells 36 cells

72 cells

Figure 2-7: PV cells are connected in series to make up a PV module

Page 28: Ao thesis

18

Also, multiple modules can be wired together in series or parallel to deliver the

voltage and current level needed. The group of modules is called an array.

2.5 Modeling a PV Module by MATLAB

BP Solar BP SX 150S PV module, pictured in Figure 2-8, is chosen for a MATLAB

simulation model. The module is made of 72 multi-crystalline silicon solar cells in series and

provides 150W of nominal maximum power [1]. Table 2-1 shows its electrical specification.

Figure 2-8: Picture of BP SX 150S PV module [1]

Electrical Characteristics Maximum Power (Pmax) 150W Voltage at Pmax (Vmp) 34.5V Current at Pmax (Imp) 4.35A Open-circuit voltage (Voc) 43.5V Short-circuit current (Isc) 4.75A Temperature coefficient of Isc 0.065 ± 0.015 %/ oC Temperature coefficient of Voc -160 ± 20 mV/ oC Temperature coefficient of power -0.5 ± 0.05 %/ oC NOCT 47 ± 2oC

Table 2-1: Electrical characteristics data of PV module taken from the datasheet [1]

The strategy of modeling a PV module is no different from modeling a PV cell. It

uses the same PV cell model. The parameters are the all same, but only a voltage parameter

(such as the open-circuit voltage) is different and must be divided by the number of cells.

Page 29: Ao thesis

19

The study done by Walker [27] of University of Queensland, Australia, uses the

electric model with moderate complexity, shown in Figure 2-9, and provides fairly accurate

results. The model consists of a current source (Isc), a diode (D), and a series resistance (Rs).

The effect of parallel resistance (Rp) is very small in a single module, thus the model does not

include it. To make a better model, it also includes temperature effects on the short-circuit

current (Isc) and the reverse saturation current of diode (Io). It uses a single diode with the

diode ideality factor (n) set to achieve the best I-V curve match.

Rs

DIsc

Load

-

+

Figure 2-9: Equivalent circuit used in the MATLAB simulations

Since it does not include the effect of parallel resistance (Rp), letting Rp = in the

equation (2.9) gives the equation [27] that describes the current-voltage relationship of the

PV cell, and it is shown below.

−−=

⋅+

1nkTRIV

q

osc

s

eIII (2.10)

where: I is the cell current (the same as the module current),

V is the cell voltage = module voltage ÷ # of cells in series,

T is the cell temperature in Kelvin (K).

V

Page 30: Ao thesis

20

First, calculate the short-circuit current (Isc) at a given cell temperature (T):

( )[ ]refTscTsc TTaIIref

−+⋅= 1|| (2.11)

where: Isc at Tref is given in the datasheet (measured under irradiance of 1000W/m2),

Tref is the reference temperature of PV cell in Kelvin (K), usually 298K (25oC),

a is the temperature coefficient of Isc in percent change per degree temperature also

given in the datasheet.

The short-circuit current (Isc) is proportional to the intensity of irradiance, thus Isc at a

given irradiance (G) is:

Gosco

Gsc IGG

I ||

= (2.12)

where: Go is the nominal value of irradiance, which is normally 1KW/m2.

The reverse saturation current of diode (Io) at the reference temperature (Tref) is given

by the equation (2.6) with the diode ideality factor added:

)1( / −= nkTqV

sco oce

II (2.13)

The reverse saturation current (Io) is temperature dependant and the Io at a given

temperature (T) is calculated by the following equation [27].

⋅⋅−

⋅= ref

g

ref

TTkn

Eqn

refToTo e

TT

II11

3

|| (2.14)

The diode ideality factor (n) is unknown and must be estimated. It takes a value

between one and two; the value of n=1 (for the ideal diode) is, however, used until the more

accurate value is estimated later by curve fitting [27]. Figure 2-10 shows the effect of the

varying ideality factor.

Page 31: Ao thesis

21

0 5 10 15 20 25 30 35 40 450

0.5

1

1.5

2

2.5

3

3.5

4

4.5

5

Module Voltage (V)

Mod

ule

Cur

rent

(A)

n=2

n=1

Figure 2-10: Effect of diode ideally factors by MATLAB simulation (1KW/m2, 25oC)

The series resistance (Rs) of the PV module has a large impact on the slope of the I-V

curve near the open-circuit voltage (Voc), as shown in Figure 2-11, hence the value of Rs is

calculated by evaluating the slope dIdV

of the I-V curve at the Voc [27]. The equation for Rs is

derived by differentiating the equation (2.10) and then rearranging it in terms of Rs.

−−=

⋅+

1nkTRIV

q

osc

s

eIII (2.15)

⋅+

⋅+⋅−= nkTRIV

qs

o

s

enkT

dIRdVqIdI 0 (2.16)

⋅+

−−=nkT

RIVq

o

ss

eI

qnkTdVdI

R (2.17)

Page 32: Ao thesis

22

Then, evaluate the equation (2.17) at the open circuit voltage that is V=Voc (also let I=0).

nkTqV

oV

soc

oc eI

qnkTdIdV

R

⋅−−= (2.18)

where: ocVdI

dVis the slope of the I-V curve at the Voc (use the I-V curve in the datasheet then

divide it by the number of cells in series),

Voc is the open-circuit voltage of cell (found by dividing Voc in the datasheet by the

number of cells in series).

The calculation using the slope measurement of the I-V curve published on the BP SX

150 datasheet gives a value of the series resistance per cell, Rs = 5.1m.

0 5 10 15 20 25 30 35 40 450

0.5

1

1.5

2

2.5

3

3.5

4

4.5

5

Module Voltage (V)

Mod

ule

Cur

rent

(A)

Rs=15 mOhm

Rs=0

Rs=10 mOhm

Rs=5 mOhm

Figure 2-11: Effect of series resistances by MATLAB simulation (1KW/m2, 25oC)

Finally, it is possible to solve the equation of I-V characteristics (2.10). It is, however,

complex because the solution of current is recursive by inclusion of a series resistance in the

Page 33: Ao thesis

23

model. Although it may be possible to find the answer by simple iterations, the Newton’s

method is chosen for rapid convergence of the answer [27]. The Newton’s method is

described as:

( )( )n

nnn xf

xfxx

′−=+1 (2.19)

where: )(xf ′ is the derivative of the function, 0)( =xf , nx is a present value, and 1+nx is a

next value.

Rewriting the equation (2.10) gives the following function:

01)( =

−−−=

⋅+nkT

RIVq

osc

s

eIIIIf (2.20)

Plugging this into the equation (2.19) gives a following recursive equation, and the output

current (I) is computed iteratively.

⋅+

⋅+

+

⋅−−

−−−

−=nkT

RIVq

so

nkTRIV

q

onsc

nnsn

sn

enkT

RqI

eIII

II

1

1

1 (2.21)

The MATLAB function written in this thesis performs the calculation five times

iteratively to ensure convergence of the results. The testing result has shown that the value

of In usually converges within three iterations and never more than four interactions. Please

refer to Appendix A.1.1 for this MATLAB function.

Figure 2-12 shows the plots of I-V characteristics at various module temperatures

simulated with the MATLAB model for BP SX 150S PV module. Data points superimposed

on the plots are taken from the I-V curves published on the manufacturer’s datasheet [1].

After some trials with various diode ideality factors, the MATLAB model chooses the value

Page 34: Ao thesis

24

of n = 1.62 that attains the best match with the I-V curve on the datasheet. The figure shows

good correspondence between the data points and the simulated I-V curves.

Figure 2-12: I-V curves of BP SX 150S PV module at various temperatures

Simulated with the MATLAB model (1KW/m2, 25oC)

O0C 250C

500C 750C

Page 35: Ao thesis

25

2.6 The I-V Curve and Maximum Power Point

Figure 2-13 shows the I-V curve of the BP SX 150S PV module simulated with the

MATLAB model. A PV module can produce the power at a point, called an operating point,

anywhere on the I-V curve. The coordinates of the operating point are the operating voltage

and current. There is a unique point near the knee of the I-V curve, called a maximum power

point (MPP), at which the module operates with the maximum efficiency and produces the

maximum output power. It is possible to visualize the location of the by fitting the largest

possible rectangle inside of the I-V curve, and its area equal to the output power which is a

product of voltage and current.

0 5 10 15 20 25 30 35 40 45 500

0.5

1

1.5

2

2.5

3

3.5

4

4.5

5

Module Voltage (V)

Mod

ule

Cur

rent

(A

)

P1 = 150.0W

P2 = 108.2W

P3 = 94.9WIsc = 4.75A

Voc = 43.5V

Impp = 4.35A

Vmpp = 34.5V

Maximum Power Point (MPP)

Figure 2-13: Simulated I-V curve of BP SX 150S PV module (1KW/m2, 25oC)

The power vs. voltage plot is overlaid on the I-V plot of the PV module, as shown in

Figure 2-14. It reveals that the amount of power produced by the PV module varies greatly

Page 36: Ao thesis

26

depending on its operating condition. It is important to operate the system at the MPP of PV

module in order to exploit the maximum power from the module. The next chapter will

discuss how to do it.

0 10 20 30 40 450

1

2

3

4

5

6

7

8M

odul

e C

urre

nt (

A)

Module Voltage (V)0 5 10 15 20 25 30 35 40 45

0

20

40

60

80

100

120

140

160

Mod

ule

Out

put P

ower

(W

)

MPP

Voc

Isc

Vmpp

Impp

Pmax

Figure 2-14: I-V and P-V relationships of BP SX 150S PV module

Simulated with the MATLAB model (1KW/m2, 25oC)

Page 37: Ao thesis

27

Chapter 3 Maximum Power Point Tracker

3.1 Introduction

When a PV module is directly coupled to a load, the PV module’s operating point

will be at the intersection of its I–V curve and the load line which is the I-V relationship of

load. For example in Figure 3-1, a resistive load has a straight line with a slope of 1/Rload as

shown in Figure 3-2. In other words, the impedance of load dictates the operating condition

of the PV module. In general, this operating point is seldom at the PV module’s MPP, thus it

is not producing the maximum power. A study shows that a direct-coupled system utilizes a

mere 31% of the PV capacity [11]. A PV array is usually oversized to compensate for a low

power yield during winter months. This mismatching between a PV module and a load

requires further over-sizing of the PV array and thus increases the overall system cost. To

mitigate this problem, a maximum power point tracker (MPPT) can be used to maintain the

PV module’s operating point at the MPP. MPPTs can extract more than 97% of the PV

power when properly optimized [9].

This chapter discusses the I-V characteristics of PV modules and loads, matching

between the two, and the use of DC-DC converters as a means of MPPT. It also discusses

the details of some MPPT algorithms and control methods, and limitations of MPPT.

-

+

PV R

Figure 3-1: PV module is directly connected to a (variable) resistive load

I

V

Page 38: Ao thesis

28

0 5 10 15 20 25 30 35 40 45 500

0.5

1

1.5

2

2.5

3

3.5

4

4.5

5

Module Voltage (V)

Mod

ule

Cur

rent

(A)

MPP

R=7.93 Ohms

R=16 OhmsSlope=1/R

R=4 Ohms

*

*

*

Figure 3-2: I-V curves of BP SX 150S PV module and various resistive loads

Simulated with the MATLAB model (1KW/m2, 25oC)

3.2 I-V Characteristics of DC Motors

Many PV water pumping systems employ DC motors (instead of AC motors) because

they could be directly coupled with PV arrays and make a very simple system. Among

different types of DC motors, a permanent magnet DC (PMDC) motor is preferred in PV

systems because it can provide higher starting torque. Figure 3-3 shows an electrical model

of a PMDC motor. When the motor is turning, it produces a back emf, or a counter-

electromotive force, described as an electric potential (E) proportional to the angular speed

() of the rotor. From the equivalent circuit, the DC voltage equation for the armature circuit

is:

ω⋅+⋅= KRIV a (3.1)

where: Ra is the armature resistance.

Increasing R

Page 39: Ao thesis

29

The back emf is E=K· where: K is the constant, and is the angular speed of rotor in

rad/sec.

Ra

-

+

E=KwPV

Figure 3-3: Electrical model of permanent magnet DC motor

Figure 3-4 shows an example of current-voltage relationship (I-V curve) of a DC

motor. Applying the voltage to start the motor, the current rises rapidly with increasing

voltage until the current is sufficient to create enough starting torque to break the motor loose

from static friction [16]. At start-up (=0), there is no effect of back emf, therefore the

starting current builds up linearly with a steep slope of 1/Ra on the I-V plot as shown in

Figure 3-4. Once it starts to run, the back emf takes effect and drops the current, therefore

the current rises slowly with increasing voltage.

As mentioned already a simple type of PV water pumping systems uses a direct

coupled PV-motor setup. This configuration has a severe disadvantage in efficiency because

of a mismatched operating point, as shown in Figure 3-4. For this example, the water

pumping system would not start operating until irradiance reaches at 400W/m2. Once it starts

to run, it requires as little as 200W/m2 of irradiance to maintain the minimum operation. This

means that the system cannot utilize a fair amount of morning insolation just because there is

insufficient starting torque. Also, when the motor is operated under the locked condition for

I V

Page 40: Ao thesis

30

a long time, it may result in shortening of the life of the motor due to input electrical energy

converted to heat rather than to mechanical output [15].

Voltage

Cur

rent

1000W/m2

800W/m2

600W/m2

400W/m2

200W/m2

Figure 3-4: PV I-V curves with varying irradiance and a DC motor I-V curve

There is a MPPT specifically called a linear current booster (LCB) that is designed to

overcome the above mentioned problem in water pumping systems. The MPPT maintains

the input voltage and current of LCB at the MPP of PV module. As shown in Figure 3-5, the

power produced at the MPP is relatively low-current and high-voltage which is opposite of

those required by the pump motor. The LCB shifts this relationship around and converts into

high-current and low-voltage power which satisfies the pump motor characteristics. For the

example in Figure 3-5, tracing of the iso-power (constant power) line from the MPP reveals

that the LCB could start the pump motor with as little as 50W/m2 of irradiance (assuming the

LCB can convert the power without loss).

DC Motor I-V Curve

Slope = 1/Ra

Page 41: Ao thesis

31

Voltage

Cur

rent

1000W/m2

800W/m2

600W/m2

400W/m2

200W/m2

50W/m2

MPP

Iso-power line

Figure 3-5: PV I-V curves with iso-power lines (dotted) and a DC motor I-V curve

3.3 DC-DC Converter

The heart of MPPT hardware is a switch-mode DC-DC converter. It is widely used in

DC power supplies and DC motor drives for the purpose of converting unregulated DC input

into a controlled DC output at a desired voltage level [17]. MPPT uses the same converter

for a different purpose: regulating the input voltage at the PV MPP and providing load-

matching for the maximum power transfer.

3.3.1 Topologies

There are a number of different topologies for DC-DC converters. They are

categorized into isolated or non-isolated topologies.

The isolated topologies use a small-sized high-frequency electrical isolation

transformer which provides the benefits of DC isolation between input and output, and step

DC Motor I-V Curve

Page 42: Ao thesis

32

up or down of output voltage by changing the transformer turns ratio. They are very often

used in switch-mode DC power supplies [18]. Popular topologies for a majority of the

applications are flyback, half-bridge, and full-bridge [22]. In PV applications, the grid-tied

systems often use these types of topologies when electrical isolation is preferred for safety

reasons.

Non-isolated topologies do not have isolation transformers. They are almost always

used in DC motor drives [17]. These topologies are further categorized into three types: step

down (buck), step up (boost), and step up & down (buck-boost). The buck topology is used

for voltage step-down. In PV applications, the buck type converter is usually used for

charging batteries and in LCB for water pumping systems. The boost topology is used for

stepping up the voltage. The grid-tied systems use a boost type converter to step up the

output voltage to the utility level before the inverter stage. Then, there are topologies able to

step up and down the voltage such as: buck-boost, Cúk, and SEPIC (stands for Single Ended

Primary Inductor Converter). For PV system with batteries, the MPP of commercial PV

module is set above the charging voltage of batteries for most combinations of irradiance and

temperature. A buck converter can operate at the MPP under most conditions, but it cannot

do so when the MPP goes below the battery charging voltage under a low-irradiance and

high-temperature condition. Thus, the additional boost capability can slightly increase the

overall efficiency [27].

3.3.2 Cúk and SEPIC Converters

For water pumping systems, the output voltage needs to be stepped down to provide a

higher starting current for a pump motor. The buck converter is the simplest topology and

easiest to understand and design, however it exhibits the most severe destructive failure mode

Page 43: Ao thesis

33

of all configurations [22]. Another disadvantage is that the input current is discontinuous

because of the switch located at the input, thus good input filter design is essential. Other

topologies capable of voltage step-down are Cúk and SEPIC. Even though their voltage

step-up function is optional for LCB application, they have several advantages over the buck

converter. They provide capacitive isolation which protects against switch failure (unlike the

buck topology) [21]. The input current of the Cúk and SEPIC topologies is continuous, and

they can draw a ripple free current from a PV array that is important for efficient MPPT.

Figure 3-6 shows a circuit diagram of the basic Cúk converter. It is named after its

inventor. It can provide the output voltage that is higher or lower than the input voltage. The

SEPIC, a derivative of the Cúk converter, is also able to step up and down the voltage.

Figure 3-7 shows a circuit diagram of the basic SEPIC converter. The characteristics of two

topologies are very similar. They both use a capacitor as the main energy storage. As a

result, the input current is continuous. The circuits have low switching losses and high

efficiency [18]. The main difference is that the Cúk converter has a polarity of the output

voltage reverse to the input voltage. The input and output of SEPIC converter have the same

voltage polarity; therefore the SEPIC topology is sometimes preferred to the Cúk topology.

SEPIC maybe also preferred for battery charging systems because the diode placed on the

output stage works as a blocking diode preventing an adverse current going to PV source

from the battery. The same diode, however, gives the disadvantage of high-ripple output

current. On the other hand, the Cúk converter can provide a better output current

characteristic due to the inductor on the output stage. Therefore, the thesis decides on the

Cúk converter because of the good input and output current characteristics.

Page 44: Ao thesis

34

Figure 3-6: Circuit diagram of the basic Cúk converter

Figure 3-7: Circuit diagram of the basic SEPIC converter

3.3.3 Basic Operation of Cúk Converter

The basic operation of Cúk converter in continuous conduction mode is explained

here. In steady state, the average inductor voltages are zero, thus by applying Kirchoff’s

voltage law (KVL) around outermost loop of the circuit shown in Figure 3-6 [21].

osC VVV +=1 (3.2)

Assume the capacitor (C1) is large enough and its voltage is ripple free even though it stores

and transfer large amount of energy from input to output [17] (this requires a good low ESR

capacitor [21]).

The initial condition is when the input voltage is turned on and switch (SW) is off.

The diode (D) is forward biased, and the capacitor (C1) is being charged. The operation of

circuit can be divided into two modes.

Page 45: Ao thesis

35

Mode 1: When SW turns ON, the circuit becomes one shown in Figure 3-8.

Figure 3-8: Basic Cúk converter when the switch is ON

The voltage of the capacitor (C1) makes the diode (D) reverse-biased and turned off.

The capacitor (C1) discharge its energy to the load through the loop formed with SW, C2, Rload,

and L2. The inductors are large enough, so assume that their currents are ripple free. Thus,

the following relationship is established [21].

21 LC II =− (3.3)

Mode 2: When SW turns OFF, the circuit becomes one shown in Figure 3-9.

Figure 3-9: Basic Cúk converter when the switch is OFF

The capacitor (C1) is getting charged by the input (Vs) through the inductor (L1). The

energy stored in the inductor (L2) is transfer to the load through the loop formed by D, C2,

and Rload. Thus, the following relationship is established [21].

11 LC II = (3.4)

Page 46: Ao thesis

36

For periodic operation, the average capacitor current is zero. Thus, from the equation (3.3)

and (3.4) [21]:

[ ] [ ] 0)1(11 =−⋅+⋅ TDIDTIOFFON SWCSWC (3.5)

0)1(12 =−⋅+⋅− TDIDTI LL (3.6)

DD

II

L

L

−=

12

1 (3.7)

where: D is the duty cycle (0 < D < 1), and T is the switching period.

Assuming that this is an ideal converter, the average power supplied by the source

must be the same as the average power absorbed by the load [21].

outin PP = (3.8)

21 LoLs IVIV ⋅=⋅ (3.9)

s

o

L

L

VV

II

=2

1 (3.10)

Combining the equation (3.7) and (3.10), the following voltage transfer function is derived

[21].

DD

VV

s

o

−=

1 (3.11)

Its relationship to the duty cycle (D) is:

If 0 < D < 0.5 the output is smaller than the input.

If D = 0.5 the output is the same as the input.

If 0.5 < D < 1 the output is larger than the input.

Page 47: Ao thesis

37

3.4 Mechanism of Load Matching

As described in Section 3.1, when PV is directly coupled with a load, the operating

point of PV is dictated by the load (or impedance to be specific). The impedance of load is

described as below.

o

oload I

VR = (3.12)

where: Vo is the output voltage, and Io is the output current.

The optimal load for PV is described as:

MPP

MPPopt I

VR = (3.13)

where: VMPP and IMPP are the voltage and current at the MPP respectively. When the value of

Rload matches with that of Ropt, the maximum power transfer from PV to the load will occur.

These two are, however, independent and rarely matches in practice. The goal of the MPPT

is to match the impedance of load to the optimal impedance of PV.

The following is an example of load matching using an ideal (loss-less) Cúk

converter. From the equation (3.11):

os VD

DV ⋅−= 1

(3.14)

From the equation (3.10),

s

o

L

L

o

s

VV

II

II

==2

1 (3.15)

From the equation (3.14) and (3.15),

os ID

DI ⋅

−=

1 (3.16)

Page 48: Ao thesis

38

From the equation (3.14) and (3.16), the input impedance of the converter is:

loado

o

s

sin R

DD

IV

DD

IV

R ⋅−=⋅−==2

2

2

2 )1()1( (3.17)

As shown in Figure 3-10, the impedance seem by PV is the input impedance of the

converter (Rin). By changing the duty cycle (D), the value of Rin can be matched with that of

Ropt. Therefore, the impedance of the load can be anything as long as the duty cycle is

adjusted accordingly.

-

Rin

+

PV RloadDC-DC Conv

Figure 3-10: The impedance seen by PV is Rin that is adjustable by duty cycle (D)

3.5 Maximum Power Point Tracking Algorithms

The location of the MPP in the I–V plane is not known beforehand and always

changes dynamically depending on irradiance and temperature. For example, Figure 3-11

shows a set of PV I–V curves under increasing irradiance at the constant temperature (25oC),

and Figure 3-12 shows the I–V curves at the same irradiance values but with a higher

temperature (50oC). There are observable voltage shifts where the MPP occurs. Therefore,

the MPP needs to be located by tracking algorithm, which is the heart of MPPT controller.

There are a number of methods that have been proposed. One method measures an

open-circuit voltage (Voc) of PV module every 30 seconds by disconnecting it from rest of the

circuit for a short moment. Then, after re-connection, the module voltage is adjusted to 76%

Page 49: Ao thesis

39

of measured Voc which corresponds to the voltage at the MPP [6] (note: the percentage

depends on the type of cell used). The implementation of this open-loop control method is

very simple and low-cost although the MPPT efficiencies are relatively low (between

73~91%) [9]. Model calculations can also predict the location of MPP; however in practice

it does not work well because it does not take physical variations and aging of module and

other effects such as shading into account. Furthermore, a pyranometer that measures

irradiance is quite expensive. Search algorithm using a closed-loop control can achieve

higher efficiencies, thus it is the customary choice for MPPT. Among different algorithms,

the Perturb & Observe (P&O) and Incremental Conductance (incCond) methods are studied

here.

0 5 10 15 20 25 30 35 40 45 500

0.5

1

1.5

2

2.5

3

3.5

4

4.5

5

Module Voltage (V)

Mod

ule

Cur

rent

(A)

1000W/m2

750W/m2

500W/m2

250W/m2

50W/m2

Maximum Power Point

Figure 3-11: I-V curves for varying irradiance and a trace of MPPs (25oC)

Page 50: Ao thesis

40

0 5 10 15 20 25 30 35 40 45 500

0.5

1

1.5

2

2.5

3

3.5

4

4.5

5

Module Voltage (V)

Mod

ule

Cur

rent

(A)

1000W/m2

750W/m2

500W/m2

250W/m2

50W/m2

Maximum Power Point

Figure 3-12: I-V curves for varying irradiance and a trace of MPPs (50oC)

3.5.1 Perturb & Observe Algorithm

The perturb & observe (P&O) algorithm, also known as the “hill climbing” method,

is very popular and the most commonly used in practice because of its simplicity in

algorithm and the ease of implementation. The most basic form of the P&O algorithm

operates as follows. Figure 3-13 shows a PV module’s output power curve as a function of

voltage (P-V curve), at the constant irradiance and the constant module temperature,

assuming the PV module is operating at a point which is away from the MPP. In this

algorithm the operating voltage of the PV module is perturbed by a small increment, and the

resulting change of power, P, is observed. If the P is positive, then it is supposed that it

has moved the operating point closer to the MPP. Thus, further voltage perturbations in the

same direction should move the operating point toward the MPP. If the P is negative, the

Page 51: Ao thesis

41

operating point has moved away from the MPP, and the direction of perturbation should be

reversed to move back toward the MPP. Figure 3-14 shows the flowchart of this algorithm.

0 5 10 15 20 25 30 35 40 45 500

20

40

60

80

100

120

140

160

Module Voltage (V)

Mod

ule

Out

put P

ower

(W)

* *

MPP

A B

Figure 3-13: Plot of power vs. voltage for BP SX 150S PV module (1KW/m2, 25oC)

Figure 3-14: Flowchart of the P&O algorithm

Page 52: Ao thesis

42

There are some limitations that reduce its MPPT efficiency. First, it cannot determine

when it has actually reached the MPP. Instead, it oscillates the operating point around the

MPP after each cycle and slightly reduces PV efficiency under the constant irradiance

condition [9]. Second, it has been shown that it can exhibit erratic behavior in cases of

rapidly changing atmospheric conditions as a result of moving clouds [11]. The cause of this

problem can be explained using Figure 3-15 with a set of P-V curves with varying irradiance.

Assume that the operating point is initially at the point A and is oscillating around the MPP

at the irradiance of 250W/m2. Then, the irradiance increases rapidly to 500W/m2. The power

measurement results in a positive P. If this operating point is perturbing from right to left

around the MPP, then the operating point will actually moves from the point A toward the

point E (instead of B). This happens because the MPPT can not tell that the positive P is

the result of increasing irradiation and simply assumes that it is the result of moving the

operating point to closer to the MPP. In this case the positive P is measured when the

operating voltage has been moving toward the left; the MPPT is fooled as if there is a MPP

on the left side. If the irradiance is still rapidly increasing, again the MPPT will see the

positive P and will assume it is moving towards the MPP, continuing to perturb to the left.

From points A, E, F and G, the operating point continues to deviate from the actual MPP

until the solar radiation change slows or settles down. This situation can occur on partly

cloudy days, and MPP tracking is most difficult because of the frequent movement of the

MPP.

Page 53: Ao thesis

43

Module Voltage (V)

Mod

ule

Out

put P

ower

(W)

A

B

C

*

*

*

D

250W/m2

1000W/m2

500W/m2

750W/m2

E

F

G

Figure 3-15: Erratic behavior of the P&O algorithm under rapidly increasing irradiance

The advent of digital controller made implementation of algorithm easy; as a result

many variations of the P&O algorithm were proposed to claim improvements. The problem

of oscillations around the MPP can be solved by the simplest way of making a bypass loop

which skips the perturbation when the P is very small which occurs near the MPP. The

tradeoffs are a steady state error and a high risk of not detecting a small power change.

Another way is the addition of a “waiting” function that causes a momentary cessation of

perturbations if the direction of the perturbation is reversed several times in a row, indicating

that the MPP has been reached [9]. It works well under the constant irradiation but makes

the MPPT slower to respond to changing atmospheric conditions. A more complex one uses

a variable step size of perturbation, using the slope of PV power as a variable, for example:

VP

CVV refnewref ∆∆⋅+=, [4] [12]. Again, this works well under the constant irradiation but

worsens the erratic behavior under rapidly changing atmospheric conditions on partly cloudy

Page 54: Ao thesis

44

days because the power change due to irradiance makes the step size too big. A modification

involving taking a PV power measurement twice at the same voltage solves the problem of

not detecting the changing irradiance [9]. Comparing these two measurements, the algorithm

can determine whether the irradiance is changing and decide how to perturb the operating

point. The tradeoff is that the increased number of sampling slows response times and

increases the complexity of algorithm.

3.5.2 Incremental Conductance Algorithm

In 1993 Hussein, Muta, Hoshino, and Osakada of Saga University, Japan, proposed

the incremental conductance (incCond) algorithm intending to solve the problem of the P&O

algorithm under rapidly changing atmospheric conditions [11].

The basic idea is that the slope of P-V curve becomes zero at the MPP, as shown in

Figure 3-13. It is also possible to find a relative location of the operating point to the MPP

by looking at the slopes. The slope is the derivative of the PV module’s power with respect

to its voltage and has the following relationships with the MPP.

0=dVdP

at MPP (3.18)

0>dVdP

at the left of MPP (3.19)

0<dVdP

at the right of MPP (3.20)

The above equations are written in terms of voltage and current as follows.

dVdI

VIdVdI

VdVdV

IdV

IVddVdP +=+=⋅= )(

(3.21)

Page 55: Ao thesis

45

If the operating point is at the MPP, the equation (3.21) becomes:

0=+dVdI

VI (3.22)

VI

dVdI −= (3.23)

If the operating point is at the left side of the MPP, the equation (3.21) becomes:

0>+dVdI

VI (3.24)

VI

dVdI −> (3.25)

If the operating point is at the right side of the MPP, the equation (3.21) becomes:

0<+dVdI

VI (3.26)

VI

dVdI −< (3.27)

Note that the left side of the equations (3.23), (3.25), and (3.27) represents

incremental conductance of the PV module, and the right side of the equations represents its

instantaneous conductance.

The flowchart shown in Figure 3-16 explains the operation of this algorithm. It starts

with measuring the present values of PV module voltage and current. Then, it calculates the

incremental changes, dI and dV, using the present values and previous values of voltage and

current. The main check is carried out using the relationships in the equations (3.23), (3.25),

and (3.27). If the condition satisfies the inequality (3.25), it is assumed that the operating

point is at the left side of the MPP thus must be moved to the right by increasing the module

voltage. Similarly, if the condition satisfies the inequality (3.27), it is assumed that the

operating point is at the right side of the MPP, thus must be moved to the left by decreasing

Page 56: Ao thesis

46

the module voltage. When the operating point reaches at the MPP, the condition satisfies the

equation (3.23), and the algorithm bypasses the voltage adjustment. At the end of cycle, it

updates the history by storing the voltage and current data that will be used as previous

values in the next cycle. Another important check included in this algorithm is to detect

atmospheric conditions. If the MPPT is still operating at the MPP (condition: dV = 0) and

the irradiation has not changed (condition: dI = 0), it takes no action. If the irradiation has

increased (condition: dI > 0), it raises the MPP voltage. Then, the algorithm will increase the

operating voltage to track the MPP. Similarly, if the irradiation has decreased (condition: dI

< 0), it lowers the MPP voltage. Then, the algorithm will decrease the operating voltage.

VI

dVdI −>

VI

dVdI −=

Figure 3-16: Flowchart of the incCond algorithm

Page 57: Ao thesis

47

In practice, the condition dP/dV = 0 (or dI/dV = -I/V) seldom occurs because of the

approximation made in the calculation of dI and dV [11]. Thus, a small margin of error (E)

should be allowed, for example: dP/dV = ±E. The value of E is optimized with exchange

between an amount of the steady-sate tracking error and a risk of oscillation of the operating

point.

3.6 Control of MPPT

As explained in the previous section, the MPPT algorithm tells a MPPT controller

how to move the operating voltage. Then, it is a MPPT controller’s task to bring the voltage

to a desired level and maintain it. There are several methods often used for MPPT.

3.6.1 PI Control

As shown in Figure 3-17, the MPPT takes measurement of PV voltage and current,

and then tracking algorithm (P&O, incCond, or variations of two) calculates the reference

voltage (Vref) where the PV operating voltage should move next. The task of MPPT

algorithm is to set Vref only, and it is repeated periodically with a slower rate (typically 1~10

samples per second). Then, there is another control loop that the proportional and integral

(PI) controller regulates the input voltage of converter. Its task is to minimize error between

Vref and the measured voltage by adjusting the duty cycle. The PI loop operates with a much

faster rate and provides fast response and overall system stability [10] [12]. The PI controller

itself can be implemented with analog components, but it is often done with DSP-based

controller [10] because the DSP can handle other tasks such as MPP tracking thus reducing

parts count.

Page 58: Ao thesis

48

Figure 3-17: Block diagram of MPPT with the PI compensator

3.6.2 Direct Control

As shown in Figure 3-18, this control method is simpler and uses only one control

loop, and it performs the adjustment of duty cycle within the MPP tracking algorithm. The

way how to adjust the duty cycle is totally based on the theory of load matching explained in

Section 3.4.

Figure 3-18: Block diagram of MPPT with the direct control

Page 59: Ao thesis

49

The impedance seen by PV is the input impedance of converter. Using the example of the

Cúk converter in Section 3.4, the relationship to the load is:

loads

sin R

DD

IV

R ⋅−==2

2)1( (3.28)

where: D is the duty cycle of the Cúk converter. As shown in Figure 3-19, increasing D will

decrease the input impedance (Rin), thus the PV operating voltage moves to the left.

Similarly, decreasing D will increase Rin, thus the operating voltage moves to the right. The

tracking algorithm (P&O, incCond, or variations of two) makes the decision how to move the

operating voltage.

0 5 10 15 20 25 30 35 40 45 500

0.5

1

1.5

2

2.5

3

3.5

4

4.5

5

Module Voltage (V)

Mod

ule

Cur

rent

(A)

MPP

R=7.93 Ohms

R=16 OhmsSlope=1/R

R=4 Ohms

*

*

*

Figure 3-19: Relationship of the input impedance of Cúk converter and its duty cycle

The time response of the power stage and PV source is relatively slow (10~50msec

depending on the type of load) [9]. The MPPT algorithm changes the duty cycle, then the

next sampling of PV voltage and current should be taken after the system reaches the

periodic steady state to avoid measuring the transient behavior [9]. The typical sampling rate

Increasing Rin

Increasing D

Page 60: Ao thesis

50

is 10~100 samples per second. The sampling rate of PI controller is much faster, thus it

provides robustness against sudden changes of load. The system response is, however, slow

in general. The direct control method can operate stably for applications such as battery

equipped systems and water pumping systems. Since sampling rates are slow, it is possible

to implement with inexpensive microcontrollers [12].

3.6.3 Output Sensing Direct Control

This method is a variation of the aforementioned direct control and has the advantage

of requiring only two sensors for output voltage and current. The aforementioned two

methods use input sensing which enables accurate control of module’s operating point. In

addition with input sensors, however, they usually require another set of sensors for the

output to detect the over-voltage and over-current condition of load. The requirement of four

sensors often makes difficult to allow for low cost systems.

This output sensing method measures the power change of PV at the output side of

converter and uses the duty cycle as a control variable. The following MATLAB simulation

illustrates the relationship between the output power of converter and its duty cycle. In the

simulation, BP SX 150S PV module is coupled with the ideal (loss-less) Cúk converter with

a resistive load (6). The duty cycle of converter is swept from 0 to 1 with 1% step, and the

output power of converter is plotted in Figure 3-20.

Page 61: Ao thesis

51

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 10

20

40

60

80

100

120

140

160

Duty Cycle

Out

put P

ower

(W)

Figure 3-20: Output power of Cúk converter vs. its duty cycle (1KW/m2, 25oC)

As shown in the figure, there is a peak of output power when the duty cycle of

converter is varied. This control method employs the P&O algorithm to locate the MPP.

Figure 3-21 shows the flowchart of algorithm. In order to accommodate duty cycle as a

control variable, the P&O algorithm used here is a slightly modified version from that

previously introduced, but the idea how it works is the same. The algorithm perturbs the

duty cycle and measure the output power of converter. If the power is increased, the duty

cycle is further perturbed in the same direction; otherwise the direction will be reversed.

When the output power of converter is reached at the peak, a PV module or array is supposed

to be operating at the MPP.

Even though it works perfectly in the simulation with the ideal converter, there is

some uncertainly if the peak of output power is corresponding with the MPP in practice with

Page 62: Ao thesis

52

non-ideal converters. Also, this control method only works with the P&O algorithm and its

variations, and it does not work with the incCond algorithm.

Figure 3-21: Flowchart of P&O algorithm for the output sensing direct control method

3.7 Limitations of MPPT

The main drawback of MPPT is that there is no regulation on output while it is

tracking a maximum power point. It cannot regulate both input and output at the same time.

The example of load matching in Section 3.4 is elaborated here to show how the output

voltage and current change with varying irradiation.

The maximum power transfer occurs when the input impedance of converter matches

with the optimal impedance of PV module, as described in the equation below.

MPP

MPPoptin I

VRR == (3.29)

Page 63: Ao thesis

53

The equation (3.17) for the Cúk converter is solved for duty cycle (D).

load

in

RR

D

+=

1

1 (3.30)

From the equation (3.11), the output voltage of converter is:

so VD

DV ⋅

−=

1 (3.31)

From the equation (3.16), the output current of converter is:

so ID

DI ⋅−= 1

(3.32)

The calculation results are tabulated in the tables below. PV module data are

obtained from the MATLAB simulation model. Using the equations above, two sets of data

are collected for the resistive load of 6 and 12 at the constant module temperature of 25oC.

PV Module MPPT

Irradiance VMPP IMPP Pmax Rin D Vo Io Rload

1000W/m2 34.5V 4.35A 150.0W 7.92 0.465 30.0V 5.00A 6 800W/m2 34.1V 3.48A 118.8W 9.80 0.439 26.7V 4.45A 6 600W/m2 33.6V 2.61A 87.7W 12.9 0.406 22.9V 3.82A 6 400W/m2 32.7V 1.73A 56.9W 18.8 0.361 18.5.V 3.08A 6 200W/m2 31.1V 0.87A 26.9W 35.9 0.290 12.7V 2.12A 6

Table 3-1: Load matching with the resistive load (6) under the varying irradiance

PV Module MPPT Irradiance VMPP IMPP Pmax Rin D Vo Io Rload

1000W/m2 34.5V 4.35A 150.0W 7.92 0.552 42.4V 3.54A 12 800W/m2 34.1V 3.48A 118.8W 9.80 0.525 37.8V 3.15A 12 600W/m2 33.6V 2.61A 87.7W 12.9 0.491 32.4V 2.70A 12 400W/m2 32.7V 1.73A 56.9W 18.8 0.444 26.1V 2.18A 12 200W/m2 31.1V 0.87A 26.9W 35.9 0.366 18.0V 1.50A 12

Table 3-2: Load matching with the resistive load (12) under the varying irradiance

Page 64: Ao thesis

54

From the above results, it’s obvious that there is no regulation of the output voltage

and current. If the application requires a constant voltage, it must employ batteries to

maintain the voltage constant. For water pumping system without batteries, the lack of

output regulation is not a predicament as long as they are equipped with water reservoirs to

meet the demand of water. The speed of pump motor is proportional to the converter’s

output voltage which is relative to irradiation. Thus, when the sun shines more, it simply

pumps more water.

Another noteworthy fact is that MPPT stops its original task if the load cannot

consume all the power delivered. For the stand-alone system, when the load is limited by its

maximum voltage or current, the MPPT moves the operating point away from the MPP and

sends less power. It is very important to select an appropriate size of load, thus it can utilize

the full capacity of PV module and array. On the other hand, the grid-tied system can always

perform the maximum power point tracking because it can inject the power into the grid as

much as produced.

Of course, in reality DC-DC converter used in MPPT is not 100% efficient. The

efficiency gain from MPPT is large, but the system needs to take efficiency loss by DC-DC

converter into account. There is also tradeoff between efficiency and the cost. It is necessary

for PV system engineers to perform economic analysis of different systems and also

necessary to seek other methods of efficiency improvement such as the use of a sun tracker.

After due consideration of limitations, the next chapter will discuss designs and

simulations of MPPT and PV water pumping system.

Page 65: Ao thesis

55

Chapter 4 Design and Simulations

4.1 Introduction

This chapter provides the design and simulations of MPPT. It discusses Cúk

converter design. After the component selection, PSpice simulations validate the design and

choice of the MPPT sampling rate. MATLAB simulations perform comparative tests of the

P&O and incCond algorithm. Simulations also verify the functionality of MPPT with a

resistive load and then with the DC pump motor load. At last, this chapter provides

comparisons between the PV water pumping system equipped with MPPT and the direct-

coupled system without MPPT.

4.2 Cúk Converter Design

The basic operation of Cúk Converter and derivation of the voltage transfer function

is explained in Section 3.3.3. Here, a Cúk converter is designed based on the specification

shown in the table below. After component selection, the design is simulated in PSpice.

Specification Input Voltage (Vs) 20-48V Input Current (Is) 0-5A (< 5% ripple) Output Voltage (Vo) 12-30V (< 5% ripple) Output Current (Io) 0-5A (< 5% ripple) Maximum Output Power (Pmax) 150W Switching Frequency (f) 50KHz Duty Cycle (D) 0.1 D 0.6

Table 4-1: Design specification of the Cúk Converter

Page 66: Ao thesis

56

4.2.1 Component Selection

a) Inductor Selection

The inductor sizes are decided such that the change in inductor currents is no more

than 5% of the average inductor current. The following equation gives the change in

inductor current [8].

fLDV

i sL ⋅

⋅=∆ (4.1)

where: Vs is the input voltage, D is the duty cycle, and f is the switching frequency.

Solving this for L gives:

fiDV

LL

s

⋅∆⋅

= (4.2)

Assume that the worst current ripple will occur under the maximum power condition. Under

this condition, the average current (IL1) of the input inductor (L1) is 4.35A, and the ripple

current is 5% of IL1.

AIi LL 2175.0)35.4)(05.0(05.0 11 ==⋅=∆ (4.3)

Thus, from the equation (4.2):

mHfi

DVL

L

s 475.1)1050)(2175.0(

)465.0)(5.34(3

11 =

×=

⋅∆⋅

= (4.4)

A commercially available 1.5mH inductor is selected. For example, 1.5mH power coke

(5.0A DC max, 0.07 DCR) is available from Hammond Mfg. (www.hammondmfg.com).

Similarly, the value of the output inductor (L2) is calculated as follows.

AIi LL 250.0)0.5)(05.0(05.0 22 ==⋅=∆ (4.5)

Page 67: Ao thesis

57

mHfi

DVL

L

s 283.1)1050)(25.0(

)465.0)(5.34(3

22 =

×=

⋅∆⋅

= (4.6)

To make parts procurement easier, the output can use the same inductor size as one in the

input.

b) Capacitor Selection

The design criterion for capacitors is that the ripple voltage across them should be

less than 5%. The average voltage across the capacitor (C1) is, from the equation (3.2), Vc1 =

Vs + Vo= 34.5 + 30 = 64.5V, so the maximum ripple voltage is vC1 = 0.05 × 64.5 = 3.225V.

The equivalent load resistance is:

Ω=== 6)150()0.30( 22

o

o

PV

R (4.7)

The value of C1 is calculated with the following equation [8]:

FvfR

DVC

c

o µ42.14)225.3)(1050)(6(

)465.0)(0.30(3

11 =

×=

∆⋅⋅⋅

= (4.8)

The next commercially available size is 22F. An aluminum electrolytic capacitor with low

ESR type is required.

The value of the output capacitor (C2) is calculated using the output voltage ripple

equation (the same as that of buck converter) [21].

2228

1fCL

DVv

o

o

⋅⋅⋅−=

∆ (4.9)

Solving the above equation for C2 gives:

FfLVv

DC

oo

µ3567.0)1050)(105.1)(05.0(8

465.01)(8

12332

22 =

××−=

⋅⋅∆⋅−= − (4.10)

The next available size is 0.47F. An aluminum electrolytic capacitor with low ESR type is

required.

Page 68: Ao thesis

58

c) Diode Selection

Schottky diode should be selected because it has a low forward voltage and very good

reverse recovery time (typically 5 to 10ns) [21]. From Figure 3-8, the recurrent peak reverse

voltage (VRRM) of the diode is the same as the average voltage of capacitor (C1) [18], thus

VRRM = 64.5V. Adding the 30% of safety factor gives the voltage rating of 83.9V. The

average forward current (IF) of diode is the combination of input and output currents at the

SW off, thus it is ID = IL1+IL2 = 9.35A. Adding the 30% of safety factor gives the current

rating of 12.2A. Schottky diodes are widely available from numerous vendors. For example,

MBR15100 (IF=15Amax, VRRM=100Vmax) meets the above-mentioned voltage and current

ratings.

d) Switch Selection

Power-MOSFETs are widely used for low to medium power applications. The peak

voltage of the switch (SW) [18] is obtained by KVL on the circuit shown in Figure 3-9.

dtdI

VV LsSW

1−= (4.11)

The voltage of SW could go up to 48V by the specification. Adding the 30% of safety factor

gives the voltage rating of 62.4V. The peak switch current is the same as the diode. Thus,

adding the 30% of safety factor gives the current rating of 12.2A. There are a wide variety of

Power-MOSFETs available from various vendors. For example, IRF530 (ID=14Amax,

VDS=100Vmax) meets the above-mentioned requirements.

Page 69: Ao thesis

59

4.2.2 PSpice Simulations

PSpice simulations validate the Cúk converter designed in Section 4.2.1. Figure 4-1

shows the circuit diagram with the PMDC motor model as a load. In the diagram, Ra and La

are resistance and inductance of armature winding, respectively, and E is the back emf of the

motor. The converter is running with full load. The values of armature resistance and

inductance that correspond to the actual DC pump motor are unknown, thus they are

estimated from other references [2] [20]. A more detailed discussion of modeling a DC

motor appears in Section 4.5.1.

Vpwm

TD = 0TF = 10n

PW = D*TPER = T

V1 = 0

TR = 10nV2 = 1

1 2L1

1.5mH

PARAMETERS:f = 50kHzT = 1/f D = .465

+-

+

-Sbreak

S1

12L2

1.5mH

DbreakD1

0

C2.47uF

0

Ra

.2

12

La

10mH

Vin34.5Vdc

E28Vdc

C1

22uF

Figure 4-1: Schematic of the Cúk converter with PMDC motor load

Figure 4-2 shows current and voltage plots of the converter after turning on (t = 0sec).

Since the load has such a large inductance, it takes a long time for current to build up. The

plots show that both input and output currents take nearly 250msec to reach steady state.

Page 70: Ao thesis

60

Time

0s 50ms 100ms 150ms 200ms 250msV(Vin:+) -V(C2:2)

0V

10V

20V

30V

40VI(L1) I(L2)

0A

2.5A

5.0A

SEL>>

Figure 4-2: PSpice plots of input/output current (above) and voltage (below)

For comparisons, the same simulation is done with an equivalent resistive load (6).

The transient time is less than 10msec with the resistive load. It is apparent that the motor

load has a very slow response. Other current and voltage data are gathered and tabulated

below for comparisons with the resistive load and calculated results.

DC Motor

1st Set 2nd Set Resistive

Load (6) Calculated

Results Average 4.07A 4.18A 4.20A 4.35A Iin % ripple 5.2% 6.1% 5.1% < 5% Average 4.70A 4.84A 4.83A 5.0A Iout % ripple 4.6% 4.6% 4.4% < 5% Average 34.5V 34.5V 34.5V 34.5V Vin % ripple n/a n/a n/a n/a Average 28.9V 29.1V 29.0V 30V Vout % ripple 9% 3.1% 2.7% < 5%

Table 4-2: Cúk converter design: comparisons of simulations and calculated results

Table 4-2 shows two sets of simulation data for the DC motor load. The first set is

the result of simulation using the components selected in the previous section. The output

Page 71: Ao thesis

61

voltage ripple for the DC motor load is as large as 9% while one for the equivalent resistive

load (6) is only 2.7%. Therefore, in the next simulation, the size of output capacitor (C2) is

increased to the next commercially available size of 1F. It makes the input current ripple

slightly worse, but it makes overall improvement of performance. Thus, a 1F capacitor

(instead of 0.47F) is finally selected.

4.2.3 Choice of MPPT Sampling Rate

MPPT algorithms adjust PV operating point with a small step. The size of step is

typically 0.5V or less. For the Cúk converter designed, 0.5V corresponds to approximately

0.35% change in duty cycle. PSpice performs the simulation when the duty cycle is changed,

and the transient responses of voltage and current are observed. The use of “Sw_tOpen” and

“Sw_tClose” in the analog miscellaneous library permits switching of one duty cycle to

another duty cycle during the simulation. In the same way, it is also necessary to adjust the

value of back emf (E) because it has to correspond with the change of output voltage.

Time

240ms 260ms 280ms 300ms 320ms 340ms 360msV(L1:1) -V(C2:2)

30.0V

32.5V

35.0V

27.0VSEL>>

I(L1) I(L2)

4.0A

4.5A

5.0A

Figure 4-3: Transient response when duty cycle is increased 0.35% at 250ms

Page 72: Ao thesis

62

Figure 4-3 is the result of PSpice simulation. It shows both input and output currents

take between 80msec and 90msec to go to steady state, where they take only several

milliseconds for the resistive load. It is important for MPPT algorithm to take measurements

of voltage and current after they reach steady state. Therefore, with a PV pump motor, the

sampling rate is 10Hz at most.

4.3 Comparisons of P&O and incCond Algorithm

The two MPPT algorithms, P&O and incCond, discussed in Section 3.5 are

implemented in MATLAB simulations and tested for their performance. Since the purpose is

to make comparisons of two algorithms, each simulation contains only the PV model and the

algorithm in order to isolate any influence from a converter or load.

First, they are verified to locate the MPP correctly under the constant irradiance, as

shown in Figure 4-4. Please refer to Appendix A.1 for MATLAB scripts for this section.

0 5 10 15 20 25 30 35 40 45 500

20

40

60

80

100

120

140

160

Module Voltage (V)

Mod

ule

Out

put P

ower

(W)

start

end

Figure 4-4: Searching the MPP (1KW/m2, 25oC)

The traces of PV operating point are shown in green, and the MPP is the red asterisk

Page 73: Ao thesis

63

Next, the algorithms are tested with actual irradiance data provided by [2].

Simulations use two sets of data, shown in Figure 4-5; the first set of data is the

measurements of a sunny day in April in Barcelona, Spain, and the second set of data is for a

cloudy day in the same month at the same location. The data contain the irradiance

measurements taken every two minutes for 12 hours. Irradiance values between two data

points are estimated by the cubic interpolation in MATLAB functions.

0 2 4 6 8 10 120

0.2

0.4

0.6

0.8

1

Hour (h)

Irrad

ianc

e (K

W/m

2 )

Sunny DayCloudy Day

Figure 4-5: Irradiance data for a sunny and a cloudy day of April in Barcelona, Spain [2]

On a sunny day, the irradiance level changes gradually since there is no influence of

cloud. MPP tracking is supposed to be easy. As shown in Figure 4-6, both algorithms locate

and maintain the PV operating point very close to the MPPs (shown in red asterisks) without

much difference in their performance.

Page 74: Ao thesis

64

0 5 10 15 20 25 30 35 40 45 500

20

40

60

80

100

120

140

160

Module Voltage (V)

Mod

ule

Out

put P

ower

(W)

1000W/m2

800W/m2

600W/m2

400W/m2

200W/m2

(a) P&O algorithm

0 5 10 15 20 25 30 35 40 45 50

0

20

40

60

80

100

120

140

160

Module Voltage (V)

Mod

ule

Out

put P

ower

(W)

(b) incCond algorithm

800W/m2

600W/m2

400W/m2

200W/m2

1000W/m2

Figure 4-6: Traces of MPP tracking on a sunny day (25oC)

On a cloudy day, the irradiance level changes rapidly because of passing clouds.

MPP tracking is supposed to be challenging. Figure 4-7 shows the trace of PV operating

points for (a) P&O algorithm and (b) incCond algorithm. For both algorithms, the deviations

of operating points from the MPPs are obvious when compared to the results of a sunny day.

Between two algorithms, the incCond algorithm is supposed to outperform the P&O

algorithm under rapidly changing atmospheric conditions [11]. A close inspection of Figure

4-7 reveals that the P&O algorithm has slightly larger deviations overall and some erratic

behaviors (such as the large deviation pointed by the red arrow). Some erratic traces are,

however, also observable in the plot of the incCond algorithm. In order to make a better

comparison, total electric energy produced during a 12-hour period is calculated and

tabulated in Table 4-3.

Page 75: Ao thesis

65

0 5 10 15 20 25 30 35 40 45 500

20

40

60

80

100

120

140

160(a) P&O Algorithm

Module Voltage (V)

Mod

ule

Out

put P

ower

(W)

1000W/m2

800W/m2

600W/m2

400W/m2

200W/m2

0 5 10 15 20 25 30 35 40 45 50

0

20

40

60

80

100

120

140

160(b) incCond Algorithm

Module Voltage (V)

Mod

ule

Out

put P

ower

(W)

1000W/m2

800W/m2

600W/m2

400W/m2

200W/m2

Figure 4-7: Trace of MPP tracking on a cloudy day (25oC)

P&O Algorithm incCond Algorithm Total Energy (simulation) 479.64Wh 479.69Wh Total Energy (theoretical max) 480.38Wh 480.38Wh Efficiency 99.85% 99.86%

Table 4-3: Comparison of the P&O and incCond algorithms on a cloudy day

Total electric energy produced with the incCond algorithm is narrowly larger than

that of the P&O algorithm. The MPP tracking efficiency measured by Total Energy

(simulation) ÷ Total Energy (theoretical max) ×100% is still good in the cloudy condition

for both algorithms, and again it is narrowly higher with the incCond algorithm. The

irradiance data are only available at two-minute intervals, thus they do not record a much

higher rate of changes during these intervals. The data may not be providing a truly rapid

changing condition, and that could be a reason why the two results are so close. Also, further

optimization of algorithm and varying a testing method may provide different results. The

performance difference between the two algorithms, however, would not be large. There is a

study showing similar results [9]. The simulation results showed the efficiency of 99.3% for

Page 76: Ao thesis

66

the P&O algorithm and 99.4% for the incCond algorithm. The experimental results showed

96.5% and 97.0%, respectively, for a partly cloudy day.

4.4 MPPT Simulations with Resistive Load

First, MPPT with a resistive load is implemented in MATLAB simulation and

verified. The simulation results in Section 4.3 have shown that there is no great advantage in

using the more complex incCond algorithm, and the P&O algorithm provides satisfactory

results even in the cloudy condition. The selection of the P&O algorithm permits the use of

the output sensing direct control method which eliminates the input voltage and current

sensors, as discussed in Section 3.6.3. The MPPT design, therefore, chooses the P&O

algorithm and the output sensing direct control method because of the advantage that allows

of a simple and low cost system.

The simulated system consists of the BP SX 150S PV model, the ideal Cúk converter,

the MPPT control, and the resistive load (6). The MATLAB function that models the PV

module is the following:

( )TGVssxbpI aa ,,150_= (4.12)

The function, bp_sx150s, calculates the module current (Ia) for the given module voltage (Va),

irradiance (G in KW/m2), and module temperature (T in oC).

The operating point of PV module is located by its relationship to the load resistance

(R) as explained in Section 3.4.

a

a

IV

R = (4.13)

Page 77: Ao thesis

67

The irradiance (G) and the module temperature (T) for the function (4.12) are known

variables, thus it is possible to say that Ia is the function of Va hence Ia = f(Va). Substituting

this into the equation (4.13) gives:

( ) 0=⋅− aa VfRV (4.14)

Knowing the value of R enables to solve this equation for the operating voltage (Va).

MATLAB uses fzero function to do so. Please refer Appendix A.1 for details. Placing Va,

back to the equation (4.12) gives the operating current (Ia).

For the direct control method, each sampling of voltage and current is done at a

periodic steady state condition of the converter. Therefore, the steady state analysis

discussed in Section 3.3.3 provides sufficient modeling of the Cúk converter. The following

equations describe the input/output relationship of voltage and current, and they are used in

the MATLAB simulation.

so VD

DV ⋅

−=

1 (4.15)

so ID

DI ⋅−= 1

(4.16)

where: D is the duty cycle of the Cúk converter.

Page 78: Ao thesis

68

The following flowchart, shown in Figure 4-8, explains the operation of the simulated

system. The details can be referred in the MATLAB script listed in the Appendix A.1.

!!

"

#$%&

'!

#

(#!

)*+

)*

!

,)*

+!!

+"

-

.

/#01

Figure 4-8: MPPT simulation flowchart

The simulation is performed under the linearly increasing irradiance varying from

100W/m2 to 1000W/m2 with a moderate rate of 0.3W/m2 per sample. Figure 4-9 (a) and (b)

show that the trace of operating point is staying close to the MPPs during the simulation.

Figure 4-9 (c) shows the relationship between the output power of converter and its duty

cycle. Figure 4-9 (d) shows the current and voltage relationship of converter output. Since

the load is resistive, the current and voltage increase linearly with the slope of 1/Rload on the

I-V plane.

Page 79: Ao thesis

69

0 5 10 15 20 25 30 35 40 45 500

20

40

60

80

100

120

140

160(a) PV Power vs. Voltage

Module Voltage (V)

Mod

ule

Out

put P

ower

(W)

1000W/m2

800W/m2

600W/m2

400W/m2

200W/m2

start

end

0 5 10 15 20 25 30 35 40 45 50

0

0.5

1

1.5

2

2.5

3

3.5

4

4.5

5(b) PV Current vs. Voltage

Module Voltage (V)

Mod

ule

Cur

rent

(A)

1000W/m2

800W/m2

600W/m2

400W/m2

200W/m2

end

start

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 10

20

40

60

80

100

120

140

160(c) Output Power vs. Duty Cycle

Duty Cycle

Out

put P

ower

(W)

start

end

0 5 10 15 20 25 30 35

0

1

2

3

4

5

6(d) Output Current vs. Voltage

Output Voltage (V)

Out

put C

urre

nt (A

)

Load Line

start

end

Figure 4-9: MPPT simulations with the resistive load (100 to 1000W/m2, 25oC)

The control algorithm contains two loops, as shown in Figure 4-8: the main loop for

MPPT and another loop for output protection. During the normal operation, it operates in

MPPT mode. When the load cannot absorb all the power produced by PV, its voltage or/and

current will exceed the limit. To protect the load from failure, the control algorithm stops

operating in MPPT mode and invokes the output protection. Then, it regulates the output not

to exceed the limit. In the simulation, it sets when the output voltage goes beyond 30V or 5A

for the output current. For the example shown in Figure 4-10, during the increasing

irradiance, the 10 load exceeds the voltage limit of 30V. The output protection maintains

Page 80: Ao thesis

70

the voltage around 30V. Figure 4-10 (a) shows that PV is not operating at the MPP and

sending the power less than the maximum after the irradiance reaches at a little over

600W/m2. It also indicates the importance of selecting an appropriate size of load, thus it can

utilize the full capacity of PV module or array.

0 5 10 15 20 25 30 35 40 45 500

20

40

60

80

100

120

140

160(a) PV Power vs. Voltage

Module Voltage (V)

Mod

ule

Out

put P

ower

(W)

1000W/m2

800W/m2

600W/m2

400W/m2

200W/m2

end

start

0 5 10 15 20 25 30 35

0

1

2

3

4

5

6(b) Output Current vs. Voltage

Output Voltage (V)

Out

put C

urre

nt (A

)start

end

Figure 4-10: Output protection & regulation (100 to 1000W/m2, 25oC)

The input sensing type direct control method, discussed in Section 3.6.2, is also

implemented with both P&O and incCond algorithm. The results are very similar and are

shown in Appendix A.2 for reference.

4.5 MPPT Simulations with DC Pump Motor Load

Next, DC pump motor is modeled. SIMULINK is chosen for this purpose because it

offers a tool called “SimPowerSystems” which facilitates modeling of DC motors with its

DC machine tool box. The model is then put into the MATLAB simulation designed in the

previous section, replacing the resistive load.

Page 81: Ao thesis

71

4.5.1 Modeling of DC Water Pump

The flow rate of water in positive displacement pumps is directly proportional to the

speed of the pump motor, which is governed by the available driving voltage [19]. They

have constant load torque to the pump motors, and it is expressed by the total dynamic head

in terms of its equivalent vertical column of water; for example, vertical lift and friction

converted to vertical lift [13]. Figure 4-11 shows the relationship between flow rate of water

and total dynamic head for the Kyocera SD 12-30 solar pump to be modeled. It has the

normal operating voltage of 12 to 30V and the maximum power of 150W.

Figure 4-11: Kyocera SD 12-30 water pump performance chart [13]

To model a permanent magnet DC motor, the SIMULINK model applies a constant

field, as shown in Figure 4-12. Since the water pump is a positive displacement type, the

load torque is also constant. The value is selected to draw the maximum power of 150W at

the maximum voltage of 30V. The parameters of DC machine, shown in Figure 4-13, that

correspond to the actual pump motor are unknown, thus they are chosen by modification of

the default values and estimation from other references [2] [20].

Page 82: Ao thesis

72

s

-+

Voltage Source

Va, Ia, w, Te, P

v+-

Va

Rload

Product

1.1

Positive Displacement Pump(Constant Torque)

?

More Info

Ia vs Va

Divide

DemuxTL m

A+

F+

A-

F-

dc

DC Machine

Apply Constant Field

Signal 1

0-30V Ramp

Figure 4-12: SIMULINK model of permanent magnet DC pump motor

Figure 4-13: SIMULINK DC machine block parameters

The voltage source applies a 0-30V ramp at the rate of 1V per second. Then, the

change of load resistance (Rload) is observed, as shown in Figure 4-14. The plot data are

Page 83: Ao thesis

73

transferred to MATLAB, and the cubic curve fitting tool in MATLAB provides the equation

of the curve, shown below.

2.037.0107.8105.9 2335 +⋅+⋅×−⋅×= −−oooload VVVR (4.17)

where: Vo is the output voltage of converter. This equation characterizes the DC pump motor,

and MATLAB uses it in the simulations.

Figure 4-14: SIMULINK plot of Rload ()

4.5.2 MATLAB Simulation Results

The simulation is carried out in a similar manner as that for the resistive load. The

irradiance is increased linearly from 20W/m2 to 1000W/m2 with the same rate of 0.3W/m2 per

sample. Figure 4-15 (a) and (b) show that the trace of operating point staying close to the

MPPs throughout the simulation. Figure 4-15 (c) shows the relationship between the output

power of converter and its duty cycle.

Page 84: Ao thesis

74

0 5 10 15 20 25 30 35 40 45 500

20

40

60

80

100

120

140

160(a) PV Power vs. Voltage

Module Voltage (V)

Mod

ule

Out

put P

ower

(W)

1000W/m2

800W/m2

600W/m2

400W/m2400W/m2

200W/m2

end

start

0 5 10 15 20 25 30 35 40 45 50

0

0.5

1

1.5

2

2.5

3

3.5

4

4.5

5(b) PV Current vs. Voltage

Module Voltage (V)

Mod

ule

Cur

rent

(A)

1000W/m2

800W/m2

600W/m2

400W/m2

200W/m2

start

end

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 10

20

40

60

80

100

120

140

160(c) Output Power vs. Duty Cycle

Duty Cycle

Out

put P

ower

(W)

start

end

0 5 10 15 20 25 30

0

1

2

3

4

5

6(d) Output Current vs. Voltage

Output Voltage (V)

Out

put C

urre

nt (A

)

start

end

Figure 4-15: MPPT simulations with the DC pump motor load (20 to 1000W/m2, 25oC)

Figure 4-15 (d) shows the current and voltage relationship of converter output which

is equal to the DC motor load. It shows that the output current rises rapidly with increasing

voltage until the current is sufficient to create enough torque to start the motor. Once it starts

to run, the back emf takes effect and drops the current, therefore the current rises slowly with

increasing voltage. Figure 4-16 shows the I-V curve produced by the SIMULINK simulation.

The y-axis is the armature current of DC motor, and the x-axis is time (second) that

corresponds to the armature voltage (V). It is similar to the MATLAB version; therefore it

can be concluded that the simple MATLAB model of DC motor used here is valid. The only

Page 85: Ao thesis

75

discrepancy is that the MATLAB version shows slow transition between halt to motion

because the output is limited by the duty cycle which is set to 10% as the minimum.

Figure 4-16: SIMULINK plot of DC motor I-V curve

4.6 System with MPPT vs. Direct-coupled System

The PV water pumping system simulated in the previous section is compared with the

direct-coupled PV water pumping system without MPPT. The irradiance data used here are

the measurements of a sunny day in April in Barcelona, Spain, introduced in Section 4.3.

The total electric energy produced during a 12-hour period is calculated and tabulated in

Table 4-4.

With MPPT Without MPPT Total Energy (simulation) 1.057KWh 0.577KWh Total Energy (theoretical max) 1.060KWh 1.060KWh Efficiency 99.75% 54.42%

Table 4-4: Energy production and efficiency of PV module with and without MPPT

Page 86: Ao thesis

76

The result shows that the PV water pumping system without MPPT has poor

efficiency because of mismatching between the PV module and the DC pump motor load.

On the other hand, it shows that the system with MPPT can utilize more than 99% of PV

capacity. Assuming a DC-DC converter has efficiency more than 90%, the system can

increase the overall efficiency by more than 35% compared to the system without MPPT.

Another set of simulations provides a comparison of the two systems in terms of flow

rates and total volume of water pumped. The results show that MPPT can significantly boost

the performance. As shown in Figure 4-11, the flow rate of Kyocera SD 12-30 water pump

is proportional to the power delivered. When the total dynamic head is 30m, the flow rate

per watt is approximately 86.7cm3/W·min. The minimum power requirement of pump motor

is 35W [13]; therefore as long as the output power is higher than 35W, it pumps water with

the flow rate above. Using the same test condition, the flow rates of pump are obtained from

the MATLAB simulations and shown in Figure 4-17.

0 1 2 3 4 5 6 7 8 9 10 11 120

2

4

6

8

10

12

14

Hour

Flo

w R

ate

(L/m

in)

Loss-less Converter90% Efficiency ConverterDirect-coupled System

Figure 4-17: Flow rates of PV water pumps for a 12-hour period

Simulated with the irradiance data of a sunny day (total dynamic head = 30m)

Page 87: Ao thesis

77

The results show that the direct-coupled PV water pumping system has a severe

disadvantage because the pump stays idle for nearly two more hours in the morning while the

same system with MPPT is already pumping water. Similarly, it goes idle nearly two hours

earlier than the system with MPPT in the afternoon. The flow rate of water is also lower

throughout the operating period.

The total volume of water pumped for the 12-hour period is also calculated for both

systems. The results are tabulated below.

With MPPT

Loss-less Converter

90% Efficiency Converter

Without MPPT

Total Volume of Water Pumped for 12 Hours (simulation)

5.302m3 4.719m3 2.831m3

Table 4-5: Total volume of water pumped for 12 hours

Simulated with the irradiance data of a sunny day (total dynamic head = 30m)

The results show that MPPT offers significant performance improvement. It enables

to pump up to 87% more water than the system without MPPT. Even if the efficiency of

converter is set to 90%, it can still pump 67% more water than the system without MPPT.

Page 88: Ao thesis

78

Chapter 5 Conclusion

5.1 Summary

This study presents a simple but efficient photovoltaic water pumping system. It

models each component and simulates the system using MATLAB. The result shows that

the PV model using the equivalent circuit in moderate complexity provides good matching

with the real PV module. Simulations perform comparative tests for the two MPPT

algorithms using actual irradiance data in the two different weather conditions. The incCond

algorithm shows narrowly but better performance in terms of efficiency compared to the

P&O algorithm under the cloudy weather condition. Even a small improvement of efficiency

could bring large savings if the system is large. However, it could be difficult to justify the

use of incCond algorithm for small low-cost systems since it requires four sensors. In order

to develop a simple low-cost system, this thesis adopts the direct control method which

employs the P&O algorithm but requires only two sensors for output. This control method

offers another benefit of allowing steady-state analysis of the DC-DC converter, as opposed

to the more complex state-space averaging method, because it performs sampling of voltage

and current at the periodic steady state. Simulations use SimPowerSystems in SIMULINK to

model a DC pump motor, and then the model is transferred into MATLAB. It performs

simulations of the whole system and verifies functionality and benefits of MPPT.

Simulations also make comparisons with the system without MPPT in terms of total energy

produced and total volume of water pumped a day. The results validate that MPPT can

significantly increase the efficiency of energy production from PV and the performance of

the PV water pumping system compared to the system without MPPT.

Page 89: Ao thesis

79

5.2 Difficulties and Future Research

Correct modeling of the DC-DC converter and DC water pump is an important area

of study, and various difficulties remain in the current study. A more realistic model of the

DC-DC converter would involve a diode loss, a switching loss in a Power-MOSFET, and

resistive losses in inductors and capacitors. SimPowerSystems provide components to build

electric circuits in SIMULINK and allow including such losses. At the initial phase of

simulation design, attempts to build a Cúk converter in SIMULINK faced unsolvable

difficulties. Building the whole system in SIMULINK, however, could open avenues of

study such as stability analysis of system and implementations of more advanced control

methods.

The model used for simulations of DC water pump gives results within a reasonable

range. The accuracy of model is, however, uncertain because the parameters are only

estimates. If tests could be run on the real water pump motor or an equivalent sized motor to

determine reasonable entries to SIMULINK block parameters, this could lead to more

accurate simulation runs. Also, simply increasing the size of system and using a larger motor

(5hp or above) could allow for better results in SUMILINK, though many PV water pumps

rarely use such large motors.

Physical implementation of the system remains for future research. It may involve

implementation of: a DSP or a microcontroller, a method of supplying power to the

controller, signal conditioning circuits for A/D converters, a driving circuit for Power-

MOSFET, a Cúk converter, and a water level sensor that detects when the water reservoir

reaches full. It may also involve performance analysis on the actual system and comparisons

with simulations.

Page 90: Ao thesis

80

5.3 Concluding Remarks

Issues of energy and global warming are some of the biggest challenges for humanity

in the 21st century. Energy is so important for everyone, and in fact, taking control of the

world’s supply of oil is one of the most important national agenda for United Sates. The

world is getting divided into two groups: the countries that have access to oil and natural gas

resources and those that do not. In contrast, renewable energy resources are ubiquitous

around the world. Especially, PV has a powerful attraction because it produces electric

energy from a free inexhaustible source, the sun, using no moving parts, consuming no fossil

fuels, and creating no pollution or green house gases during the power generation. Together

with decreasing PV module costs and increasing efficiency, PV is getting more pervasive

than ever.

Finally, the author wishes that this thesis serves the interests of other students who are

interested in power electronics for PV applications and provides encouragement towards

more advanced senior project or master’s thesis research.

Page 91: Ao thesis

81

Bibliography

[1] BP Solar BP SX150 - 150W Multi-crystalline Photovoltaic Module Datasheet, 2001 [2] Castañer, Luis & Santiago Silvestre Modelling Photovoltaic Systems, Using PSpice

John Wiley & Sons Ltd, 2002 [3] Chapin, D. M., C. S. Fuller, & G. L. Pearson, Bell Telephone Laboratories, Inc.,

Murray Hill, New Jersey “A New Silicon p-n Junction Photocell for Converting Solar Radiation into Electrical Power” Journal of Applied Physics, Volume 25, Issue 5, May 1954, page 676-677

[4] Dang, Thuy Lam A Digitally-controlled Power Tracker Master’s Thesis, California

Polytechnic State University, Pomona, 1990 [5] Day, Christopher Alan The Design of an Efficient, Elegant, and Cubic Pico-Satellite

Electronics System Master’s Thesis, California Polytechnic State University, San Luis Obispo, 2004

[6] Enslin, John H., Mario S. Wolf, Daniël B. Snyman, & Wernher Swiegers “Integrated

Photovoltaic Maximum Power Point Tracking Converter” IEEE Transactions on Industrial Electronics, Vol. 44, No. 6 December 1997, page 769-773

[7] Green, Martin A. Solar Cells; Operating Principles, Technology, and System

Applications Prentice Hall Inc., 1982 [8] Hart, Daniel W. Introduction to Power Electronics Prentice Hall Inc., 1996

[9] Hohm, D. P. & M. E. Ropp “Comparative Study of Maximum Power Point Tracking

Algorithms” Progress in Photovoltaics: Research and Applications November 2002, page 47-62

[10] Hua, Chihchiang, Jongrong Lin & Chihming Shen “Implementation of a DSP-

Controlled Photovoltaic System with Peak Power Tracking” IEEE Transactions on Industrial Electronics, Vol. 45, No. 1 February 1998, page 99-107

[11] Hussein, K. H., I. Muta, T. Hoshino, & M. Osakada “Maximum Photovoltaic Power

Tracking: an Algorithm for Rapidly Changing Atmospheric Conditions” IEE Proceedings – Generation, Transmission and Distribution – v. 142 January 1995, page 59-64

[12] Koutroulis, Efichios, Kostas Kalaitzakis, Nicholas C. Voulgaris “Development of a

Microcontroller-Based, Photovoltaic Maximum Power Point Tracking Control System” IEEE Transactions on Power Electronics, Vol. 16, No. 1, January 2001, page 46-54

Page 92: Ao thesis

82

[13] Kyocera Solar Inc. Solar Water Pump Applications Guide 2001 (downloaded from www.kyocerasolar.com)

[14] MathWorks Inc. Embedded Target for the TI TMS320C2000™ DSP Platform For

Use with Real-Time Workshop® User’s Guide Version 1 2005 (downloaded from www.mathworks.com)

[15] Messenger, Roger & Jerry Ventre Photovoltaic Systems Engineering 2nd Edition

CRC Press, 2003 [16] Masters, Gilbert M. Renewable and Efficient Electric Power Systems John Wiley &

Sons Ltd, 2004 [17] Mohan, Undeland, Robbins Power Electronics – Converters, Applications, and

Design 3rd Edition John Wiley & Sons Ltd, 2003 [18] Rashid, Muhammad H. Power Electronics - Circuits, Devices, and Applications 3rd

Edition Pearson Education, 2004 [19] Rashid, Muhammad H. Editor-in-Chief Power Electronics Handbook Academic

Press, 2001 [20] Sharaf A. M., Abdulla Ismail, R. A. El-Khatib & S. I. Abu-Azab “A Photovoltaic

Utilization System with Bang-Bang Self-Adjusting Maximum Energy Tracking Controller” International Journal of Energy Research, Volume 22, Issue 12 December 1998, page 1091 - 1098

[21] Taufik EE410 Power Electronics I - Lecture Note Cal Poly State University, San

Luis Obispo, 2004 [22] Taufik EE527 Switching Power Supply Design - Lecture Note Cal Poly State

University, San Luis Obispo, 2004 [23] Texas Instruments “Converting Analog Controllers to Smart Controllers with

TMS320C2000 DSPs” Application Report, June 2004 (downloaded from dspvillage.ti.com/)

[24] Thompson, Marry A. Reverse-Osmosis Desalination of Seawater Powered by

Photovoltaics Without Batteries Doctoral Thesis, Loughborough University, 2003 [25] UNEP “Water Policy and Strategy” (viewed on www.unep.org/dpdl/water/ , August

2005) [26] UNESCO The UN World Water Development Report, 2003 (viewed on

www.unesco.org/water/wwap/wwdr/, August 2005)

Page 93: Ao thesis

83

[27] Walker, Geoff R. “Evaluating MPPT converter topologies using a MATLAB PV model” Australasian Universities Power Engineering Conference, AUPEC ‘00, Brisbane, 2000

Page 94: Ao thesis

84

Appendix A

A.1 MATLAB Functions and Scripts

A.1.1 MATLAB Function for Modeling BP SX 150S PV Module

This MATLAB function (bp_sx150s.m) is to simulate the current-voltage relationship

of BP SX 150S PV module and used in simulations throughout of this thesis.

function Ia = bp_sx150s(Va,G,TaC) % function bp_sx150s.m models the BP SX 150S PV module % calculates module current under given voltage, irradiance and temperature % Ia = bp_sx150s(Va,G,T) % % Out: Ia = Module operating current (A), vector or scalar % In: Va = Module operating voltage (V), vector or scalar % G = Irradiance (1G = 1000 W/m^2), scalar % TaC = Module temperature in deg C, scalar % % Written by Akihiro Oi 7/01/2005 % Revised 7/18/2005 %///////////////////////////////////////////////////////////////////////////// % Define constants k = 1.381e-23; % Boltzmann’s constant q = 1.602e-19; % Electron charge % Following constants are taken from the datasheet of PV module and % curve fitting of I-V character (Use data for 1000W/m^2) n = 1.62; % Diode ideality factor (n), % 1 (ideal diode) < n < 2 Eg = 1.12; % Band gap energy; 1.12eV (Si), 1.42 (GaAs), % 1.5 (CdTe), 1.75 (amorphous Si) Ns = 72; % # of series connected cells (BP SX150s, 72 cells) TrK = 298; % Reference temperature (25C) in Kelvin Voc_TrK = 43.5 /Ns; % Voc (open circuit voltage per cell) @ temp TrK Isc_TrK = 4.75; % Isc (short circuit current per cell) @ temp TrK a = 0.65e-3; % Temperature coefficient of Isc (0.065%/C) % Define variables TaK = 273 + TaC; % Module temperature in Kelvin Vc = Va / Ns; % Cell voltage % Calculate short-circuit current for TaK Isc = Isc_TrK * (1 + (a * (TaK - TrK))); % Calculate photon generated current @ given irradiance Iph = G * Isc; % Define thermal potential (Vt) at temp TrK Vt_TrK = n * k * TrK / q; % Define b = Eg * q/(n*k);

Page 95: Ao thesis

85

b = Eg * q /(n * k); % Calculate reverse saturation current for given temperature Ir_TrK = Isc_TrK / (exp(Voc_TrK / Vt_TrK) -1); Ir = Ir_TrK * (TaK / TrK)^(3/n) * exp(-b * (1 / TaK -1 / TrK)); % Calculate series resistance per cell (Rs = 5.1mOhm) dVdI_Voc = -1.0/Ns; % Take dV/dI @ Voc from I-V curve of datasheet Xv = Ir_TrK / Vt_TrK * exp(Voc_TrK / Vt_TrK); Rs = - dVdI_Voc - 1/Xv; % Define thermal potential (Vt) at temp Ta Vt_Ta = n * k * TaK / q; % Ia = Iph - Ir * (exp((Vc + Ia * Rs) / Vt_Ta) -1) % f(Ia) = Iph - Ia - Ir * ( exp((Vc + Ia * Rs) / Vt_Ta) -1) = 0 % Solve for Ia by Newton's method: Ia2 = Ia1 - f(Ia1)/f'(Ia1) Ia=zeros(size(Vc)); % Initialize Ia with zeros % Perform 5 iterations for j=1:5; Ia = Ia - (Iph - Ia - Ir .* ( exp((Vc + Ia .* Rs) ./ Vt_Ta) -1))... ./ (-1 - Ir * (Rs ./ Vt_Ta) .* exp((Vc + Ia .* Rs) ./ Vt_Ta)); End

A.1.2 MATLAB Script to Draw PV I-V Curves

The following simple MATLAB script is used for Figure 2-12 to draw the I-V

characteristics of various module temperatures. Other plots showing PV characteristics are

done in similar ways using MATLAB. The listing of those MATBAB scripts is omitted.

% plot_iv_temp.m - Script file to draw i-v curves of pv module % with variable temp (0C, 25C, 50C, 75C) % % Akihiro Oi July 18, 2005 %/////////////////////////////////////////////////////////////// clear; % Define constant G = 1; % Functions to plot figure hold on for TaC=0:25:75 Va = linspace (0, 48-TaC/8, 200); Ia = bp_sx150s(Va, G, TaC); plot(Va, Ia) end title('BP SX 150S Photovoltaic Module I-V Curve') xlabel('Module Voltage (V)') ylabel('Module Current (A)')

Page 96: Ao thesis

86

axis([0 50 0 5]) gtext('0C') gtext('25C') gtext('50C') gtext('75C') hold off

A.1.3 MATLAB Function to Find the MPP

This simple MATLAB function is to find the power, voltage, and current at the MPP

of BP SX 150S PV module under the given irradiance and module temperature.

function [Pa_max, Imp, Vmp] = find_mpp(G, TaC) % find_mpp: function to find a maximum power point of pv module % [Pa_max, Imp, Vmp] = find_mpp(G, TaC) % in: G (irradiance, KW/m^2), TaC (temp, deg C) % out: Pa_max (maximum power), Imp, Vmp % % Akihiro Oi July 27, 2005 %//////////////////////////////////////////////////////////////// % Define variables and initialize Va = 12; Pa_max = 0; % Start process while Va < 48-TaC/8 Ia = bp_sx150s(Va,G,TaC); Pa_new = Ia * Va; if Pa_new > Pa_max Pa_max = Pa_new; Imp = Ia; Vmp = Va; end Va = Va + .005; end

A.1.4 MATLAB Script: P&O Algorithm

This MATLAB script is to test the P&O algorithm under the sunny weather condition

in Section 4.3. Other testing in this section is done in a similar way, and listing of testing

code is omitted.

% poTest2: Script file to test the P&O MPPT Algorithm % Testing with slowly changing irradiance %

Page 97: Ao thesis

87

% Akihiro Oi June 29, 2005 % Revised on August 31, 2005 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% clear; % Define constants TaC = 25; % Cell temperature (deg C) C = 0.5; % Step size for ref voltage change (V) % Define variables with initial conditions G = 0.028; % Irradiance (1G = 1000W/m^2) Va = 26.0; % PV voltage Ia = bp_sx150s(Va,G,TaC); % PV current Pa = Va * Ia; % PV output power Vref_new = Va + C; % New reference voltage % Set up arrays storing data for plots Va_array = []; Pa_array = []; % Load irradiance data load irrad; % Irradiance data of a sunny day x = irrad(:,1)'; % Read time data (second) y = irrad(:,2)'; % Read irradiance data xi = 147.4e+3:190.6e+3; % Set points for interpolation yi = interp1(x,y,xi,'cubic'); % Do cubic interpolation % Take 43200 samples (12 hours) for Sample = 1:43.2e+3 % Read irradiance value G = yi(Sample); % Take new measurements Va_new = Vref_new; Ia_new = bp_sx150s(Vref_new,G,TaC); % Calculate new Pa Pa_new = Va_new * Ia_new; deltaPa = Pa_new - Pa; % P&O Algorithm starts here if deltaPa > 0 if Va_new > Va Vref_new = Va_new + C; % Increase Vref else Vref_new = Va_new - C; % Decrease Vref end elseif deltaPa < 0 if Va_new > Va Vref_new = Va_new - C; % Decrease Vref else Vref_new = Va_new + C; %Increase Vref end else Vref_new = Va_new; % No change end % Update history Va = Va_new; Pa = Pa_new; % Store data in arrays for plot

Page 98: Ao thesis

88

Va_array = [Va_array Va]; Pa_array = [Pa_array Pa]; end % Plot result figure plot (Va_array, Pa_array, 'g') % Overlay with P-I curves and MPP Va = linspace (0, 45, 200); hold on for G=.2:.2:1 Ia = bp_sx150s(Va, G, TaC); Pa = Ia.*Va; plot(Va, Pa) [Pa_max, Imp, Vmp] = find_mpp(G, TaC); plot(Vmp, Pa_max, 'r*') end title('P&O Algorithm') xlabel('Module Voltage (V)') ylabel('Module Output Power (W)') axis([0 50 0 160]) %gtext('1000W/m^2') %gtext('800W/m^2') %gtext('600W/m^2') %gtext('400W/m^2') %gtext('200W/m^2') hold off

A.1.5 MATLAB Script: incCond Algorithm

This MATLAB script is to test the incCond algorithm under the cloudy weather

condition in Section 4.3. Other tests in this section are done in a similar way, and the listing

of testing code is omitted.

% incCondTest1: Script file to test incCond MPPT Algorithm % Testing with rapidly changing insolation % % Akihiro Oi June 29, 2005 % Revised on August 31, 2005 %/////////////////////////////////////////////////////////////////////// clear; % Define constants TaC = 25; % Cell temperature (deg C) C = 0.5; % Step size for ref voltage change (V) E = 0.002; % Maximum dI/dV error % Define variables with initial conditions G = 0.045; % Irradiance (1G = 1000W/m^2) Va = 27.2; % PV voltage Ia = bp_sx150s(Va,G,TaC); % PV current Pa = Va * Ia; % PV output power

Page 99: Ao thesis

89

Vref_new = Va + C; % New reference voltage % Set up arrays storing data for plots Va_array = []; Pa_array = []; Pmax_array =[]; % Load irradiance data load irrad7d; % Irradiance data of a cloudy day x = irrad7d(:,1)'; % Read time data (second) y = irrad7d(:,2)'; % Read irradiance data xi = 332.8e+3: 376e+3; % Set points for interpolation yi = interp1(x,y,xi,'cubic'); % Do cubic interpolation % Take 43200 samples (12 hours) for Sample = 1:43.2e+3 % Read irrad value G = yi(Sample); % Take new measurements Va_new = Vref_new; Ia_new = bp_sx150s(Vref_new,G,TaC); % Calculate incremental voltage and current deltaVa = Va_new - Va; deltaIa = Ia_new - Ia; % incCond Algorithm starts here if deltaVa == 0 if deltaIa == 0 Vref_new = Va_new; % No change elseif deltaIa > 0 Vref_new = Va_new + C; % Increase Vref else Vref_new = Va_new - C; % Decrease Vref end else if abs(deltaIa/deltaVa + Ia_new/Va_new) <= E Vref_new = Va_new; % No change else if deltaIa/deltaVa > -Ia_new/Va_new + E Vref_new = Va_new + C; % Increase Vref else Vref_new = Va_new - C; % Decrease Vref end end end % Calculate theoretical max [Pa_max, Imp, Vmp] = find_mpp(G, TaC); % Update history Va = Va_new; Ia = Ia_new; Pa = Va_new * Ia_new; % Store data in arrays for plot Va_array = [Va_array Va]; Pa_array = [Pa_array Pa]; Pmax_array = [Pmax_array Pa_max]; end

Page 100: Ao thesis

90

% Total electric energy: theoretical and actual Pth = sum(Pmax_array)/3600; Pact = sum(Pa_array)/3600; % Plot result figure plot (Va_array, Pa_array, 'g') % Overlay with P-V curves and MPP Va = linspace (0, 45, 200); hold on for G=.2:.2:1 Ia = bp_sx150s(Va, G, TaC); Pa = Ia.*Va; plot(Va, Pa) [Pa_max, Imp, Vmp] = find_mpp(G, TaC); plot(Vmp, Pa_max, 'r*') end title('incCond Method') xlabel('Module Voltage (V)') ylabel('Module Output Power (W)') axis([0 50 0 160]) %gtext('1000W/m^2') %gtext('800W/m^2') %gtext('600W/m^2') %gtext('400W/m^2') %gtext('200W/m^2') hold off

A.1.6 MATLAB Script for MPPT with Output Sensing Direct Control Method

This MATLAB script is to test the output sensing direct control method with the P&O

algorithm in Section 4.4. The load is a resistive load (6)

% po_dutyCycle2Test2: % Script file to test output sensing direct control method % P&O MPPT Algorithm is used % % Written by Akihiro Oi: June 23, 2005 % Revised: September 8, 2005 %////////////////////////////////////////////////////////// clear; % Define constants TaC = 25; % Cell temperature (deg C) Rload = 6; % Resistive Load (Ohms) deltaD = .0035; % Step size for Duty Cycle change (.35%) % Define variables with initial conditions G = .1; % Irradiance (1G = 1000W/m^2) D = .22; % Duty Cycle, D(k+1), (0.1 Min, O.6 Max) D_k_1 = .22; % Duty Cycle, D(k-1), (0.1 Min, O.6 Max) Va_k_1 = 0; % PV voltage, Va(k-1) Pa_k_1 = 0; % PV output power, Pa(k-1)

Page 101: Ao thesis

91

Vo_k_1 = 0; % Output voltage of Cúk converter, Vo(k-1) Io_k_1 = 0; % Output current of Cúk converter, Io(k-1) Po_k_1 = 0; % Output power of Cúk converter, Po(k-1) % Set up arrays storing data for plots Va_array = []; Ia_array = []; Pa_array = []; Vo_array = []; Io_array = []; Po_array = []; D_array = []; % Take 3600 samples for Sample = 1:3600 % Read present value of duty cycle D_k = D; % Calculate input impedance of ideal Cúk converter (Rin) Rin = (1-D_k)^2/D_k^2 * Rload; % Locate the operating point of PV module and % calculate its voltage, current, and power f = @(x) x - Rin*bp_sx150s(x,G,TaC); Va_k = fzero (f, [0, 45]); Ia_k = bp_sx150s(Va_k,G,TaC); Pa_k = Va_k * Ia_k; % Measure the outputs for ideal Cúk converter Vo_k = D_k/(1-D_k) * Va_k; Io_k = (1-D_k)/D_k * Ia_k; % Calculate new Po and deltaPo Po_k = Vo_k * Io_k; deltaPo = Po_k - Po_k_1; % Output voltage and current protection (30V/5A Max) if (Vo_k > 30.6) | (Io_k > 5.1) % '2%' margin added if deltaPo >= 0 if D_k > D_k_1 D = D_k - deltaD; % Decrease duty cycle else D = D_k + deltaD; % Increase duty cycle end else if D_k > D_k_1 D = D_k + deltaD; % Increase duty cycle else D_k = D_k - deltaD; % Decrease duty cycle end end elseif (Vo_k > 30) | (Io_k > 5) D = D_k; % No change elseif D_k < .1 D = .1; % Set minimum duty cycle elseif D_k > .6 D = .6; % Set maximum duty cycle else % P&O Algorithm starts here if deltaPo > 0 if D_k > D_k_1 D = D_k + deltaD; % Increase duty cycle

Page 102: Ao thesis

92

else D = D_k - deltaD; % Decrease duty cycle end elseif deltaPo < 0 if D_k > D_k_1 D = D_k - deltaD; % Decrease duty cycle else D = D_k + deltaD; % Increase duty cycle end else D = D_k; % No change end end % Update history Va_k_1 = Va_k; Ia_k_1 = Ia_k; Pa_k_1 = Pa_k; Vo_k_1 = Vo_k; Io_k_1 = Io_k; Po_k_1 = Po_k; D_k_1 = D_k; % Store data in arrays for plots Va_array = [Va_array Va_k]; Ia_array = [Ia_array Ia_k]; Pa_array = [Pa_array Pa_k]; Vo_array = [Vo_array Vo_k]; Io_array = [Io_array Io_k]; Po_array = [Po_array Po_k]; D_array = [D_array D_k]; % Increase insolation until G=1 if (Sample > 20) & (G < 1) G = G + .0003; end % Goto next sample end % Functions to plot figure(1) plot (Va_array, Pa_array, 'g') % Overlay with P-V curves and MPP Va = linspace (0, 45, 200); hold on for G=.2:.2:1 Ia = bp_sx150s(Va, G, TaC); Pa = Ia.*Va; plot(Va, Pa) [Pa_max, Imp, Vmp] = find_mpp(G, TaC); plot(Vmp, Pa_max, 'r*') end title('(a) PV Power vs. Voltage') xlabel('Module Voltage (V)') ylabel('Module Output Power (W)') axis([0 50 0 160]) hold off figure(2)

Page 103: Ao thesis

93

plot (Va_array, Ia_array, 'g') % Overlay with I-V curves and MPP hold on for G=.2:.2:1 Ia = bp_sx150s(Va, G, TaC); plot(Va, Ia) [Pa_max, Imp, Vmp] = find_mpp(G, TaC); plot(Vmp, Imp, 'r*') end title('(b) PV Current vs. Voltage') xlabel('Module Voltage (V)') ylabel('Module Current(A)') axis([0 50 0 5]) hold off figure(3) plot (D_array, Po_array, 'b') title('(c) Output Power vs. Duty Cycle') xlabel('Duty Cycle') ylabel('Output Power (W)') axis([0 1 0 160]) figure(4) plot (Vo_array, Io_array, 'g.') hold on Vo = linspace (0, 35, 200); Io = Vo ./ Rload; plot (Vo, Io) title('(d) Output Current vs. Voltage') xlabel('Output Voltage (V)') ylabel('Output Current (A)') axis([0 35 0 6]) hold off

A.1.7 MATLAB Script for MPPT Simulations with DC Pump Motor Load

This MATLAB script is to test MPPT functionality with the DC pump motor as a

load introduced in Section 4.5. It uses the output sensing direct control method with the

P&O algorithm. It also calculates total energy output and total volume of water pump for a

12-hour period.

% po_dutyCycleTest4: % Output sensing direct control method with the P&O algorithm % (With variable load mimics DC pump motor) % Irradiance data on a sunny day % % Written by Akihiro Oi: September 6, 2005 % Revised: September 9, 2005 %////////////////////////////////////////////////////////// clear;

Page 104: Ao thesis

94

% Define constants TaC = 25; % Cell temperature (deg C) deltaD = .0035; % Step size for Duty Cycle change (.35%) % Define variables with initial conditions Rload = .2; % Initial load (armature resistance of DC motor) (Ohms) G = 0.028; % Irradiance (1G = 1000W/m^2) D = .10; % Duty Cycle, D(k+1), (0.1 Min, O.6 Max) D_k_1 = .10; % Duty Cycle, D(k-1), (0.1 Min, O.6 Max) Va_k_1 = 0; % PV voltage, Va(k-1) Pa_k_1 = 0; % PV output power, Pa(k-1) Vo_k_1 = 0; % Output voltage of Cúk converter, Vo(k-1) Io_k_1 = 0; % Output current of Cúk converter, Io(k-1) Po_k_1 = 0; % Output power of Cúk converter, Po(k-1) Volume = 0; % Volume of water pumped per sample % Set up arrays storing data for plots Va_array = []; Ia_array = []; Pa_array = []; Vo_array = []; Io_array = []; Po_array = []; D_array = []; Rload_array = []; %Pmax_array =[]; Volume_array =[]; % Load irradiance data load irrad; % Irradiance data of a sunny day x = irrad(:,1)'; % Read time data (second) y = irrad(:,2)'; % Read irradiance data xi = 147.4e+3:190.6e+3; % Set points for interpolation yi = interp1(x,y,xi,'cubic'); % Do cubic interpolation % Take 43200 samples (12 hours) for Sample = 1:43.2e+3 % Read irradiance value G = yi(Sample); % Read present value of duty cycle D_k = D; % Calculate input impedance of ideal Cúk converter (Rin) Rin = (1-D_k)^2/D_k^2 * Rload; % Locate the operating point of PV module and % calculate its voltage, current, and power f = @(x) x - Rin*bp_sx150s(x,G,TaC); Va_k = fzero (f, [0, 45]); Ia_k = bp_sx150s(Va_k,G,TaC); Pa_k = Va_k * Ia_k; % Measure the outputs for ideal Cúk converter Vo_k = D_k/(1-D_k) * Va_k; Io_k = (1-D_k)/D_k * Ia_k; % Calculate new Po and deltaPo Po_k = Vo_k * Io_k; deltaPo = Po_k - Po_k_1; % Output voltage and current protection (30V/5A Max)

Page 105: Ao thesis

95

if (Vo_k > 30.6) | (Io_k > 5.1) % '2%' margin added if deltaPo >= 0 if D_k > D_k_1 D = D_k - deltaD; % Decrease duty cycle else D = D_k + deltaD; % Increase duty cycle end else if D_k > D_k_1 D = D_k + deltaD; % Increase duty cycle else D_k = D_k - deltaD; % Decrease duty cycle end end elseif (Vo_k > 30) | (Io_k > 5) D = D_k; % No change elseif D_k < .1 D = .1; % Set minimum duty cycle elseif D_k > .6 D = .6; % Set maximum duty cycle else % P&O Algorithm starts here if deltaPo > 0 if D_k > D_k_1 D = D_k + deltaD; % Increase duty cycle else D = D_k - deltaD; % Decrease duty cycle end elseif deltaPo < 0 if D_k > D_k_1 D = D_k - deltaD; % Decrease duty cycle else D = D_k + deltaD; % Increase duty cycle end else D = D_k; % No change end end % Update history Va_k_1 = Va_k; Ia_k_1 = Ia_k; Pa_k_1 = Pa_k; Vo_k_1 = Vo_k; Io_k_1 = Io_k; Po_k_1 = Po_k; D_k_1 = D_k; % Calculate theoretical max %[Pa_max, Imp, Vmp] = find_mpp(G, TaC); % Calculate volume water pumped (90% efficiency converter) if (.9*Po_k) > 35 Volume = 13/(60*150)*(.9*Po_k); % Volume of water pumped (L/sec) else Volume =0; end % Store data in arrays for plots Va_array = [Va_array Va_k]; Ia_array = [Ia_array Ia_k]; Pa_array = [Pa_array Pa_k]; Vo_array = [Vo_array Vo_k]; Io_array = [Io_array Io_k];

Page 106: Ao thesis

96

Po_array = [Po_array Po_k]; D_array = [D_array D_k]; Rload_array = [Rload_array Rload]; %Pmax_array = [Pmax_array Pa_max]; Volume_array = [Volume_array Volume]; % Variable load that mimics DC motor if (Sample > 160) Rload = 9.5e-005*Vo_k^3 - 0.0087*Vo_k^2 + 0.37*Vo_k + 0.2; end % Goto next sample end % Total electric energy (Wh): theoretical and actual %Pth = sum(Pmax_array)/3600; Pact = sum(Po_array)/3600; % Volume of water pumped (L/day) TotalVolume = sum(Volume_array); % Functions to plot figure(1) plot (Va_array, Pa_array, 'g') % Overlay with P-V curves and MPP Va = linspace (0, 45, 200); hold on for G=.2:.2:1 Ia = bp_sx150s(Va, G, TaC); Pa = Ia.*Va; plot(Va, Pa) [Pa_max, Imp, Vmp] = find_mpp(G, TaC); plot(Vmp, Pa_max, 'r*') end title('(a) PV Power vs. Voltage') xlabel('Module Voltage (V)') ylabel('Module Output Power (W)') axis([0 50 0 160]) hold off figure(2) plot (Va_array, Ia_array, 'g') % Overlay with I-V curves and MPP hold on for G=.2:.2:1 Ia = bp_sx150s(Va, G, TaC); plot(Va, Ia) [Pa_max, Imp, Vmp] = find_mpp(G, TaC); plot(Vmp, Imp, 'r*') end title('(b) PV Current vs. Voltage') xlabel('Module Voltage (V)') ylabel('Module Current(A)') axis([0 50 0 5]) hold off figure(3) plot (D_array, Po_array, 'b')

Page 107: Ao thesis

97

title('(c) Output Power vs. Duty Cycle') xlabel('Duty Cycle') ylabel('Output Power (W)') axis([0 1 0 160]) figure(4) plot (Vo_array, Io_array, 'g.') title('(d) Output Current vs. Voltage') xlabel('Output Voltage (V)') ylabel('Output Current (A)') axis([0 30 0 6]) figure(5) hold on VolumeMin = Volume_array.*60; sample = 1:43.2e+3; Hour=sample./3600; plot(Hour, VolumeMin) xlabel('Hour') ylabel('Flow Rate (L/min)') axis([0 12 0 14])

A.1.8 MATLAB Script for MPPT Simulations with Direct-coupled DC Water Pump

This MATLAB script is to make comparative tests with PV water pumping system

which employs direct-coupling between PV and the pump motor in Section 4.6. The script

also calculates total energy output and total volume of water pump for a 12-hour period.

% directCoupledSystem: % DC pump motor is direct-coupled with PV module % (Variable load mimics DC pump motor) % * Testing on a sunny day % % Written by Akihiro Oi: September 6, 2005 % Revised: September 9, 2005 %////////////////////////////////////////////////////////// clear; % Define constants TaC = 25; % Cell temperature (deg C) % Define variables with initial conditions Rload = .2; % Initial load (armature resistance of DC motor)(Ohms) G = 0.028; % Irradiance (1G = 1000W/m^2) % Set up arrays storing data for plots Va_array = []; Ia_array = []; Pa_array = []; Vo_array = []; Io_array = []; Po_array = []; Rload_array = []; Pmax_array =[]; Volume_array =[];

Page 108: Ao thesis

98

% Load irradiance data load irrad; % Irradiance data of a sunny day x = irrad(:,1)'; % Read time data (second) y = irrad(:,2)'; % Read irradiance data xi = 147.4e+3:190.6e+3; % Set points for interpolation yi = interp1(x,y,xi,'cubic'); % Do cubic interpolation % Take 43200 samples (12 hours) for Sample = 1:43.2e+3 % Read irradiance value G = yi(Sample); % Locate the operating point of PV module and % calculate its voltage, current, and power f = @(x) x - Rload*bp_sx150s(x,G,TaC); Va_k = fzero (f, [0, 45]); Ia_k = bp_sx150s(Va_k,G,TaC); Pa_k = Va_k * Ia_k; % Measure the outputs Vo_k = Va_k; Io_k = Ia_k; Po_k = Pa_k; % Calculate theoretical max [Pa_max, Imp, Vmp] = find_mpp(G, TaC); % Calculate volume water pumped if Po_k >= 35 Volume = 13/(60*150)*Po_k; % Volume of water pumped (L/sec) else Volume = 0; end % Store data in arrays for plots Va_array = [Va_array Va_k]; Ia_array = [Ia_array Ia_k]; Pa_array = [Pa_array Pa_k]; Vo_array = [Vo_array Vo_k]; Io_array = [Io_array Io_k]; Po_array = [Po_array Po_k]; Rload_array = [Rload_array Rload]; Pmax_array = [Pmax_array Pa_max]; Volume_array = [Volume_array Volume]; % Variable load that mimics DC motor if (Sample > 160) Rload = 9.5e-005*Vo_k^3 - 0.0087*Vo_k^2 + 0.37*Vo_k + 0.2; end % Goto next sample end % Total electric energy (Wh): theoretical and actual Pth = sum(Pmax_array)/3600; Pact = sum(Po_array)/3600; % Volume of water pumped (L/day) TotalVolume = sum(Volume_array); % Functions to plot

Page 109: Ao thesis

99

figure(1) plot (Va_array, Pa_array, 'g') % Overlay with P-V curves and MPP Va = linspace (0, 45, 200); hold on for G=.2:.2:1 Ia = bp_sx150s(Va, G, TaC); Pa = Ia.*Va; plot(Va, Pa) [Pa_max, Imp, Vmp] = find_mpp(G, TaC); plot(Vmp, Pa_max, 'r*') end title('(a)Direct-coupled System') xlabel('Module Voltage (V)') ylabel('Module Output Power (W)') axis([0 50 0 160]) hold off figure(2) plot (Va_array, Ia_array, 'g') % Overlay with I-V curves and MPP hold on for G=.2:.2:1 Ia = bp_sx150s(Va, G, TaC); plot(Va, Ia) [Pa_max, Imp, Vmp] = find_mpp(G, TaC); plot(Vmp, Imp, 'r*') end title('(b) PV Current vs. Voltage') xlabel('Module Voltage (V)') ylabel('Module Current(A)') axis([0 50 0 5]) hold off figure(3) plot (Vo_array, Io_array, 'g.') title('(c) Output Current vs. Voltage') xlabel('Output Voltage (V)') ylabel('Output Current (A)') axis([0 35 0 6]) figure(4) hold on VolumeMin = Volume_array.*60; sample = 1:43.2e+3; Hour=sample./3600; plot(Hour, VolumeMin) xlabel('Hour') ylabel('Flow Rate (L/min)') axis([0 12 0 14])

Page 110: Ao thesis

100

A.2 MPPT Simulations with Resistive Load

The direct control method (input sensing type), discussed in Section 3.6.2, is

implemented with both P&O algorithm and incCond algorithm. The results are very similar

to one in Section 4.4.

A.2.1 Direct Control Method with P&O Algorithm

0 5 10 15 20 25 30 35 40 45 500

20

40

60

80

100

120

140

160(a) PV Power vs. Voltage

Module Voltage (V)

Mod

ule

Out

put P

ower

(W)

1000W/m2

800W/m2

600W/m2600W/m2

400W/m2

200W/m2

start

end

0 5 10 15 20 25 30 35 40 45 50

0

0.5

1

1.5

2

2.5

3

3.5

4

4.5

5(b) PV Current vs. Voltage

Module Voltage (V)

Mod

ule

Cur

rent

(A)

1000W/m2

800W/m2

600W/m2

400W/m2

200W/m2

start

end

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 10

20

40

60

80

100

120

140

160(c) Module Power vs. Duty Cycle

Duty Cycle

Mod

ule

Out

put P

ower

(W)

start

end

0 5 10 15 20 25 30 35

0

1

2

3

4

5

6(d) Output Current vs. Voltage

Output Voltage (V)

Out

put C

urre

nt (A

)

Load Line

start

end

Figure A-1: MPPT Simulations with the direct control method (P&O algorithm)

Page 111: Ao thesis

101

A.2.2 Direct Control Method with incCond Algorithm

0 5 10 15 20 25 30 35 40 45 500

20

40

60

80

100

120

140

160(a) PV Power vs. Voltage

Module Voltage (V)

Mod

ule

Out

put P

ower

(W)

1000W/m2

800W/m2

600W/m2

400W/m2

200W/m2

start

end

0 5 10 15 20 25 30 35 40 45 50

0

0.5

1

1.5

2

2.5

3

3.5

4

4.5

5(b) PV Current vs. Voltage

Module Voltage (V)

Mod

ule

Cur

rent

(A)

1000W/m2

800W/m2

600W/m2

400W/m2

200W/m2

end

start

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 10

20

40

60

80

100

120

140

160(c) Module Power vs. Duty Cycle

Duty Cycle

Mod

ule

Out

put P

ower

(W)

start

end

0 5 10 15 20 25 30 35

0

1

2

3

4

5

6(d) Output Current vs. Voltage

Output Voltage (V)

Out

put C

urre

nt (A

)

Load Line

start

end

Figure A-2: MPPT Simulations with the direct control method (incCond algorithm)

Page 112: Ao thesis

102

Appendix B

B.1 DSP Control

The power electronics lab located in the building 20, room 104, has a DSP Starter Kit

(DSK) for Texas Instruments (TI) TMS320F2812 DSP. This appendix provides introduction

of this DSP and the SIMULNK tool for implementation of DSP.

B.1.1 TMS320F2812 DSP

TI (dspvillage.ti.com) provides a wide range of DSPs for different applications.

TMS320F2812 is one of DSPs in the TMS320C28x fixed-point DSP family designed for

control applications. It has the 32-bit digital controller core and offers 150MIPS of

performance which enables implementation of more complex algorithms and DC motor

drives including control of brushless motors. It has 16 channels of high resolution12-bit A/D

converters, thus it enables to control multiple devices with a single DSP.

B.1.2 SIMULNK and TI DSP

It takes a long process to learn implementation of DSP, and it is very challenging in

the beginning. MathWorks offers a tool called “Embedded Target for the TI TMS320C2000

DSP Platform” which facilitates implementation of DSP by integrating SIMULINK and

MATLAB with TI eZdsp DSP development kit [14]. MATLAB Version 7 (Release 14)

includes this tool. The tool allows designing a control system in SIMULINK and generates

C code for TI DSP from a SIMULIK model [14]. Please refer to [14] for more details.

Page 113: Ao thesis

103

B.1.3 Example

The following SIMULINK block diagram presents a simple example of implementing

control system in SIMULINK using the Blockset for TI DSP. As shown in Figure B-1, the

system consists of the following blocks: C28x ADC, a gain, C28x PWM, and F2812 eZdsp.

Another set of block diagram located below is to emulate this system. The analog voltage

(0.39V) is input to the A/D converter. The PWM generator is also emulated, and the gain is

included in the sub-block. Figure B-2 shows the input voltage (0.39V) and the PWM output

shown as duty cycle (10%). In practice, a control law comes in the place of gain block. It

could be SIMULINK blocks or an embedded MATLAB function.

PWM Emulation

Subsystem

Pulse WidthControl

12.

Gain1F2812 eZdsp

Duty Cycle(%)

W1 C28x PWM

C28x PWM

C28x ADC

C28x ADC

0.39

Analog Voltage

Info

Figure B-1: A simple example of generating PWM from the voltage input

Figure B-2: Plots of the input voltage and the PWM output shown as duty cycle