255
Improving Battery Charging with Solar Panels Dissertation Presented by Florent Michael Boico to The Department of Electrical and Computer Engineering in partial fulfillment of the requirements for the degree of Doctor of Philosophy in Electrical Engineering Northeastern University Boston, Massachusetts November 2008

Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

Embed Size (px)

Citation preview

Page 1: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

Improving Battery Charging with SolarPanels

Dissertation Presented

by

Florent Michael Boico

to

The Department of Electrical and Computer Engineering

in partial fulfillment of the requirements for the degree of

Doctor of Philosophy

in

Electrical Engineering

Northeastern UniversityBoston, Massachusetts

November 2008

Page 2: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

Contents

1 Research Motivation 1

2 Introduction 62.1 Characteristics of Modern Rechargeable Batteries . . . . . . . . . . . . 7

2.1.1 Existing NiMH Charge Control Methods . . . . . . . . . . . . 102.1.2 Existing Li-ion Charge Control Methods . . . . . . . . . . . . 13

2.2 Portable Photovoltaic Generation . . . . . . . . . . . . . . . . . . . . . 152.2.1 Principle and Technologies . . . . . . . . . . . . . . . . . . . . 152.2.2 Electrical Model . . . . . . . . . . . . . . . . . . . . . . . . . 162.2.3 Maximum Power Point Tracking . . . . . . . . . . . . . . . . . 20

2.3 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28

3 Causes of Failure in Charge Control Algorithms 293.1 Failure in Voltage Based Charge Detection Methods . . . . . . . . . . . 343.2 Failure in Temperature Based Charge Detection Methods . . . . . . . . 353.3 Failure in Li-ion Charge Control Algorithms . . . . . . . . . . . . . . . 393.4 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41

4 Proposed Charge Control Algorithms 424.1 New Temperature Based Algorithm for NiMH Batteries . . . . . . . . . 43

4.1.1 Charge Control Algorithm Robustness . . . . . . . . . . . . . . 564.1.2 Experiments on Standard AA Cell System . . . . . . . . . . . . 61

4.2 Improved Voltage Based Algorithm . . . . . . . . . . . . . . . . . . . 644.3 Charge Control Algorithm for Li-ion Batteries . . . . . . . . . . . . . . 684.4 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71

5 Comparison and Analysis of Maximum Power Point Tracking Methods 725.1 Performance of Different Feedback Methods . . . . . . . . . . . . . . . 74

ii

Page 3: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

5.1.1 Effects of the Different Implementation Methods . . . . . . . . 795.1.2 Resolution of the Digital Controller and Dithering . . . . . . . 835.1.3 Summary of Analysis . . . . . . . . . . . . . . . . . . . . . . . 95

5.2 Improvement of Maximum Power Point Tracking Through Bypass Switch 965.3 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100

6 Prototype For a Commercial Battery Charger 1026.0.1 Topology . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106

6.1 Battery Voltage and Chemistry Detection . . . . . . . . . . . . . . . . 1136.2 Operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114

6.2.1 Low Level Control . . . . . . . . . . . . . . . . . . . . . . . . 1156.2.2 Maximum Power Point Tracking . . . . . . . . . . . . . . . . . 1196.2.3 The State Machine . . . . . . . . . . . . . . . . . . . . . . . . 1226.2.4 Feedback Controller Design . . . . . . . . . . . . . . . . . . . 126

6.3 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 150

7 Multi panel Maximum Power Point Tracking 1517.1 The Classic Perturb and Observe Method . . . . . . . . . . . . . . . . 1537.2 Single Sensor, Multiple Panel MPPT Algorithms . . . . . . . . . . . . 155

7.2.1 Interleaving MPPT Algorithm . . . . . . . . . . . . . . . . . . 1587.2.2 Gradient Ascent Interleaved Algorithm . . . . . . . . . . . . . 166

7.3 Proposed MPPT System Architecture . . . . . . . . . . . . . . . . . . 1767.3.1 Operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1797.3.2 Experiments . . . . . . . . . . . . . . . . . . . . . . . . . . . 1887.3.3 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . 191

8 Conclusion 1938.1 Issues and Future Research . . . . . . . . . . . . . . . . . . . . . . . . 197

9 Annexe 2149.1 Temperature Measurements for BB390 Related Experiments . . . . . . 2159.2 Parameter Calculation for the SEPIC Converter: . . . . . . . . . . . . . 2169.3 Multi-Input Boost Converter Simulations . . . . . . . . . . . . . . . . 2239.4 SEPIC Prototype for PowerFilm, Inc. . . . . . . . . . . . . . . . . . . 2269.5 Matlab Scripts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 228

9.5.1 Simulation of a Three Inputs Boost Converter Using a NewtonRaphson Algorithm . . . . . . . . . . . . . . . . . . . . . . . . 228

9.5.2 Simulation of a Three Input, Single Inductor Converter . . . . . 232

iii

Page 4: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

9.5.3 Model of the Boost-Buck Converter . . . . . . . . . . . . . . . 234

iv

Page 5: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

List of Figures

1.1 A 30W military grade foldable solar panel . . . . . . . . . . . . . . . . 11.2 Missions bring advanced scouts and special ops far from their recharging

sites . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3

2.1 Typical charging curve for a NiMH cell under constant charging current.Top: voltage. Bottom: temperature . . . . . . . . . . . . . . . . . . . 11

2.2 Typical charging curve for a Li-ion cell . . . . . . . . . . . . . . . . . 142.3 An amourphous sillicon photovoltaic cell from Powerfilm Inc. . . . . . 162.4 Simple electrical model of a photovoltaic cell. . . . . . . . . . . . . . 172.5 Typical characteristic of a solar panel. . . . . . . . . . . . . . . . . . . 182.6 Typical power characteristic of a solar panel. . . . . . . . . . . . . . . 192.7 The Perturb & Observe algorithm. . . . . . . . . . . . . . . . . . . . . 232.8 The Perturb & Observe algorithm. . . . . . . . . . . . . . . . . . . . . 242.9 The Perturb & Observe algorithm convergence. . . . . . . . . . . . . . 242.10 The Incremental Conductance algorithm. . . . . . . . . . . . . . . . . . 26

3.1 A view of an open BB390 NiMH battery . . . . . . . . . . . . . . . . . 303.2 Experimental setup for the analysis of the battery behavior during charge. 313.3 Outdoor experimental setup. . . . . . . . . . . . . . . . . . . . . . . . 323.4 Variation of the terminal voltage of the battery with varying charging

current. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 343.5 Evolution of the temperature around the point of overcharge for different

charging current. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 363.6 Experiment at room temperature showing that the cells’ temperature

changes slowly compared to sags in the charging current. . . . . . . . . 373.7 Li-ion battery charging from a sagging current source (Top: voltage,

Middle: current) and charge termination indicator using Liion chargecontrol algorithm programmed in Matlab (Bottom). . . . . . . . . . . . 40

v

Page 6: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

4.1 Evolution of the temperature inside the battery pack (two solid lines)and on the surface of the pack (dashed line) when heated by an externalsource of radiation (a halogen light). . . . . . . . . . . . . . . . . . . . 44

4.2 Proposed new method. In situation (a) and (b), overcharge cannot beproperly detected. Using a second cell as reference solves the problem. . 46

4.3 Proposed new method. In situation (a) and (b), overcharge cannot beproperly detected. Using a second cell as reference solves the problem. . 48

4.4 (a) Voltage of the two legs, (b) Charging current in each leg, (c) tem-perature of each leg, (d) Derivative of temperature at Leg1(calculatedover a sliding window of 5min), (e) Derivative of the difference of thetemperatures. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50

4.5 (a) Voltage of the two legs, (b) Current of two legs, (c) Temperature ofeach leg (Charging from a constant current source). Potential overchargeis detected at t=15min but is then considered as a false alarm and chargecontinues until a second potential overcharge is correctly identified asreal slightly before t=100min. . . . . . . . . . . . . . . . . . . . . . . 53

4.6 Typical cloudy day outdoor experiment realized using a 30W solar panelcharging the battery pack. Despite changes in the charging current asovercharge is correctly detected at t=166min. . . . . . . . . . . . . . . 54

4.7 Clouds at the beginning of the experiment. The data recording stopswhen the battery has been identified as reaching full SOC . . . . . . . . 55

4.8 Temperature of the two legs in the battery pack with partial shadingadded and removed. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57

4.9 Effect of wind on the temperature of the battery pack when overcharging. 584.10 Evolution of the temperature in Leg 1 and Leg 2 when only Leg 1 is

charged. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 604.11 Experimental setup for testing the new temperature algorithm on AA

NiMH cells in the lab. The system charges the four AA cells in twoindependent legs and halogen lights are used to simulate sunlight. Ther-mistors are inserted under each pair of cells . . . . . . . . . . . . . . . 61

4.12 Experiment in the lab with constant charging current. A heat source isbriefly applied at t=30min . . . . . . . . . . . . . . . . . . . . . . . . 62

4.13 New dV/dt algorithm proposed to overcome the false detection issue.Large drops of voltage or current reset the algorithm instead of haltingthe charge. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64

vi

Page 7: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

4.14 Outdoor solar battery charging with new voltage detection charge con-trol algorithm. The algorithm has the ability to handle disturbances inthe current. At t=65min, the drop in the current (due to shade) is de-tected and the algorithm does not get fooled. At t=260min, overcharge isdetected. Conventional voltage detection algorithms falsely stop charg-ing at t=65min. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65

4.15 Outdoor experiment with solar panel. Top: voltage of the battery. Mid-dle: charging current. Bottom: overcharge detection . . . . . . . . . . . 67

4.16 Charge control algorithm immune to power fluctuation from the input . 684.17 Li-ion battery charging from a sagging current source (Top: voltage,

Middle: current) and charge termination indicator using Liion chargecontrol algorithm programmed in Matlab (Bottom). . . . . . . . . . . . 70

5.1 Different implementation of the Perturb and Observe control loop. (a):P&O on the duty cycle. (b) P&O on the PV array voltage with analogfeedback loop (because the microcontroller does not have a D/A con-verter, the voltage reference is output by the in the form of a duty cycleand averaged .) (c) P&O on the PV array voltage with digital feedbackloop. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75

5.2 Perturb and observe algorithm. Top: output current. Bottom: Voltageacross the solar panel. The solar panel operating point around the maxi-mum power point. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78

5.3 A sudden drop in the light intensity can make the system react erraticallyand cause large drop in the input voltage (Top). Bottom trace shows theoutput current . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79

5.4 Response of the MPPT with voltage control to a sudden change in lightintensity. Ch2: Input voltage, Ch4: output current (1V ⇔ 1A). Thevoltage response of the controller is smooth thanks to a fast response ofthe voltage feedback loop. . . . . . . . . . . . . . . . . . . . . . . . . 80

5.5 Response to a step of the voltage reference. Top (Ch4): Output currentmeasurement. Bottom (Ch2): Solar Panel Voltage. . . . . . . . . . . . 81

5.6 Response of the input voltage (PV array’s voltage) to a step of the volt-age reference. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82

5.7 Characteristic of the solar panel and simplified model . . . . . . . . . . 845.8 Voltage of the solar panel as a function of the duty cycle. . . . . . . . . 875.9 Variation in the steady state input voltage for 1 bit of increment of the

duty cycle as a function of the steady state duty cycle. The duty cycleregister is 5.6 bit large. . . . . . . . . . . . . . . . . . . . . . . . . . . 88

vii

Page 8: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

5.10 Behavior of a 2 bit dither pattern: the digital PWM can generate signalby step of 1 LSB (least significant bit). Dithering alternates the PWMlevels to create virtual intermediate levels . . . . . . . . . . . . . . . . 89

5.11 Karnaugh map of the 2 bits dither function. . . . . . . . . . . . . . . . 915.12 Variation in the steady state input voltage for 1 bit of increment of the

duty cycle as a function of the steady state duty cycle. The duty cycleregister is 7.6 bit large. . . . . . . . . . . . . . . . . . . . . . . . . . . 92

5.13 Voltage regulation before dithering . . . . . . . . . . . . . . . . . . . 935.14 Voltage regulation after introduction of a 2 bits dithering . . . . . . . . 945.15 Summary of the comparison between the different configuration. . . . . 965.16 A Maximum Power Point Tracker with bypass switch (SEPIC topology). 975.17 Output power from the system for different output voltages with direct

connection, MPPT converter, and proposed hybrid system. . . . . . . . 985.18 An algorithm that switches between Perturbation of the DC/DC con-

verter and direct connection between the solar panel and the load inorder to maximize the output power in all cases. . . . . . . . . . . . . . 99

6.1 Charger prototype connected to battery and solar panel. . . . . . . . . . 1026.2 System diagram of the prototype. . . . . . . . . . . . . . . . . . . . . . 1056.3 Topology of the chosen converter. . . . . . . . . . . . . . . . . . . . . 1076.4 Schematic of the charge pump for the proper driving of the primary switch1086.5 New Boost-Buck converter. Top: Power circuit. Bottom: Control layer.

The second layer is used as a ground plane. The third layer is used foradditional routing of the control circuit as well as additional ground plane.110

6.6 Efficiency of the converter for various input voltages . . . . . . . . . . 1116.7 Pin connection diagram on the battery side (top) and on the solar panel

side(bottom) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1136.8 Simplified organization diagram of the function programmed in the charger1146.9 Low level control of the DC/DC converter. The current feedback loop

controls the output current to a reference set by the charge control al-gorithm. The voltage feedback loop controls the PV array’s voltage ac-cording to the value set by the MPPT algorithm. Switching from oneloop to another happens when the current exceeds a limit or when thecurrent cannot be maintained. Each step of this scheme is a set of rou-tines programmed in the same microcontroller. . . . . . . . . . . . . . 117

viii

Page 9: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

6.10 Load of the CPU. executing the control algorithm for the DC/DC con-verter. The low state of the waveform indicates that the CPU is execut-ing the control algorithm while the high state represent the time whenthe CPU is free to execute the rest of the functions of the program. . . . 118

6.11 MPPT bypass algorithm for improved efficiency when the battery volt-age matches the Maximum Power Point of the solar panel . . . . . . . . 122

6.12 State machine for the NiMH BB390 battery . . . . . . . . . . . . . . . 1236.13 State machine for the Li-ion BB32590 battery . . . . . . . . . . . . . . 1246.14 Shaded area shows the possible operating area at the input of the DC/DC

converter. Dashed curves show example of typical input sources that canbe used. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 127

6.15 Model of the buck converter. . . . . . . . . . . . . . . . . . . . . . . . 1286.16 Model of the boost converter. . . . . . . . . . . . . . . . . . . . . . . . 1326.17 Current loop gain diagram of the digitized system and transfer func-

tion for the Buck model for different operating points (sampling time is200µs). Worst case is 35V input voltage. . . . . . . . . . . . . . . . . . 137

6.18 Current loop gain diagram of the digitized system and transfer functionfor the Boost model (sampling time is 200µs). . . . . . . . . . . . . . . 138

6.19 Closed loop transfer function of the digitized system and transfer func-tion for the Buck model (sampling time is 200µs). . . . . . . . . . . . . 139

6.20 Closed loop transfer function of the digitized system and transfer func-tion for the Boost model (sampling time is 200µs). . . . . . . . . . . . 140

6.21 Response of the Buck and Boost systems to a step in the current refer-ence. The plot show the most oscillatory response for each convertermode. Parameters for the Boost: E1 = 8V,R1 = 0Ω, I1 = 7A, Eo =

16.5V,Ro = 0.2Ω. Parameters for the Buck;E1 = 36V,R1 = 0Ω, I1 =

3A, Eo = 12V,Ro = 0.2Ω . . . . . . . . . . . . . . . . . . . . . . . . . 1416.22 Simulink modelization of the DC/DC converter and controller. . . . . . 1426.23 Simulation of the system’s response to a step in the current reference,

E1 = 20V,R1 = 0Ω. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1436.24 Experimental test of the response of the system to a step in the cur-

rent reference, the waveform is taken at the output of the current sensor(1V ⇔ 1A), E1 = 20V,R1 = 0Ω. . . . . . . . . . . . . . . . . . . . . . 144

6.25 Simulation of the system’s response to a step in the current reference,E1 = 20V,R1 = 2.5Ω, I1 = 1.1A. . . . . . . . . . . . . . . . . . . . . . 145

6.26 Experimental test of the response of the system to a step in the cur-rent reference, the waveform is taken at the output of the current sensor(1V ⇔ 1A), E1 = 20V,R1 = 2.5Ω, I1 = 1.1A. . . . . . . . . . . . . . . . 146

ix

Page 10: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

6.27 Simulation of the system’s response to a step in the current reference,E1 = 20V,R1 = 5Ω, I1 = 1A. . . . . . . . . . . . . . . . . . . . . . . . 147

6.28 Experimental test of the response of the system to a step in the cur-rent reference, the waveform is taken at the output of the current sensor(1V ⇔ 1A), E1 = 20V,R1 = 5Ω, I1 = 1A. . . . . . . . . . . . . . . . . . 148

6.29 Proposed algorithm to alternate between direct connection and MPPT. . 149

7.1 The Perturb & Observe algorithm. . . . . . . . . . . . . . . . . . . . . 1547.2 Traditionnal Multiple array Maximum Power Point Tracking method:

The voltage and current is sensed at the output of each photovoltaic panels.1557.3 Proposed Multiple array Maximum Power Point Tracking method: only

the load current is sensed to achieve Maximum Power Point Tracking. . 1567.4 Interleaved MPPT algorithm. The duty cycle of each converter is per-

turbed turn by turn. As a result of a perturbation of one converter thenext duty cycle for that converter is calculated and stored. Then, thestored duty cycle of the next converter is applied and the process contin-ues. The algorithm cycles that way through all the converters. (step=1at initialization, N is the number of PV panels.) . . . . . . . . . . . . . 158

7.5 Experimental three inputs Maximum Power Point Tracker. . . . . . . . 1607.6 Simulation of the algorithm for a three input boost converter. . . . . . . 1617.7 Characteristic of the solar panels used in the simulation. A shade can be

simulated by using a different characteristic for the solar panel (lowercurve instead of the higher). . . . . . . . . . . . . . . . . . . . . . . . 163

7.8 Comparison between the standard P&O implementation and the pro-posed algorithm. Top curves: load current. Bottom curves: output cur-rent of each converter. The current for the proposed method is shown indark. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 165

7.9 Interleaved gradient ascent algorithm. . . . . . . . . . . . . . . . . . . 1677.10 Comparison of convergence speed for the classical Perturb and Observe

algorithm, the proposed interleaved algorithm and the proposed modi-fied interleaved gradient ascent algorithm. . . . . . . . . . . . . . . . . 170

7.11 Comparison of convergence speed for the classical Perturb and Observealgorithm, the proposed interleaved algorithm and the proposed modi-fied interleaved gradient ascent algorithm. . . . . . . . . . . . . . . . . 171

7.12 Trajectories of the proposed gradient climbing interleaved algorithm andthe original proposed algorithm for a two input system. . . . . . . . . . 172

x

Page 11: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

7.13 Evolution of the duty cycles for both algorithm for a two input system.Top: basic interleaved algorithm. Bottom: gradient ascent interleavedalgorithm. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 173

7.14 Output current and duty cycle variation for the gradient ascent algorithmin an experimental dual input boost MPPT system. . . . . . . . . . . . 174

7.15 Experimental results showing the response time of the basic interleavedand gradient ascent interleaved MPPT algorithms. . . . . . . . . . . . . 175

7.16 Proposed Maximum Power Point Tracking architecture for multiple so-lar panels. Three solar panels are illustrated but the topology extends toarbitrary N inputs. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 176

7.17 Timing of the proposed multiple three input converter. This figure showsone example of timing. . . . . . . . . . . . . . . . . . . . . . . . . . . 179

7.18 Inductor current (top) and inductor voltage (bottom) in the three inputconverter operating in CCM. . . . . . . . . . . . . . . . . . . . . . . . 181

7.19 Inductor current (top) and inductor voltage (bottom) in the three inputconverter operating in DCM. . . . . . . . . . . . . . . . . . . . . . . . 184

7.20 Simulation showing the expected waveform of the proposed three inputDC/DC converter with a resistive load and three different solar panels. . 185

7.21 Simulation showing the expected waveform of the proposed three inputDC/DC converter with a resistive load and three different solar panels.Top: Current in the inductor. Bottom: Input and output voltages. Thevoltage of one of the solar panel (V3) is lower than the output voltage. . 186

7.22 Three solar panels connected to the experimental Maximum Power PointTracker. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 188

7.23 Ch1 (Bottom): Potential between the output of the third stage and theground. Ch2(Top): Load voltage. The load is a 4.7Ω resistor . . . . . . 189

7.24 Experimental evolution of the algorithm in the three input Buck con-verter. Top: output current. Bottom: duty cycles of the three switchingcells. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 190

7.25 Experimental evolution of the algorithm in the three input Buck con-verter. Top: output current. Bottom: duty cycles of the three switchingcells. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 191

8.1 An electrical model of the battery. . . . . . . . . . . . . . . . . . . . . 1978.2 Voltage of a BB390 12V battery being charged with a current interrupted

periodically. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 199

xi

Page 12: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

8.3 Voltage of the battery after the charging current is turned off (solid) andsecond order model of the battery (dashed). For better clarity, The volt-age drop due to RS is not shown (the drop occurs before t=1000s). . . . 201

9.1 Resistance vs temperature for the thermistors inside the BB390 NiMHbattery pack . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 215

9.2 DVin product as a function of the Vin and Vout. . . . . . . . . . . . . . . 2189.3 peak to peak current ripple in L1 as a function of the inductance. . . . . 2199.4 Topology of the initially proposed converter. The system is built around

a SEPIC converter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2269.5 Sepic converter and control circuit board. Only the top (darker) and the

bottom (clearer) layer are shown. The top side (power side) is shownwith its components outlined in dark. . . . . . . . . . . . . . . . . . . . 227

xii

Page 13: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

List of Tables

xiii

Page 14: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

Acknowledgements

First and foremost, I would like to thank my advisor Professor Brad Lehman who guided

me through my studies since the very first day I stepped in the university, until the

final period of my dissertation. He did it with patience, and dedication, no matter how

annoying I was at times.

I would also like to thank the members of my thesis committee, Professor Alex

Stankovic and Professor Gilead Tadmor for their valuable help, ideas and encouragement

and also as professors and for the extreme quality of their teachings in Linear System

Analysis, Power Electronics and Systems and Electric Machines.

I want to extend the same thoughts to all the people in the Department of Electri-

cal Engineering at Northeastern University who taught me over the years, especially

Professor Grabel, Professors Mulukutla, Professor Serafim, Professor Shafai.

I am grateful to the Army Research Laboratory for the research grant that funded

my work as well as the funding from PowerFilm, Inc. Both gave me the financial sup-

port needed to achieve my research. I am also grateful to the provost of Northeastern

University for the fellowship I received toward dissertation completion in the summer.

My parents never failed to support me and to encourage me. Without their support I

would not have been able to live this adventure. There is no way anyone can even realize

xiv

Page 15: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

how much I owe to them and how lucky I am to have them and therefore I thank them.

I would like to thank all my friends from the lab: Anindita, Jennifer, Rosa, Ting,

Dzung, Julian and Wei Song for their friendly support, whether technical or moral. I am

proud to have worked with them and grateful for the help and the company they gave

me.

Jacquie, Joan, Zoey, Jason and Logan, if I made it through Iowa, it’s thanks to you.

I am not sure I could have done it without you.

I would also like to thank all the people at PowerFilm for the occasion they gave me

to work with them along with the occasional chit-chat.

Finally, I would like to thank Brad again for his trust and for the respect he gave me

and his other students.

xv

Page 16: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

Abstract

Recent technological developments in thin-film photovoltaics, such as amorphous sili-

con and hybrid dye sensitized photovoltaic (PV) cells are leading to new generations of

portable solar arrays. These new arrays are lightweight, durable, flexible, and have been

reported to achieve power efficiencies of up to 10%. Already, commercial-off-the-shelf

arrays exist that have panels embedded in fabric that can be folded to dimensions of less

than 12” x 12”, yet are able to produce up to 50 Watts of power at 12V. These new prod-

ucts make solar power available to various types of applications. In particular, military

applications are emerging to give soldier a source of power that can always be at reach.

In parallel with these developments, NiMH and Li-ion batteries are increasingly being

used to power various equipment. Currently, the military is field testing solar charging

of its batteries with portable solar arrays. However, so far, all known charge control al-

gorithm have failed as they commonly falsely detect overcharge at random times in the

charging and leave the battery partially charged. The goal of our research is to investi-

gate the origins of failure in existing charge control algorithms and to propose adequate

algorithms that would improve the battery charging. Additionally, ways to optimize

the generated photovoltaic power is critical for portable solar application as the energy

produced is limited. It is known that the use of a DC-DC converter between the solar

panel and the load allows optimization of the power delivered by the solar panel when

Page 17: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

` Maximum Power Point Tracking´ is utilized. Therefore we are developing new solu-

tions that address the specific problem of Maximum Power Point Tracking for modular

solar panels.

ii

Page 18: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

Chapter 1

Research Motivation

Figure 1.1: A 30W military grade foldable solar panel

Recent technological developments in thin-film photovoltaics, such as amorphous sili-

con [1] and hybrid dye sensitized/photovoltaic (PV) cells [2], are leading to new gen-

1

Page 19: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

erations of consumer portable solar arrays. These new arrays are lightweight, durable,

flexible, and have been reported to achieve power efficiencies of up to 10%. Already,

commercial-off-the-shelf arrays exist that have panels embedded in fabric that can be

folded to dimensions of less than 12” x 12,” yet are able to produce up to 50 Watts of

power at 12V (see Fig. 1.1). These new products make solar power available to hikers,

campers, soldiers-on-the-move, etc., since the arrays can now be easily carried in back-

packs. Thus, the marketplace for portable solar power is beginning to broaden beyond

its conventional (original) boating and recreational vehicle (RV) market.

Older solar battery chargers (for RV’s and boats) were primarily developed to recharge

gel cell and lead acid batteries [3–5]. However, since the emergence of these flexible and

foldable solar arrays, there has become a need to develop solar battery chargers for more

portable batteries, such as NiMH and/or Li-ion batteries that can be carried by hikers.

However, charging these types of batteries with solar power leads to new research chal-

lenges that have yet to be discussed in the literature, such as: Is it possible to fast charge

batteries with solar arrays in unknown outdoor environmental conditions? How should

ambient temperature swings, changing illumination conditions, and other environmental

changes be incorporated into charge control algorithms? Should Maximum Power Point

Tracking (M.P.P.T.) be used? What are the best battery charger system architectures for

these portable solar arrays? etc. The purpose of this research is to answer these and

other open challenge for the portable solar powered applications.

2

Page 20: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

Figure 1.2: Missions bring advanced scouts and special ops far from their recharg-

ing sites

The original motivation of this research is derived from the current use of both Li-ion

and NiMH rechargeable batteries by the U.S. military to power their portable electronic

equipment.The use of flexible solar panels in the field permits them to recharge batteries

on the go. Rechargeable batteries are increasingly used by the military due to their many

benefits: (1) It is expected that using rechargeable instead of non rechargeable batteries

will save the U.S. Army $70M annually [6]. (2) Portable solar panels (about 0.5kg

depending on the model) can reduce the number of batteries that the soldier needs to

carry (1.75 kg per BB390 battery), and sometimes PV panels become the only available

source of power when the soldiers find themselves isolated from their T.O.C. (Tactical

Operation Center, an advanced command post which include generators to recharge the

batteries) [7] as shown in Fig. 1.2.

3

Page 21: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

Over recent years, the U.S. Army has field tested solar charging of its batteries with

portable solar arrays. To do so, they have decided to directly connect the solar arrays

to NiMH batteries. However, the only self-protection mechanism in the batteries is a

fuse (when the battery gets really hot, a solid state fuse is triggered). The reason for not

using a charge controller between the battery and solar array is that every known charge

control algorithm that was field tested has failed (especially in the case of NiMH batter-

ies): they usually falsely detect overcharge and leave the battery only partially charged.

However, as discussed in this research, without a proper charge control algorithm, the

batteries are usually left hooked to the solar panels by the soldiers who leave to perform

other duties, including going on a mission. The absence of any charge control results in

constant overcharge of the batteries and leads to reduced capacity and regular failure of

the batteries [8]. If the batteries are not correctly charged when the soldier returns, the

usefulness of the whole system (battery, PV array and electronic device) is reduced and

the soldiers safety and ability to operate could be endangered.

• A first objective of this thesis is to identify reasons for the failures of existing

charge control algorithms that utilize existing technologies. This is done in chapter

3. We created a test bench to test batteries currently used in the U.S. Army and

we analyze the effect of changing weather on the existing algorithms.

• The next goal of the thesis is to create new charge control algorithms that will

overcome the issue of false detection described in chapter 3 while protecting the

battery from repetitive overcharges. This is shown in chapter 4. We present a

new differential temperature charge control algorithm and a new voltage based

4

Page 22: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

algorithm for NiMH batteries. We also address one issue that exist with charging

Li-ion from solar panels.

• Additionally, ways to increase the charging speed are critical in this application

as well as in most of other applications since portable solar panel generally have

low power production per square meter. So, this research also develops ways to

optimize solar panels’ output power while charging the batteries. These results

are discussed in Chapters 5 and 7.

• In Chapter 6 the algorithms derived in Chapter 4 and Chapter 5 are applied to a

commercial grade prototype solar battery charger in chapter 6. The circuit controls

the charge of different batteries used in the field by soldiers (the BB390 NiMH

battery and the BB2590 Li-ion battery). Optimization of the power delivered by

the solar panel is achieved through Maximum Power Point Tracking, a technique

that will be explained in detail in the following chapters. The prototype has been

delivered to the U.S. Army for field evaluation.

• New algorithms are presented in Chapter 7 that improve the power production in a

system of multiple solar panels with varying technologies and electrical character-

istics (operating voltage, output power, etc...). Because so many different types of

solar panels are available on the market, there is a need for systems that can trans-

fer power to a load from several solar panels manufactured by different companies

and having varying characteristics. The algorithms are presented along with an

architecture that improve cost and board space in small portable systems.

• Finally Conclusion is given in Chapter 8

5

Page 23: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

Chapter 2

Introduction

In this chapter, we will review the existing technology in battery and battery manage-

ment as well as photovoltaic technologies for the application of portable electronics.

Our goal is to present the technology that has been used throughout our work and which

constitute the starting point of our research.

The chapter is organized as follows:

• The first section presents a review of rechargeable batteries for portable applica-

tions as well as the existing charge control methods associated with each of the

technology.

• Photovoltaic cells and their electrical models are presented.

• Maximum Power Point Tracking concept is introduced and different implementa-

tions of the principle are explained.

6

Page 24: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

2.1 Characteristics of Modern Rechargeable Batteries

Historically, the first and nowadays most predominant rechargeable battery is the Lead

Acid battery. Its poor energy density is countered by its low cost in widespread appli-

cations, in particular inside automobiles. Additionally, the Lead Acid battery is able to

deliver very high current surge to the load, thanks to its low internal resistance.

In the area of portable applications, however, the weight of such a battery renders

it almost useless. With the increased need for high power applications, other battery

technologies have matured and are being used.

Nickel based batteries have been developed since the early 20th century in the form

of the Nickel Cadmium cell. Ni-Cd cells offer an increased energy density compared

to Lead Acid batteries and are compatible with portable application, although far from

being the best existing technology in terms of energy storage.

In the late 80’s and early 90’s, a modification to the Ni-Cd battery was made by re-

placing the cadmium electrode with a hydrogen-absorbing alloy, thereby improving the

battery’s energy density along with reducing its impact on the environment. The Nickel

Metal Hydride batteries (NiMH) have progressively replaced NiCd cells for portable ap-

plications in the last decade [9]. (NiCd batteries are still used as their manufacturing cost

is lower. They have a lower internal resistance, giving them some advantage to power

high current applications such as power tools.)

In the 90’s, the Li-ion battery was developed [9]. Li-ion batteries offer an increased

energy density over NiMH batteries and reduce the weight and size needed to provide the

same energy [10]. Li-ion batteries have replaced NiMH batteries in most ultra portable

7

Page 25: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

applications such as cameras, PDAs and laptops, even though Li-ion battery have an

increased risk of explosion when overcharged or heated to high temperatures. The stan-

dard voltage for a Li-ion cell is around 3.6V [10].

Li-ion batteries are usually preferred in embedded systems because of their high

energy density [11], while NiMH batteries are common in applications where the battery

is often physically manipulated and replaced. This is due mainly to the compatibility

of Ni based batteries with alkaline non rechargeable batteries (The cells’ voltages are

close: 1.2V for NiMH and 1.5V for alkaline.), lower manufacturing cost, and increased

safety as mishandling NiMH or NiCd battery leads to less damaging effect than Li-ion

batteries.

Additionaly, the cost of a NiMH battery is lower than the Li-ion cell, and its rugged-

ness is another advantage that keep NiMH battery an important battery technology. Fi-

nally, as research continues for each technology, Ni based cells may even eventually

outperform Li cells in the future [12].

Other technologies are currently under development such as the Zinc-Air battery [13]

but they have not matured yet.

As our research is focusing on small portable applications, we will only research

charge control methods for NiMH and Li-ion technology.

The following section will detail the existing charge control methods for both NiMH

and Li-ion batteries. Different algorithms exist to detect when the battery reaches full

State Of Charge (SOC). In general, they can be classified into two different categories:

• Algorithms relying on models and records of the battery history and characteristics

[5, 14].

8

Page 26: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

• Algorithms requiring no prior knowledge of the battery state, utilizing no or only

some general characteristics of the battery, such as number of cells or current

capabilities. State Of Charge (SOC) detections are usually based on one or more of

the following: battery voltage, charging current, cell temperature and derivatives

of these parameters [4, 5, 15–17].

The first type of algorithms are suitable when the charge controller is monitoring the

same battery all the time or when the battery is ”smart,” that is when a circuit recording

capacity, state of charge and other internal characteristics is embedded inside the battery

pack and capable of exchanging data with the charge control circuit. Models describing

the behavior of the battery have been proposed. They rely on the known chemical and

environmental parameters of the battery to estimate the state of charge. Most of the

time, a simple knowledge of the maximum charge storage capacity of the battery can

be used and compared against the value of a Coulomb counter to estimate when the

battery reaches full charge. However, the need to know the initial charge in the battery

connected to the charging circuitry prevents the use of that method in swappable battery

chargers.

In our research we are interested in algorithms that do not require any information of

the history or state of charge of the battery, as we are interested in solar charging systems

that can charge multiple, swappable batteries that do not hold information about their

charge.

9

Page 27: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

2.1.1 Existing NiMH Charge Control Methods

The charge transfer equation of a NiMH cell is given from [18] by:

Positive electrode:

Ni(OH)2 + OH− NiOOH + H2O + e− (2.1)

Negative electrode:

N + H2O + e− MH + OH− (2.2)

where e− is a negative charge (electron). M is an intermetallic compound usually formed

with a mixture of a metal and rare earth.

10

Page 28: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

Figure 2.1: Typical charging curve for a NiMH cell under constant charging current.

Top: voltage. Bottom: temperature

Fig. 2.1 shows the typical charge characteristic of NiMH batteries under constant

charging current at room temperature.

Common approaches to determining when NiMH batteries (charged by constant cur-

rent source) are fully charged rely on measuring battery terminal voltage [19]. Occa-

sionally, the charge process is terminated when the battery’s voltage reaches a certain

value [20]. However, this is extremely unreliable and does not work when the battery is

charged by different current levels or when it is placed in different ambient temperatures

as the terminal voltage can be influenced widely by these conditions. Hence, it is not

11

Page 29: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

suitable for discussion here.

A second approach, which is more prevalent, is to stop the fast-charging process a bit

after the full SOC point when the battery terminal voltage begins to drop, i.e. dVdt ≤ K,

where K is a positive fixed threshold value set by the user (around 10mV to 20mV per

cell). This is commonly implemented by specifying a ∆V drop in voltage as a threshold

instead of calculating a derivative directly. This is illustrated on the voltage plot in

Fig. 2.1. However, once again, implicit in this approach is that the charging current

remains constant during the charging process. This charging method is also valid for

NiCd batteries.

After full State Of Charge (SOC) is detected, the common method is to keep the

battery charging at low current (around 0.1C Amps where C is the capacity of the battery

in Amp-hours). This ensures the battery is charged to its fullest and avoids self discharge

of the battery. That method is called trickle charge. When charge time is not an issue,

trickle charging can be used for the whole process.

There are other charging algorithms that have been published: In [16,21], overcharge

is avoided by estimating the time derivative of the voltage. This approach may be more

accurate, as it estimates the moment when the battery is about to enter overcharge. How-

ever, it will also subject to the same limitations as conventional algorithms when facing

changing current conditions.

Another technique to detect full state of charge relies on the battery impedance

changes with charging. However, in the case of NiMH chemistry, those changes are

very small and require some precise model of the battery characteristics (usually involv-

ing battery history) [22].

12

Page 30: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

As Fig. 2.1 illustrates, when the battery approaches full SOC, temperature begins to

rise sharply. This is true for either NiMH or NiCd batteries. Thus, another approach to

determine full SOC is to place a thermistor close to battery cells. This enables detection

of charge termination when dT/dt is above a threshold value. Two temperature detection

methods are mainly used:

• Charge is halted when the battery temperature rises over a threshold ( [15]).

• Charge is halted when the slope of the temperature curve rises above a threshold

value ( [15], [19]).

Temperature based detection using the slope of the temperature curve is considered more

accurate than voltage based detection because the detection usually happens at full SOC.

As Fig. 2.1 shows,the typical voltage methods need to let the cell overcharge for a certain

time until the voltage drop is detected. With the temperature slope method, the full SOC

detection happens closer to the optimal point.

2.1.2 Existing Li-ion Charge Control Methods

The charge transfer equation of a Li-ion cell is given by:

Li1−X MO2 + LiXCcharge

dischargeLi1−X+dX MO2 + LiX−dXC (2.3)

In this battery, the Lithium ions diffuse from the anode to the cathode when discharging

and back when charging [18].

13

Page 31: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

50 100 150 200 250 300 350 400 450

50

100

150

200

250

Figure 2.2: Typical charging curve for a Li-ion cell

The usual method to charge a Li-ion battery is to keep it charging at constant current

until a threshold voltage is reached (4.2V for Li-ion cells [23]). Current is then limited

to keep the voltage of the battery constant. Charge is terminated when the current has

dropped to a low level usually 0.1C [23] where C is the rated charging current(see Fig.

2.2). Although the threshold voltage changes slightly with the technology of the Li-ion

battery used (usually between 4.1V and 4.2V), the procedure is the same for any Li

based type [24].

If the threshold voltage is exceeded for more than a short time, the temperature of

the cell will rise very quickly and the battery will violently explode.

Models for the battery exist [22, 25] but they are not used for charge termination

alone due to their insufficient accuracy.

14

Page 32: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

2.2 Portable Photovoltaic Generation

2.2.1 Principle and Technologies

The photovoltaic cell is typically a PN junction designed to enhance the creation of

electron-hole pairs due to sunlight. The first usable solar cell was invented in 1959 with

a 6% efficiency [26]. Since then progress has been made in the process of making solar

cells. Different semiconductors can be used although silicon is the most common due

to its low cost and high efficiency in capturing a large amount of the sun’s spectrum

(relatively low bandgap). Efficiencies are now reported to be higher than 40% [27].

The most common types of solar panel use a single crystal semiconductor material,

often associated with a glass substrate. This method yields the highest light conversion

efficiency.

Another type of existing construction is the Polycrystalline Solar Cell where the ma-

terial is composed of several crystals with random orientations. Finally the Amorphous

Silicon Cell is a possible construction where the atoms have a random orientation. Those

types of material are cheaper to manufacture because of the less stringent requirements

on the material but are also less efficient at converting light into electricity [28].

However, a great benefit of amorphous silicon is the ability to use these material

together with a metallic or plastic substrate to create thin film solar cells [29]. The

advantage of such solar cell is multiple:

First, cost is further reduced because thin film cells require much less semiconductor

material per square meter and also because the process can be performed on a roll instead

as on a wafer as it is the case for crystalline cells (simpler manufacturing process).

15

Page 33: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

Figure 2.3: An amourphous sillicon photovoltaic cell from Powerfilm Inc.

The resulting material is lighter than crystalline cells and is flexible (see Fig. 2.3),

allowing new types of solar cells to be manufactured and new applications for those cells

are unlocked. This has a great impact in portable electric and electronic applications as

we will show in the next section.

2.2.2 Electrical Model

The following model is commonly employed to characterize the behavior of a photo-

voltaic cell, illustrated also in Fig. 2.4:

16

Page 34: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

Figure 2.4: Simple electrical model of a photovoltaic cell.

The output current of the cell is given by:

I = IPV − I0

[e

qVnkT − 1

](2.4)

IPV is the light induced current.

I0 is the reverse saturation current of the diode.

q is the charge of an electron.

V is the voltage at the terminal of the cell.

k is the Boltzmann constant.

n is the ideality constant (usualy close to 1).

T is the temperature of the junction.

For a string of cells connected in series forming a photovoltaic panel the equation

17

Page 35: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

becomes [30]:

I = IPV − I0

[e

qVNnkT − 1

](2.5)

where N is the number of cells connected in series.

If the series resistance RS is taken into account in the model, the equation for the cell

becomes [31]:

I = IPV − I0

[e

q(V+IRS )NnkT − 1

](2.6)

0 2 4 6 8 10 12 140

0.5

1

1.5

2

2.5

3

3.5

4

4.5

5

Voltage (V)

Cur

rent

(A

)

Figure 2.5: Typical characteristic of a solar panel.

18

Page 36: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

0 2 4 6 8 10 12 140

5

10

15

20

25

30

35

40

Voltage (V)

Pow

er (

W)

Figure 2.6: Typical power characteristic of a solar panel.

The I/V curves of a typical solar panel under different light intensity is shown in Fig.

2.5. For a given light intensity, the solar panel can be considered a current source for

voltages ranging between 0V (solar panel in short circuit) and a voltage that depends on

the solar panel technology and construction. The solar panel can be considered a voltage

source when it is operating close to the open voltage point. When operating close to the

knee of the curve, the solar panel will be approaching its Maximum Operating Point.

This can be seen on the corresponding Power vs. Voltage curve of the solar panel (see

Fig, 2.6).

19

Page 37: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

2.2.3 Maximum Power Point Tracking

Maximum Power Point Tracking (MPPT) is a method used to harness the maximum

power from a solar panel. The method is based on the Power versus Voltage charac-

teristic of a solar panel shown in Fig. 2.6. The point on the curve where the power is

maximized is called the Maximum Power Point (MPP) of the solar panel. By inserting

a DC/DC converter between the solar panel and the load, the voltage of the solar panel

can be controlled to be VMPP and thus deliver maximum power to the load.

Another advantage of this technique is that, if an up/down converter is used for the

maximum power point tracker, power can then be delivered to loads with higher or lower

voltage than the solar panel, enabling new applications for the same solar panel. There

are various ways of achieving Maximum Power Point Tracking which will be described

in the following paragraphs.

Open Voltage and Short Circuit methods One of the common way to achieve Maxi-

mum Power Point Tracking relies on the panel’s open circuit voltage and is based on the

fact that the voltage at which the solar panel operates at its maximum power is a rela-

tively constant fraction of the open circuit voltage [32–34] for a given solar panel. There-

fore, Maximum Power Point Tracking can be achieved by controlling the panel’s voltage

after sensing the panel’s open circuit voltage. However, the MPP of the panel changes

with light intensity and temperature [35]. Open circuit voltage can be re-sampled at

given times to accommodate the changes. This method reacts slowly to change in the

light intensity. Additionally, the fraction of the open circuit voltage at which the solar

panel operates at MPP varies with the technology of the solar panel used. Therefore, if

20

Page 38: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

the technology of the solar panel is not known (which is the case in a charging module

that is independent of the solar panel) the method could be greatly inaccurate. Similarly,

short circuit current measurement of the solar panel also provides information on the

location of the Maximum Power Point [33, 36, 37]. This method is subject to the same

remarks and limitation as the open circuit voltage method.

Some installations use an additional photovoltaic cell that does not supply power to

the load. The only goal of this cell is to monitor the light intensity (through open voltage

or short circuit). This way, the MPPT algorithm does not need to interrupt the flow of

energy to the load from the main solar panel when open voltage or short circuit current is

sensed [37]. However, shading of the sensing cell while the main panel receive full light

(or vice versa) will greatly affect the efficiency of the system. The addition of an extra

cell for sensing along with extra leads for connection to a MPPT circuit is expensive and

not adapted for portable applications.

Scan of the I/V characteristic In order to ensure that the solar panel will operate at its

Maximum Power Point, the system can control the DC/DC converter to operate a scan of

all possible input voltages for the converter. At the end of the scan, the voltage at which

the output power is maximized is kept as the new input voltage reference for the DC/DC

converter [38]. This method has the advantage on the previous ones that it is not de-

pendent on the solar panel technology or system configuration while its implementation

remains simple. Furthermore, this method is not affected by partial shading of the panel

that can cause local maximas in the power characteristic of the solar panel [39–41]: the

system will always operate at the global maximum power point of the solar panel. As

21

Page 39: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

with the open circuit voltage and short circuit current, power flow will be interrupted

during the scan (when the system can operate far from the MPP). Also, if the insolation

changes between two scans, the Maximum Power Point might move, reducing the effi-

ciency of the system until the next scan occurs and the input voltage reference adjusts

to the new position of the Maximum Power Point. Therefore, this method also reacts

slowly to changes in the light intensity.

Perturb and Observe method A dynamic method that seeks the Maximum Power

Point of the solar panel and keep the panel operating around it is called the Perturb and

Observe algorithm. MPPT is often realized using a Perturb & Observe (P&O) algorithm

[3, 41–44], which is a well known and efficient way to track the maximum power point

of the solar panel.

22

Page 40: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

Figure 2.7: The Perturb & Observe algorithm.

Perturb & Observe algorithms work by modifying the solar panel’s output voltage

and observing the result on the output power. If the power is increased due to the per-

turbation, then the algorithm keeps perturbing the voltage in the same direction until the

power begins to decrease. If the power decreases due to the perturbation, the algorithm

reverses the direction of the perturbation. The algorithm is shown in Fig. 2.7. Assuming

a PWM control of the switches, D(n) is the duty cycle of the DC/DC converter at the

sample n. α(n) is the direction of the perturbation at the sample n. Its value is either +1

or -1. PPV(n) is the output power of the solar panel at the sample n.

23

Page 41: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

Figure 2.8: The Perturb & Observe algorithm.

A more literal definition of the algorithm is shown in Fig. 2.8. This is the same

algorithm as described in the previous figure.

Figure 2.9: The Perturb & Observe algorithm convergence.

24

Page 42: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

When this algorithm is applied, the solar panel will be progressively moved to its

Maximum Power Point and will oscillate around it as shown in Fig. 2.9.

The advantage of the Perturb & Observe method is that the system is able to dy-

namically track the maximum power point of the solar array independent of the specific

solar panel technology or cell configurations. This is a major benefit over the Open

Circuit Voltage method. Additionally, the system adapts to the change in the maximum

power point location in real time unlike the methods described previously (including the

Scanning algorithm).

Generally, the input voltage is a monotonic function of the duty cycle. Hence, the

Perturb & Observe method can be applied using the input voltage reference in the DC-

DC converter internal feedback voltage loop as the perturbation factor [30] or directly

the duty cycle of the DC-DC converter [3,42–45]. The literature mentions both methods.

Normally, the Perturb and Observe method is applied using voltage and current mea-

surements from the solar panel. Power is then calculated from these measurements and

used in the algorithm. It has been shown in [45,46] that the Perturb and Observe method

can often be applied using only the output current measurement when the output voltage

is relatively constant, i.e. a battery type load. This is because the output power is a

function of the current and is equal to the input power if the losses in the converter are

neglected:

POUT = EoIOUT + RLI2OUT (2.7)

25

Page 43: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

where the load is modeled as a voltage source Eo in series with a resistor RL. [47, 48].

Figure 2.10: The Incremental Conductance algorithm.

Incremental Conductance The Incremental Conductance algorithm shown in Fig.

2.10 is another dynamic method of tracking the MPP [30] and relies on the fact that,

at the Maximum Power Point, dIdV = − I

V (where I and V are the PV array’s current and

voltage). The method is dynamic as the Perturb & Observe method. It is claimed to pos-

sess a better Maximum Power Point tracking ability [30]. This is because the Perturb &

Observe method keeps oscillating around the Maximum Power Point of the solar panel

while the Incremental Conductance method reaches it and stabilizes at that point. How-

ever, stabilization is greatly dependent on the current sensing and duty cycle resolutions

26

Page 44: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

of system. Additionally, small changes in light intensity can move the system slightly

away from the Maximum Power Point. The consequence will be that the algorithm still

tracks the Maximum Power Point of the solar panel but that small oscillation can still

exist.

Ripple Correlation Riple Correlation Control takes advantage of the existing ripple in

the currents and voltages that exist when the solar panel is connected to a high frequency

DC/DC converter. Using different techniques such as phase comparison, the controller

can detect on which part of the solar panel’s characteristic it is operating. The controller

can then adjust the operation of the converter’s switch(es) (for example by changing the

duty cycle in a converter operated in PWM) in order to approach the Maximum Power

Point.This technique is used in [49–51]. The advantage of his method is it’s fast speed

and precision [52]. However its implementation depends highly on the topology of the

converter used.

Finally, there exist some other methods of finding the maximum power point. Fuzzy

logic [53] and Neural Network approaches [54] try to improve the dynamic of the Max-

imum Power Point Tracking. However, these implementations are still based on the

algorithm that been presented above (open voltage algorithm, Perturn & Observe algo-

rithm etc...)

27

Page 45: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

2.3 Conclusion

We have seen in this chapter how modern rechargeable batteries can provide energy to

lightweight applications in various environment. Theses batteries have different charg-

ing characteristics due to their different chemistry and implementation (package design,

number of connected cells etc...). There are well known charge control algorithms that

allow these batteries being charged efficiently and without overcharging them. These

charge control techniques have been used successfully in many applications. However,

in the following chapter, we will present our research that demonstrates failures of these

charge control algorithms when used in conjunction with solar panels as the input energy

source. In parallel, this chapter describes the behavior of the photovoltaic cell which we

will use throughout this research. The existence of a Maximum Power Point on the I/V

curve of the solar panel is an opportunity to improve the power output of the solar panel

using a power converter with specific control algorithm described as Maximum Power

Point Tracking algorithms. We will show in Chapters 5 and 7 some ways to improve the

behavior and implementation of these algorithms when used for solar battery chargers.

28

Page 46: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

Chapter 3

Causes of Failure in Charge Control

Algorithms

In the previous chapter we presented the Li-ion and NiMH battery as the modern en-

ergy sources used to power mobile applications. We have shown that there exist efficient

charge control algorithms for these batteries that allow safe and efficient charge. How-

ever, these algorithms assume a set of conditions, such as constant charging current and

constant ambient temperature, that cannot be true when the battery is charged from solar

panels and left in the open field during the charging process. In this chapter, we will

analyze the reasons of failure of these algorithms and hint at some possible answers to

the problem.

In particular, we will show:

• Failure in voltage based detection method for Ni-MH batteries.

• Failure in temperature based detection methods for Ni-MH batteries.

29

Page 47: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

• Possible failure in some Li-ion charge termination algorithms.

Figure 3.1: A view of an open BB390 NiMH battery

As the research focused specifically on military batteries, we used the BB390 NiMH

(see Fig. 3.1) and BB2590 Li-ion battery. These batteries consist of two independent

legs [55](12V for NiMH and 14V for Li-ion), allowing voltages sources from 12V to

28V to be created when the legs are put in series or in parallel. The BB390 includes two

internal thermistors that allow cell temperature to be sensed (one for each leg).

30

Page 48: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

Figure 3.2: Experimental setup for the analysis of the battery behavior during

charge.

In order to analyze the causes of failure of the charge control algorithms, we set up

a test bench that allows us to test the algorithms indoor in the lab and with the test stand

outside. The system is shown in Fig. 3.2. It is centered around a microcontroller that

records the current and voltage of each leg through additional circuitry. In addition, the

cells’ temperature is measured using the thermistors embedded in the battery pack.

Two switches allow various algorithms to be programmed on the microcontroller and

tested and allow each leg to be charged independently.

Serial communication with a computer allows the data from the experiments to be

saved to a text file on a computer through a Java program and analyzed using Matlab.

Additionally, we have designed a programmable current source using the microcon-

31

Page 49: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

troller and power transistor. Current measurements are stored in an ASCII file and read

by a program on the computer. The program (written in Java) feeds the updated current

reference to the microcontroller. That way, the current pattern recorded using a solar

panel can be reproduced in the lab.

Using the above setup, we have been able to test the algorithms and identify the

reasons of failure of existing charge control algorithms.

Figure 3.3: Outdoor experimental setup.

In Fig. 3.3, a 30 Watt P3-30 portable solar array (from ”Global Solar”) [1] is directly

connected to a 12V, 6A-Hr NiMH battery, Brentronics’ BB-390 [29] currently used by

the US Army.

Common approaches to determining when NiMH batteries (charged by constant cur-

rent source) are fully charged rely on measuring battery terminal voltage [28]. Occasion-

32

Page 50: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

ally, the charge process is terminated when the battery’s voltage reaches a certain value.

However, this is extremely unreliable and does not work when the battery is charged by

different current levels or when it is placed in different ambient temperatures. Hence, it

is not suitable for discussion here.

A second approach, which is more prevalent, is to stop the fast-charging process (a

bit after the full SOC point) when battery terminal voltage begins to drop, i.e. dV/dt <

−K, where K is a positive fixed threshold value set by the user. This is commonly im-

plemented by specifying a ∆V drop in voltage as a threshold instead of calculating a

derivative directly (around 10 to 20mV per cell [19]). However, once again, implicit

in this approach is that the charging current remains constant during the charging pro-

cess. This charging method is also valid for NiCd batteries, but typically with a higher

threshold voltage K.

33

Page 51: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

3.1 Failure in Voltage Based Charge Detection Methods

Figure 3.4: Variation of the terminal voltage of the battery with varying charging

current.

Fig. 3.4 presents outdoor experimental data that helps explain why negative dV/dt (or

−∆V) detection cannot be directly used to determine end-of-charge time when the power

source is a solar array.

Notice that when clouds pass across the sun, the solar array’s charging current de-

creases. This lowers the battery terminal voltage, due to the battery’s internal resis-

tance/impedance [56]. Due to the battery’s internal capacitance, the voltage continues

to drop slowly until the charging process balances and the voltage starts to rise again.

These drops are not negligible and are usually higher than the voltage drops due to over-

34

Page 52: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

charge. Moreover, they arise from weather changes and are, therefore, unpredictable.

So, a charger using conventional voltage detection algorithms will falsely detect over-

charge and stop the charge too early.

Other charging algorithms have been published [16, 21] and are also subject to the

same limitations as conventional algorithms when facing changing illumination condi-

tions. Another technique to detect full state of charge relies on the battery impedance

changes with charging. However, in the case of NiMH chemistry, those changes are very

small and require some precise model of the battery characteristics (usually involving

battery history) [57].

3.2 Failure in Temperature Based Charge Detection Meth-

ods

As explained in Chapter 2, an efficient way to charge NiMH batteries is to use constant

current until the temperature’s rate of increase becomes large which is a sign of over-

charge. However, as with voltage based detection, some challenges exist [15] when the

battery is exposed to changing weather conditions:

35

Page 53: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

Figure 3.5: Evolution of the temperature around the point of overcharge for different

charging current.

36

Page 54: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

Figure 3.6: Experiment at room temperature showing that the cells’ temperature

changes slowly compared to sags in the charging current.

• The change of temperature in the battery at overcharge (∆T ) differs depending on

ambient temperature. Since the temperature can change greatly throughout the

day, comparing current battery temperature to its value at the beginning of the

charging process loses meaning.

• Ambient temperature swings can occur during the day due to the sunlight, and

change in air and ground temperature. These changes can cause fast increases and

decreases in battery temperature and also fool time derivative based algorithms.

• Fig. 3.5 shows that the rise in temperature due to overcharging is dependent on the

average charging currents. Therefore, the threshold on dT/dt required for accurate

37

Page 55: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

detection changes with the average charging current. The maximum threshold

that can be used with a relatively low charging current will exceed the normal rise

of the cells’ temperature that takes place when the battery is charging normally.

However, experiments show that the sudden changes in current do not necessarily

affect the temperature of the battery as shown in Fig. 3.6. This indicates that it

should be possible to design an algorithm based on temperature that is robust to

sudden change in the charging current.

Furthermore, in traditional charging environments, the current is controlled to a de-

sired value and the thresholds are calculated for this specific value. However, when

charged from a PV source, the current can vary during charging. Therefore thresholds

valid for a high charging current will not trigger detection with a lower charging current

while increase in temperature can be falsely detected a overcharge when the battery is

charged with high current because of the natural increase in temperature that takes place

during the normal charging phase of the NiMH battery (that effect is more important

with higher currents).

In summary, sudden changes in the current do not translate in sudden change in the

temperature of the battery. However, the increase in temperature throughout the charging

process will depend on the average charging current.

Since existing charge control algorithms and IC’s are developed for constant ambient

room temperature and constant preset charging current, they are not reliable and often

fail when ambient temperatures vary, as in the case here.

38

Page 56: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

3.3 Failure in Li-ion Charge Control Algorithms

As explained in the earlier chapter, the charge control system used for Li-ion battery

require charging the battery at constant current until a threshold voltage is reached and

keep the battery voltage at that given threshold (by decreasing the current). Charge is

to be terminated when the current reaches a low threshold. As with NiMH batteries, a

sag in the current will also induce drops in voltage because of the internal impedance of

the battery. The strict formulation of the Li-ion algorithm can lead to a problem if the

charging current drops below the termination threshold due to a low light level on the

solar panel. A confusion at this point could result in a false detection of the Full State

Of Charge condition.

39

Page 57: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

20 40 60 80 100 120 140 160 180 20012

14

16

18

20

Bat

tery

Vol

tage

(V

)

20 40 60 80 100 120 140 160 180 2000

0.5

1

1.5

2

Cha

rgin

g C

urre

nt (

A)

20 40 60 80 100 120 140 160 180 2000

0.5

1

1.5

2

time (min)

Ter

min

atio

n F

lag

Figure 3.7: Li-ion battery charging from a sagging current source (Top: voltage,

Middle: current) and charge termination indicator using Liion charge

control algorithm programmed in Matlab (Bottom).

This shown in Fig. 3.7. In this experiment, the battery is hooked up to a control

circuitry and a power supply. The battery is subject to charge at constant current by the

power supply and sags in the current are added as perturbation to simulate the effect of a

cloud on a the output of a solar panel. When the battery’s voltage reaches the threshold

of 16.4V, the system enters a constant voltage mode at t=80 min and current is shown

to gradually decrease after that point as the controller tries to keep the battery voltage

constant. A sag in the current occurs between t=118 min and t=126min. The charge is

cut at t=200 min when the battery is fully charged the specification of the battery. Data

is recorded and analyzed in Matlab. An algorithm is programmed to output a ` charge

40

Page 58: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

termination´ signal when the current drops below the programmed threshold, after the

battery entered the constant voltage mode. As seen on the plot, the signal is sent during

a current sag, before the correct moment. The desired termination point is at t=200min.

This shows that a Li-ion charger can be fooled when used with a solar panel as the

power source. In the following chapter, we will propose a proper algorithm formulation

to overcome those issues.

3.4 Conclusion

In this chapter, we identified the reasons of failure of the existing algorithms through

various experiments. We have experimentally shown that voltage algorithm for NiMH

batteries fail because of the large variations of charging current due to moving shad-

ows and passing clouds that cause variations in the battery voltage. These variations are

relatively large compared to the evolution of the voltage when constant current is used.

Therefore the information on overcharge of the battery is lost. Similarly, temperature

swings due to weather effects can greatly affect the detection of overcharge based on

temperature methods. Li-ion battery charge control algorithms have also shown possi-

bilities of failure in the presence of a varying charging current. The need for a robust

charge control algorithms immune to the issues identified in this chapter shows that more

research is needed in that field. In the following chapter we will propose new algorithms

that will eliminate or strongly reduce the failure in overcharge detection in the batteries.

41

Page 59: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

Chapter 4

Proposed Charge Control Algorithms

This chapter presents new, robust and reliable charge control algorithms that are suitable

for charging NiMH batteries and Li-ion batteries with portable solar arrays. These algo-

rithms can easily be adapted into existing battery charger IC’s. For the NiMH battery,

one proposed algorithm relies on the battery voltage while a second algorithm relies on

the derivative of temperature. Unique to both algorithms is that they include specialized

reset mechanisms to eliminate false charge termination due to changing illumination

conditions, ambient temperature swings or other environmental changes. Either of these

two algorithms can be used separately, but they may also be combined to improve the

system robustness. The Li-ion proposed algorithm solves the loophole that was identi-

fied in the previous chapter and does not fail with large sags in the charging current.

These algorithm have demonstrated a higher robustness to changing conditions and

will allow controlled fast charge of batteries on the field with solar panels.

The chapter is organized as follows:

42

Page 60: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

• Formulation and analysis of the proposed temperature algorithm for NiMH bat-

teries is presented. This algorithm is able to recognize between different reasons

causing change in the battery’s temperature and do not falsely detect overcharge,

as is the case with the conventional charge control temperature algorithms for

NiMH batteries.

• Description of the proposed voltage based algorithm for NiMH batteries is pre-

sented. This algorithm detects the sudden changes in the charging current to avoid

a false detection of the full SOC condition as described in the previous chapter.

• Description of the Li-ion algorithm compatible with solar charging is presented.

The formulation of the algorithm ensures that the charge controller will not incor-

rectly stop the charge when a low current charging is sensed because of clouds or

other external conditions.

4.1 New Temperature Based Algorithm for NiMH Bat-

teries

To improve the robustness of the charge control algorithm in changing environments,

we propose a new charge control algorithm that utilizes differential measurement of

temperature between battery cells.

This involves separating the batteries into two (or more) groups, which we call `legs´,

as they are charging inside the cradle or battery pack.

43

Page 61: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

Figure 4.1: Evolution of the temperature inside the battery pack (two solid lines)

and on the surface of the pack (dashed line) when heated by an external

source of radiation (a halogen light).

The method, illustrated in principle in Fig. 4.2, relies on the fact that changes in

ambient conditions affect both legs the same (Fig. 4.1). Fig. 4.2(a) shows the classical

charging configuration with the problems described in the previous chapter: the rise in

temperature cannot be properly identified by the system as either overcharge or change

in external conditions because there is no data to differentiate the two situations. In

Fig. 4.2(b) and 4.2(c), the additional battery or leg brings another sensor that allow

better analysis of the situation: assuming only one of the leg is charged, and the source

of heat is illuminating both batteries the same way, an elevation of temperature at the

same rate in both legs (Fig. 4.2(b)) implies that the source of heat is external and due

44

Page 62: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

to weather. On the contrary, if the temperature of the leg being charged rises sharply

while the temperature of the other leg stays roughly constant, then the source of heat

can be identified to be from inside the cells, and therefore due to overcharge. Thus, the

difference in temperature between the two legs stays close to zero unless one leg reaches

full SOC (Fig. 4.2c).

When that happens, both temperature difference and the derivative of temperature

difference between the two legs rise sharply. This way, full SOC can be detected in one

leg by calculating the derivative of temperature difference between the legs. Of course,

this assumes that the two legs are not reaching full SOC or overcharging precisely at

the same time. This can be ensured if one leg is open-circuited while the other leg is

charging. Our algorithm uses a pattern of charging compatible with these assumptions.

45

Page 63: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

Figure 4.2: Proposed new method. In situation (a) and (b), overcharge cannot be

properly detected. Using a second cell as reference solves the problem.

The algorithm utilizes the temperature of the two legs to perform differential tem-

perature measurements rather than using the ambient temperature. This is because the

temperature measured by the ambient temperature thermistor has different thermal time

constant than the battery. Thus, it is easier to implement the algorithm by measuring

the temperature of two battery cells. (However, the principle could be extended to use

ambient temperature also.) This is illustrated and further explained in Fig. 4.1.

46

Page 64: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

The assumption made is that both battery packs, or groups of cells, are subject to the

same external conditions. Because they share similar thermal constants, their tempera-

ture will be subject to the same swings unless one is overcharging. When that happens,

a strong differential in temperature will arise. A time derivative measurement of that

differential will restore the information about overcharge. In Fig. 4.2 only one battery is

being charged while the other serves as a reference. In practice, both batteries need to

be recharged. An algorithm utilizing this method should alternate the charging process

to achieve full SOC in both batteries in similar time.

Additionally, the amount of heat generated during the charging process depends on

the charging current. In the case of charging from a solar panel, the charging current

can vary a lot during the charging process (unlike in a standard charger). The charging

current depends also on the type of solar panel used. Fig. 3.5 illustrates the dependency

of the temperature curve with the charging current. Therefore, charge control algorithms

based on temperature need to take the sensed charging current into consideration in order

to apply the correct charge termination thresholds.

47

Page 65: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

Figure 4.3: Proposed new method. In situation (a) and (b), overcharge cannot be

properly detected. Using a second cell as reference solves the problem.

The new differential temperature algorithm is shown in Fig. 4.3. The cells are sep-

arated into two groups (called Legs) and simultaneously charged either in parallel or

through an independent charging circuit. When a high positive temperature derivative is

detected in one of the groups (Leg 1 for example), the algorithm switches to ` potential

overcharge mode´ : The leg (Leg1) is kept charging while charging in the other leg

(Leg2) is stopped. The algorithm will run in this mode for a certain set time. Dur-

48

Page 66: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

ing this time, if a large difference in the cells’ temperature arises (high d(T1−T2)dt and/or

high T1 − T2), then the algorithm will detect overcharge (of Leg 1 in our example). If

no overcharge has been detected after a certain time, the algorithm will switch back to

charging both legs. The unbalance that has occurred during this time can be absorbed

by either current monitoring, where the proportion of current flowing in one leg vs. the

other leg is controlled, or naturally, by having the legs in parallel (although high current

flowing from one leg to another might have to be limited). Thresholds are dependant on

the average charging current calculated over a sliding window of a few minutes and are

stored in a look-up table. The experimental section gives further explanation as to why

the algorithm is robust to ambient temperature changes.

Remark: If there is no external heating source, the algorithm behaves in the same

way as the standard dT/dt algorithm

Experimental Results:

49

Page 67: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

Figure 4.4: (a) Voltage of the two legs, (b) Charging current in each leg, (c) tem-

perature of each leg, (d) Derivative of temperature at Leg1(calculated

over a sliding window of 5min), (e) Derivative of the difference of the

temperatures.

The charge control experiments were performed using a sealed 2x12V (two 12V

legs) BB390 NiMH battery consisting of 2 independent sections of 20 cells each (10 in

series, 2 in parallel) and built-in thermistors for each leg. A charger implementing the

algorithm of Fig. 4.3 was built around a PIC18F452 microcontroller. The algorithm is

programmed in the micro-controller and senses the cells’ temperature through the two

thermistors. The system is similar to the one in Fig. 3.2. Some experimental results are

shown in Fig. 4.4. This experiment has been carried out in the lab using a lab power

50

Page 68: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

supply. We have chosen to put the legs in parallel when both are charging. During

the charge process, the battery is heated by a strong halogen lamp (for 20 minutes) to

simulate harsh external conditions. Referring to the experimental result in Fig. 4.4:

• The battery charging process starts at t=10min.

• At t=20min, a strong heat source (a halogen lamp) is aimed at the battery. Fig.

4.4(d) shows the derivative of temperature of Leg1 (only Leg1 shown for more

clarity).

• At t=22 min, this value reaches a threshold, the algorithm stops the charge in

Leg1, but keeps it in Leg2. (All the current is redirected to Leg2.) As can be seen

in Fig. 4.4 (e), the derivative of the difference in temperatures between the two

legs stays at very low levels during that time (t=22 to 37 min).

• At t=34 min, the source was turned off explaining the drop in the temperature of

both legs.

• At t=37min, 15 minutes after, the algorithm deduces that the elevation of temper-

ature was caused by external conditions and resumes charging both legs. During

that time no charge was lost since current kept flowing in the battery at the same

rate. A re-balance process is then occurring where the Leg1 (which was cut-off)

gets all the current from the source in addition to some current from Leg2.

• At t=105min a high rise in temperature is detected again, this time, stopping the

charge in Leg2. This rise is due to full SOC being reached on both legs.

51

Page 69: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

With one leg cut off and another leg charging near full SOC, a strong differential arises in

the temperatures is seen in Fig. 4.4(c). This results in a large derivative of the tempera-

ture difference. The algorithm detected full SOC at t=118min. Note how detection based

on simple dT/dt measurement would have failed in this case. As Fig. 4.4 (d) shows, the

rate of elevation at t=25min (external heating) is comparable to that of t=118min (one

leg overcharging).

As explained above, the algorithm enters the ”potential overcharge mode” on Leg2

but does not identify any overcharge and resumes charging. At that time, it can be seen

that the legs naturally re-balance themselves. Leg1 receives all the current and progres-

sively shares it again with Leg2. Both legs reach full SOC at the same time. At that

moment, high temperature increase puts the algorithm again in ”potential overcharge

mode,” stopping momentarily the charge in Leg2. This time, overcharge will be de-

tected on Leg1 since d(T1-T2)/dt continues to sharply rise. By assigning trickle charge

to the two legs in parallel at the end of the process, the cells will naturally balance each

other. Additional balancing system could be designed [56], however they are not needed

here.

Some outdoor experiments are shown in Fig. 4.5, Fig. 4.6 and Fig. 4.7 showing how

the algorithm handles overcharge detection.

52

Page 70: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

Figure 4.5: (a) Voltage of the two legs, (b) Current of two legs, (c) Temperature of

each leg (Charging from a constant current source). Potential over-

charge is detected at t=15min but is then considered as a false alarm

and charge continues until a second potential overcharge is correctly

identified as real slightly before t=100min.

53

Page 71: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

Figure 4.6: Typical cloudy day outdoor experiment realized using a 30W solar panel

charging the battery pack. Despite changes in the charging current as

overcharge is correctly detected at t=166min.

54

Page 72: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

Figure 4.7: Clouds at the beginning of the experiment. The data recording stops

when the battery has been identified as reaching full SOC

Both Fig. 4.6 and Fig. 4.7 show experiments performed with a 50W solar panel. Fig.

4.5 is also performed outdoor, but with a lab power supply providing constant current.

These experiments reinforce the conclusion drawn from the previous analysis that the

proposed temperature algorithm can successfully detect the point where NiMH batteries

enter the overcharge region. It can be seen in Fig. 4.5 and Fig. 4.7 that the system enters

the previously mentioned ` potential overcharge´ mode (where the controller cuts the

charge in one leg to perform a differential test). This is often the case when the battery

pack is brought from a colder shady place to a warmer environment: in both those

figures, the system enters potential overcharge towards the beginning of the experiment,

when the battery pack is brought from the lab to the roof of the building for charging.

55

Page 73: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

Figure 4.6 shows a proper detection of overcharge despite the changing current due

to the passing clouds. This has been predicted in the previous chapter when it was noted

that the temperature elevation of the battery is not sensitive to short variations of the

charging current.

In Fig. 4.5, it can be seen that a differential arises between the temperature of the two

legs when the algorithm is in the ` potential overcharge´ mode, even when the legs are

not overchaging. This is due to the fact that the NiMH battery naturally heats up when

charged (the higher the charging current, the faster the increase in temperature). Because

only one leg is being charged during the ` potential overcharge´ mode, only that leg has a

temperature increase, therefore creating a difference in the temperature of the two legs.

However, this difference is small compared to the one arising during overcharge (The

leg in this example is being charged at almost the maximum safe current specified for

the battery.) However, this experiment shows that care must be taken when specifying

thresholds for the algorithm and the need to set varying thresholds, depending on the

average charging current for best results.

4.1.1 Charge Control Algorithm Robustness

As we discussed previously, the new temperature charge control algorithm has been

found to be more robust than the existing charge control algorithms to changes in ex-

ternal conditions. However, in some specific conditions, the new temperature algorithm

is also subject to failure. We first highlight the sensibility of the algorithm to partial

shading of the pack.

56

Page 74: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

0 200 400 600 800 1000 1200 1400 1600 1800 200015

20

25

30

35

Time (s)

Tem

pera

ture

(C

elsi

us)

Figure 4.8: Temperature of the two legs in the battery pack with partial shading

added and removed.

In the experiment shown in Fig. 4.8, a radiating heat source (a halogen lamp) is

applied and a shade is partially placed in front of the battery pack, in effect masking

one of the leg of the battery from the light source. The shade is removed (at t=400s).

The shade is then placed again at t=850s. The heat source is turned off at t=920s. We

can see that the partial shading of the battery at t=0s creates a large difference in the

amount of heat absorbed by each leg of the battery, thereby creating a strong difference

in temperature and temperature rate of increase. In the same way, the placing of a shade

at t=850s shows that the reduced amount of heat absorbed by the shaded leg results in

a sudden decrease of the temperature of that leg while the non shaded leg keep its high

temperature due to the heating light source.

57

Page 75: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

In summary, the resulting temperature changes show that the partial shading of the

pack has the potential to create wide disparity in the evolution of the temperature in each

leg and can therefore trigger overcharge detection in some cases with the new method

as well.

0 200 400 600 800 1000 1200 1400 160020

22

24

26

28

30

32

34

36

38

40

time (s)

tem

pera

ture

(C

elsi

us)

No WindWith Wind

Figure 4.9: Effect of wind on the temperature of the battery pack when overcharging.

Charging the battery in an open environment has been shown to cause issues on the

ability to detect overcharge using temperature. We have seen that radiation from the sun

could fool the existing charge control algorithms. This fact led us to formulate a robust

algorithm to limit the effect of sunlight on the accuracy of the overcharge detection. An-

other potential issue with temperature detection is the effect of wind. As wind increases,

the effect of convection is increased and the battery looses its excess of heat faster. This

effect could also perturb the proper function of the algorithm by modifying the rate of

58

Page 76: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

increase of he temperature of the battery cells and affecting the thresholds values for

correct overcharge detection.

Fig. 4.9 shows the temperature of a battery leg overcharging in a high wind envi-

ronment and in a no wind environment. It can be seen that the rate of increase of the

temperature is almost identical when the battery s placed in the wind and when it is not.

This indicates that wind has little effect on the temperature of the battery pack when

overcharging. This is due to the high thermal capacitance of the battery pack that re-

duces the effect of convection over a short period of time, as well as the high intensity

of the heat produced by the cells at that moment. Therefore, it is unlikely that our pro-

posed algorithm will be affected by changing wind for the studied battery pack (BB390

battery).

Remark: It has to be noted that any of the potential issues previously mentioned

in this section also hold for the traditional temperature algorithms: if the proposed al-

gorithm fails in such a situation, so would the other temperature based algorithms. In

situations where those effects are mildly present, the proposed algorithm can actually

mitigate the effects much better than the traditional algorithms.

59

Page 77: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

0 5 10 15 20 25 30 35 40 45 50 5513.5

14

14.5

15

15.5

16

16.5

Vol

tage

(V

)

0 5 10 15 20 25 30 35 40 45 50 5525

30

35

40

45

time(min)

Tem

p (C

)

Figure 4.10: Evolution of the temperature in Leg 1 and Leg 2 when only Leg 1 is

charged.

Fig. 4.10 shows the effect of charging one leg on the temperature of the other leg.

Because the batteries are in the same battery pack, it is expected that the heat produced

by one leg will be absorbed by the other. Therefore the leg that is not being charged

will also see its temperature increase. However, Fig. 4.10 shows that the effects are not

strong, and are starting to sensibly affect the measures only after overcharge is detected

(when the difference in temperature between the two legs becomes large).

60

Page 78: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

4.1.2 Experiments on Standard AA Cell System

Figure 4.11: Experimental setup for testing the new temperature algorithm on AA

NiMH cells in the lab. The system charges the four AA cells in two in-

dependent legs and halogen lights are used to simulate sunlight. Ther-

mistors are inserted under each pair of cells

61

Page 79: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

0 10 20 30 40 50 60 70 80 90 100 110 120 130 1402

2.5

3

3.5

V

0 10 20 30 40 50 60 70 80 90 100 110 120 130 14010

20

30

40

50

C

0 10 20 30 40 50 60 70 80 90 100 110 120 130 140−2

0

2

4

C/m

in

0 10 20 30 40 50 60 70 80 90 100 110 120 130 140−0.5

0

0.5

1

time (min)

C/m

in

Figure 4.12: Experiment in the lab with constant charging current. A heat source is

briefly applied at t=30min

In order to generalize the algorithm, we tested it on AA size NiMH cells available in

the market (from ` Energizer ´ ). We have built a rudimentary charger made of foam (to

shield it from the sun) with two cradles containing two cells each and inserted one ther-

mistor in each craddle. Each thermistor is connected to a microcontroller in the same

way as the previous experiments. Fig. 4.12 shows the result of charging the batteries

(here from a constant current source) with applied heat radiation to the charger. Around

t=30min, the temperature of the cradles begin to increase due to external heating. How-

ever, as in the case of previous experiments with the BB390 battery, the temperature

increases inside both cradles by about the same rate. When batteries overcharge, the

difference in the rate of increase of the temperature between the two group of batter-

62

Page 80: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

ies is significant, especially when charge is stopped in one of the group (t=104min).

Overcharge is then properly identified at t=117min. This experiment confirms that the

algorithm is not limited to the BB390 battery and can be applied to any type of NiMH

battery. It is shown that the algorithm is particularly interesting for the wide commercial

application of recharging AA and AAA cells.

In summary, we have proposed an algorithm based on differential temperature mea-

surement between cells in order to achieve robust overcharge detection in NiMH battery

when charging in open field with varying current. The algorithm has been shown to

outperform the existing algorithm in several experiments. While the standard temper-

ature detection algorithm would falsely detect overcharge and cut the current leaving

the battery partially recharged, our proposed algorithm was able to recognize to proper

moment when to end the charge. The algorithm has been succesfully tested on a BB390

military NiMH battery pack and with standard off-the-shelf NiMH AA cells.

63

Page 81: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

4.2 Improved Voltage Based Algorithm

Figure 4.13: New dV/dt algorithm proposed to overcome the false detection issue.

Large drops of voltage or current reset the algorithm instead of halting

the charge.

A new proposed voltage detection algorithm is presented in Fig. 4.13. The goal for the

algorithm is not to get fooled by changing weather conditions. The idea is to keep track

of the charging current and reset the algorithm whenever the current departs from an

acceptable limit. This ensures that any voltage drop due to a change in the current does

not falsely trigger the end of charge. This leads to the condition that if the maximum

or minimum of the charging current (Imax, Imin on Fig. 4.13 , recorded over a sliding

window of around 5 minutes) departs from the average value above or below a certain

64

Page 82: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

threshold level, the algorithm should reset. Overcharge can only be detected after the

current returns to a constant value (over a period of time) again.

Figure 4.14: Outdoor solar battery charging with new voltage detection charge con-

trol algorithm. The algorithm has the ability to handle disturbances

in the current. At t=65min, the drop in the current (due to shade) is

detected and the algorithm does not get fooled. At t=260min, over-

charge is detected. Conventional voltage detection algorithms falsely

stop charging at t=65min.

Description of The New Voltage Control Algorithm:

Referring to Fig. 4.14 at each time instant

• The algorithm keeps track of the maximum battery voltage recorded by checking

whether Vbatt(n) > Vmax.

65

Page 83: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

• If the voltage changes suddenly (|dVdt | > thsld1 ) or if the current has recently varied

by a substantial amount (Imax − Imin > thsld2 ), then the voltage measurement is

not reliable anymore. The maximum is reset to prevent false detection of peaks at

lower charging current (and therefore lower voltage peaks).

• To detect full SOC from the drop in the voltage (classical method) the algorithm

requires, also, that the derivative of the voltage first rises significantly. This is

detected when dVdt > thsld3 . ”dpos=1” means that a positive dV/dt has been

detected. When dpos=1 and the voltage drops to a threshold below its maximum,

the algorithm stops fast-charging. Imax and Imin are the max and min current of

a 5 to 10 minute sliding window.

It should be noted that because of the battery’s internal capacitance, the battery volt-

age will continue to drop long after the current has stabilized. To avoid false detection

(of full SOC) due to this phenomenon, the algorithm requires a positive dV/dt to re-arm

itself after it has reset. Therefore, the end of charge is based on both V and on the shape

of the overall voltage curve when approaching overcharge.

When charging with constant current, this algorithm performs the same as the con-

ventional algorithm with (maybe) a higher requirement in the voltage threshold required

to halt charging for robustness purpose (Vthsld=0.1V for a 12V NiMH battery or 10mV

per cell [19]). This Vthsld can be modified based on the ambient temperature measure-

ment and charging current.

Fig. 4.14 presents typical experimental results that show improved performance of

the proposed charging algorithm. As the figure shows, charge termination was properly

66

Page 84: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

determined, despite the fact that there were changing illumination conditions causing

different charging currents. It is important to note that conventional, known voltage

detection charge algorithms fail to properly charge the battery because they falsely ter-

minate the charge at around t=65 min in this case. The experiment is based on charging

a 12V NiMH battery using a 30W commercial solar panel.

This algorithm, however, is not perfect: If the algorithm resets repeatedly, it is the-

oretically possible that it may miss the voltage inflection point due to overcharge and

therefore, keep charging the battery beyond full SOC and, the algorithm may stop charg-

ing late. Also, thresholds must be carefully chosen. However, all the experiment per-

formed showed good behavior of the algorithm.

0 20 40 60 80 100 120 140 160 180 20012

13

14

15

Vol

tage

(V

)

0 20 40 60 80 100 120 140 160 180 2000

1

2

3

4

Cur

rent

(A

)

0 20 40 60 80 100 120 140 160 180 2000

0.5

1

1.5

2

time(min)

over

char

ge

Figure 4.15: Outdoor experiment with solar panel. Top: voltage of the battery. Mid-

dle: charging current. Bottom: overcharge detection

67

Page 85: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

Fig. 4.15 shows another experiment using solar panels. The voltage of the battery

rises as current charges it. The variations of the charging current induces sags in the

battery voltage. However the algorithm is able to detect the variations of the voltage as

a direct cause of the current variation and does not detect overcharge. The overcharge

detection is finally triggered at the desired moment at the end of the experiment.

4.3 Charge Control Algorithm for Li-ion Batteries

Figure 4.16: Charge control algorithm immune to power fluctuation from the input

68

Page 86: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

As explained in the previous chapter, conventional Li-ion chare control algorithms can

fail if it is not programmed properly. As the battery is charged and reaches its voltage

threshold (around 3.6V per cell, see Chapter 2), the charge control algorithm controls

the transfer of energy in order to maintain the battery voltage at its threshold. As current

gradually reduces, the charge is cut when the current reaches a low threshold, typically

one tenth of the full charging current [58]. As a result, if the current drops due to a

failure of the solar array to deliver power (such as during a passing cloud), the algorithm

can trigger end of charge. A solution to this problem is shown in Fig. 4.16. In this

formulation of the charge control algorithm, the system checks if the current has reduced

under the threshold AND if the battery voltage reached its threshold before ending the

charge. If the current drops due to the low light intensity, the voltage of the battery will

also drop, due to its internal impedance. Whereas if the current drops due to the normal

voltage regulation of the converter, the battery voltage should stay at its threshold.

69

Page 87: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

20 40 60 80 100 120 140 160 180 20012

14

16

18

20

Bat

tery

Vol

tage

(V

)

20 40 60 80 100 120 140 160 180 2000

0.5

1

1.5

2

Cha

rgin

g C

urre

nt (

A)

20 40 60 80 100 120 140 160 180 2000

0.5

1

1.5

2

Time (min)

Ter

min

atio

n F

lag

Figure 4.17: Li-ion battery charging from a sagging current source (Top: voltage,

Middle: current) and charge termination indicator using Liion charge

control algorithm programmed in Matlab (Bottom).

Fig. 4.17 shows how the new Li-ion algorithm successfully detects the proper mo-

ment when charge should be stopped. The experiment is the same as the one shown in

Fig. 3.7 in the previous chapter. However, in this figure, we used the new formulation

of the algorithm to avoid any false detection. In this experiment, the battery is hooked

up to a control circuitry and a power supply. The battery is subject to charge at con-

stant current by the power supply and sags in the current are added as perturbation to

mimic the effect of a cloud on a the output of a solar panel. When the battery’s voltage

reaches the threshold of 16.4V, the system enters a constant voltage mode at t=80 min

and current is shown to gradually decrease after that point in order to keep the battery

70

Page 88: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

voltage constant. A sag in the current occurs between t=118 min and t=126min. Data is

recorded and analyzed in Matlab. The algorithm is programmed to output a ` charge ter-

mination´ signal when the conditions for a charge terminations are met according to the

flowchart of Fig.4.16. The proper moment to cut the charge is accurately found at t=200

min. The alorithm, therefore, is not fooled when charging current suddenly decreases

due to external conditions, such as clouds.

4.4 Conclusion

We have proposed charge control algorithms to solve the issue presented in the previous

chapter. The proposed methods outperform the existing charge control algorithms in

changing weather environments. In particular, the proposed algorithms are more robust

to false detections before the battery is fully charged. One of the methods is based on the

voltage curve of the characteristic and involves a detection and filtering of false events

while the other proposed method is based on differential temperature measurement be-

tween two groups of battery cells in order to filter out the effect of changing ambient

temperature and irradiation. Both algorithm were designed to be robust to changing

weather and to reduce the number of false overcharge detections. For both algorithm

we have shown their ability to successfully detect the correct moment to end the charge

where traditional algorithms failed and stopped the charge when the battery was not

fully charged. Finally, we have shown a proper formulation of the Li-ion charge control

algorithm for use with solar panels. This formulation ensures that the algorithm will not

be fooled by drops of power caused by low light intensity.

71

Page 89: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

Chapter 5

Comparison and Analysis of Maximum

Power Point Tracking Methods

The goal of this chapter is to analyze and compare different Maximum Power Point

Tracking (MPPT) integration methods as well as improve charging efficiency for the

system. The system studied is charging a battery or a resistive load and the input consists

of a solar panel of unknown characteristics.

Of the numerous ways to achieve MPPT discussed in Chapter 2, some are not

adapted to the architecture studied. For example, open circuit voltage based MPPT

in which the voltage of the solar panel is controlled to be a certain fraction of the solar

panel open circuit voltage is not suitable here since that fraction changes with the tech-

nology of the solar panel (typically 0.6 to 0.8). Therefore, this technique is not adapted

for a modular application in which solar panels can be interchanged. (Workarounds may

be possible but the method loses its simplicity and practicality.) For the same reasons,

72

Page 90: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

short circuit current measurements are not adapted.

In this chapter, we use the Perturb&Observe as a convenient and accurate way to

track the Maximum Power Point of the solar panel [47, 59]. We also used the scanning

method in part of our research, in particular for the prototype described in Chapter 6.

However we only discuss the Perturb&Observe approach here.

In the first section of this chapter, we analyze the effect of different feedback methods

on the response of the charging circuit to perturbations. We also discuss the impact of

the chosen design on components requirements (cost and space). In particular, we will

show that control of the duty cycle through a Maximum Power Point Tracking algorithm

without a feedback control on the input voltage is a cheap and simple, but sometimes

unreliable, method. We further illustrate that proper digital feedback of the solar panel’s

voltage can greatly improve the efficiency at little to no extra cost.

In the second section, we propose an improvement to the Maximum Power Point

Tracking circuit to improve the efficiency and reduce charging time.

To summarize, the contributions of our research presented in this chapter are:

• A detailed understanding of the effects of mixed signal vs. digital implementation

of the feedback loop as well as the effect of the limitations of the components (in

particular the micro-controller).

• New bypass circuitry and algorithm to improve the efficiency of Maximum Power

Point Tracking.

73

Page 91: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

5.1 Performance of Different Feedback Methods

Different solutions exist to implement the Perturb & Observe algorithm:

• Although power needs to be sensed, it can be found that, in the case of battery

charging, the output power is a monotonic function of the output current. There-

fore the output current by itself provides enough information to run the algorithm,

as shown in [45].

• There are different ways of implementing the feedback control as shown in Fig.

5.1. The following sections will detail the different possibilities as well as their

advantages and inconveniences. However, the main difference is between the im-

plementation of Maximum Power Point Tracking with perturbation on the duty

cycle (Fig. 5.1(a)) and the one using perturbation on the input voltage reference

(Fig. 5.1(b) and 5.1(c) ).

74

Page 92: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

Figure 5.1: Different implementation of the Perturb and Observe control loop. (a):P&O on the duty cycle. (b) P&O on the PV array voltage with analogfeedback loop (because the microcontroller does not have a D/A con-verter, the voltage reference is output by the in the form of a duty cycleand averaged .) (c) P&O on the PV array voltage with digital feedbackloop.

75

Page 93: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

In order to test the different feedback implementations, we have retained an exper-

imental SEPIC topology for our MPPT chargers as shown in Fig. 5.1. The main ad-

vantages of the SEPIC converter for this application are its ability to step up and step

down the voltage (allowing more flexibility in the range of solar panel that can be used)

and the common ground shared between the input and the output allows simple data

transmission to the controlling circuit from the input as well as from the output. The

conclusion of the following analysis can be extended to other converters.

As discussed in Chapter 2, Maximum Power Point Tracking relies on the Power

versus Voltage (P/V) characteristic of the solar panel. The presence of a DC/DC con-

verter (a SEPIC converter in this particular example) allows the voltage of the solar

panel to be adjusted, through the converter’s duty cycle D, in order to reach the Max-

imum Power Point. The Power versus Duty ratio (P/D) characteristic of the system

(solar panel+converter+load) presents the same features as the P/V characteristic of the

solar panel which allow the Perturb&Observe algorithm to perform. Therefore, the Per-

turb&Observe algorithm can be applied by modifying the duty cycle (which will induce

a change in the solar panel’s voltage in a feedforward way), or, by modifying the refer-

ence voltage of the solar panel through a feedback loop.

To test the different configuration possibilities, we implemented MPPT in three dif-

ferent ways:

• Fully digital control of the converter with Perturb&Observe algorithm performed

on the duty cycle (Fig. 5.1 (a).)

– The output current is sensed and the duty cycle is modified following the

76

Page 94: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

variation of the output current.

– The gate signal for the main switch is produced by the PWM generator of

the microcontroller.

– There is no feedback control between two iterations of the MPPT algorithm

(the duty cycle stays unchanged for several dozens of milliseconds.)

• Analog control of the converter with Perturb&Observe algorithm performed on

the input voltage reference (Fig. 5.1 (b).)

– The output current is sensed and the input voltage (solar panel’s voltage)

reference is modified following the variation of the output current.

– The voltage reference is transferred to an analog control circuitry with a

voltage feedback loop on the input.

– The gate signal for the main switch is produced by the analog controller.

• Fully digital control of the converter with Perturb&Observe algorithm performed

on the input voltage reference (with a digital compensator programmed in the

microcontroller.) (Fig. 5.1 (c).)

– The output current is sensed and the input voltage (solar panel’s voltage)

reference is modified following the variation of the current.

– The input voltage of the converter is controlled through a digital controller

programmed inside the microcontroller.

– The gate signal is produced by the PWM generator inside the microcon-

troller.

77

Page 95: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

The different implementations are tested indoor. The light source is composed of

several halogen lights and the solar panel is kept at an acceptable temperature using a

fan. Such setups are commonly used to test solar panel algorithms [49, 60].

The value of the component is our experimental SEPIC converter is as follow : C =

88µF, Cin = 66µF, Cout = 66µF and L1 = L2 = 63µH.

Figure 5.2: Perturb and observe algorithm. Top: output current. Bottom: Voltage

across the solar panel. The solar panel operating point around the max-

imum power point.

The Perturb and Observe function is illustrated in Fig. 5.2. The function is pro-

grammed with the implementation shown in fig.5.1(a). The voltage oscillates around

the Maximum Power Point (lower curve) as the algorithm uses measurement of the out-

put current (upper curve) to determine the location of the Maximum Power Point.

78

Page 96: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

5.1.1 Effects of the Different Implementation Methods

Figure 5.3: A sudden drop in the light intensity can make the system react erratically

and cause large drop in the input voltage (Top). Bottom trace shows the

output current

Although perturbing the duty cycle directly (method described in Fig. 5.1(a)) achieves

MPPT, the reaction of the system to external perturbations is usually poor; because the

Perturb and Observe algorithm is slow (> 20ms per change in the duty cycle in our

implementation,) the input voltage of the system can experience quick drops if the load

or the light intensity changes as shown in Fig. 5.3. In this experiment, the DC/DC

converters runs the Perturb&Observe algorithm while illumination on the solar panel

suddenly drops causing a sag in the input voltage (because the duty cycle does not adapt

79

Page 97: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

quickly enough.)

Figure 5.4: Response of the MPPT with voltage control to a sudden change in light

intensity. Ch2: Input voltage, Ch4: output current (1V⇔ 1A). The volt-

age response of the controller is smooth thanks to a fast response of the

voltage feedback loop.

Therefore, control of the input voltage using a feedback loop and use of the Per-

turb&Observe method on the input voltage reference is a more suitable solution as

shown in Fig. 5.4 (waveforms obtained using setup of Fig. 5.1.b)

Response time of the analog feedback loop to a step change in the voltage reference

is shown in Fig. 5.5.

The digital solar panel voltage controller (Fig. 5.1(c)) takes advantage of the existing

microcontroller to reduce the component count. However, additional constraints are

80

Page 98: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

added by the microcontroller on the feedback controller due to computation time and

duty cycle limitation. Both constraints are directly stemming from the clock speed.

Figure 5.5: Response to a step of the voltage reference. Top (Ch4): Output current

measurement. Bottom (Ch2): Solar Panel Voltage.

In our experiment, we used a PIC18F452 microcontroller. We will analyze the res-

olution of the system and some computation times issues as derived from the device

datasheet [61]. The analysis can be extended to other devices qualitatively.

The total computation time of the feedback loop at a clock frequency of 20MHz is :

Tloop = 2Taqu + 2Tconv + TPI = 79µs (5.1)

where Taqu and Tconv are the acquisition time and the conversion time of the A/D con-

81

Page 99: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

verter, respectively, and TPI is the execution time of PI control loop. The total execution

time includes the input voltage sensing for voltage control and the output current mea-

surement for the MPPT algorithm. Although current measurement is not needed each

cycle, the feedback loop sampling time is forced to include the additional current sens-

ing time in order not to miss any cycle. (Because at the time when current sensing is

required, the A/D converter is forced to convert those two signals in one cycle.) The

response of the controller to a step in the input voltage reference is shown in Fig. 5.6.

Figure 5.6: Response of the input voltage (PV array’s voltage) to a step of the voltage

reference.

We can see in Fig. 5.6, the presence of limit cycling characterized by slow oscilla-

tions of the controlled voltage. In the following section, we will analyze and address

82

Page 100: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

this issue.

5.1.2 Resolution of the Digital Controller and Dithering

Knowledge of the resolution of the controller is an important data. It is necessary for the

proper calculation of the system’s model and also to predict the existence of limit cycles

in the feedback control.

The limitation of the resolution of the PWM generator can translate into the pres-

ence of limit cycling as identified in [62]. This effect happens if the resolution of the

control (in this case, the control of the input voltage of the converter) allowed by the

digital PWM generator is lower, in steady state, than the resolution of the sensed con-

trol variable done by the A/D converter: the digital PWM generator never allows the

error to become zero since there is no value in the duty cycle register that can bring the

controlled variable in the desired value bin as set by the A/D converter.

The resolution of the digital PWM generator used in our circuit is given by:

PWMresolution =log FOS C

FPWM

log 2(5.2)

Where FOS C is the frequency of the oscillator, FPWM is the frequency of the PWM

signal generated and PWMresolution is the resolution of the PWM signal in bits. For a

PWM frequency of 100kHz and a clock frequency of 20Mhz, a resolution of 5.6 bits

will be achieved.

We also have to take into account the steady state function Vin = f (D) in order to

83

Page 101: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

calculate the overall resolution.

Figure 5.7: Characteristic of the solar panel and simplified model

We first model the solar panel using the voltage source and resistor approximation

for VPV > VPV,MPP and as a constant current source for VPV < VPV,MPP. Fig. 5.7 shows

the characteristic of the solar panel (exponential curve) and the simplified model used.

The model is not perfectly accurate but should provide a good tool for the estimation

of the resolution in the worst case (largest slope in the D to Vin curve). The battery is

modeled as a voltage source and a resistor. We first calculate Vin = f (D) for the voltage

source in series with resistor model:

In the case of the SEPIC converter we have ideally, in steady state: Vout = D1−DVin.

We first have:

84

Page 102: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

VPV = EPV − RPV Iin =1 − D

D(EB + RBIout) (5.3)

where EPV and RPV are, respectively, the voltage source and series resistor of the PV cell

approximation, and EB and RB are the components of the battery model. Modifying the

equation gives:

EPV − RPVD

1 − DIout =

1 − DD

(EB + RBIout) (5.4)

Iout−RPV D2 − (1 − D)2RB

(1 − D)D=

1 − DD

EB − EPV (5.5)

We finally obtain by combining (5.5) and (5.3):

VPV =1 − D

D

[EB + RB

(1 − DD

EB − EPV

)( (1 − D)D−RPV D2 − (1 − D)2RPV

)](5.6)

In the part of the characteristic where the solar panel is considered a perfect current

source, we get the following relationships:

IinVin = IoutVout (5.7)

85

Page 103: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

IinVin =1 − D

DIin

(EB + RBIout

)(5.8)

Finally:

VPV =1 − D

DEB +

(1 − DD

)2

RBIin (5.9)

For low duty cycles, the converter will operate in discontinuous conduction mode.

Assuming that the solar panel’s voltage is constant due to the input capacitor we get:

iin,max =VPV

LDT (5.10)

Iin =VPV

2LD2T (5.11)

and

VPV = EPV − VPV

2LD2TRPV (5.12)

(5.12) gives the voltage of the solar panel’s voltage as a function of the duty cycle for

the open circuit case.

86

Page 104: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 10

5

10

15

20

25

Duty Cycle

Pho

tovo

ltaic

Pan

el’s

Vol

tage

Figure 5.8: Voltage of the solar panel as a function of the duty cycle.

Fig. 5.8 shows the result of the calculations for a solar panel with 23V open voltage

and 3 Amps short circuit current using (5.6), (5.9) and (5.12) (with a open circuit resis-

tance of 1Ω and a battery voltage of 14V with 1Ω series resistor). The period T is fixed

to 10µs. The approximation made on the panel’s curve in Fig. 5.7 ensures a worst case

analysis of the resolution.

87

Page 105: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1−1.8

−1.6

−1.4

−1.2

−1

−0.8

−0.6

−0.4

−0.2

0

D

∆VPV

Figure 5.9: Variation in the steady state input voltage for 1 bit of increment of the

duty cycle as a function of the steady state duty cycle. The duty cycle

register is 5.6 bit large.

In this example, it can be seen that the voltage levels that can be reached are about

1.8V apart in the worst case as shown in Fig. 5.9. Assuming that the voltage range of

the A/D converter is 50V and that the A/D conversion result is linear, the resolution of

the A/D conversion will be equal to 50/(2NADC )V where NADC is the resolution of the

A/D converter in bits. If the A/D resolution is higher than 4 bit, limit cycling due to the

quantization effect may occur.

To avoid limit cycling, the apparent resolution of the PWM waveform can be in-

creased using digital dithering [62]. Dithering can be programmed in software by inter-

rupting the program every cycle and alternating the value in the duty cycle latches.

88

Page 106: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

Figure 5.10: Behavior of a 2 bit dither pattern: the digital PWM can generate signal

by step of 1 LSB (least significant bit). Dithering alternates the PWM

levels to create virtual intermediate levels

The principle of dithering, shown in Fig. 5.10, is to alternate the duty cycle by one

LSB for a certain number of cycles to create an averaged duty cycle that will be in

between the levels reachable by the PWM generator. That principle can be applied to an

infinite number of bits and the result is a virtual increase in the resolution of the PWM

generator. This technique works because the variations in the PWM duty cycle from

cycle to cycle will be absorbed and averaged by the energy storage components of the

converter (capacitors and inductors).

To eliminate those limit cycles, a 2 bit dithering is added to the control loop making

an effective 7.6 bits PWM generator (PWM duty cycle coded from 0 to 194 or 27.6).

There are several patterns possible for achieving dithering, some being more efficient in

89

Page 107: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

the harmonic content generated. This is discussed in depth in [62].

If programmed on a microcontroller, there are different ways to implement the dither

function: the function can be implemented using a combinatorial function or through the

use of a look-up table.

If the combinatorial method is used there are ways to simplify the dither function.

We name dither function a function which output is 0 or 1 and which takes a dither

value (between 0 and 4) and a counter value (between 0 and 4) as arguments. The value

of that function will be added to the duty cycle latch. The counter is increased every

cycle. Fig. 5.11 shows the Karnaugh’s map of the function used to set the function.

For example the position of the ’1’ on the second row of the map does not change

the resulting pattern. However, placing it on the second column allows simplification of

the function and therefore more compact and faster code.

The value of the function retained is:

f (C,D) = C1D2 + C2C1D1 (5.13)

D1 and D2 represent the dither value or, in other terms, the two LSBs of the duty cycle

value. C1 and C2 represent a counter incremented each switching cycle.

90

Page 108: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

Figure 5.11: Karnaugh map of the 2 bits dither function.

Another way to achieve dithering is to use a look-up table to produce desired dithered

waveform. In that technique, each row of the table contains the pattern used for dither-

ing and the combination of the cycle counter and dither register point to the correct

modification to add to the duty cycle. That method is usually more efficient for micro-

controllers and fixed internal connections CPUs in general. Using that technique, the

calculation time for our PIC microcontroller reduces to 3.8µs from the 5.6µs required

for the combinatorial method. It is expected that the efficiency gain of the look-up table

method over the combinatorial method will increase as the number of bits used in the

dither pattern increases (as the boolean function will grow larger and will be more cum-

bersome to program while the look up table will only require an increase in the table

size and minor modifications to allow proper indexing). However, in the case of FPGAs

where gates can be configured individually, the combinatorial method, although more

complicated to program, might become more efficient.This is due to the fact that the

computation can be made asynchronous and can execute in parallel with the other tasks

91

Page 109: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

and as the number of gates required to execute the function might become smaller than

the number needed for the look-up table method.

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1−0.5

−0.45

−0.4

−0.35

−0.3

−0.25

−0.2

−0.15

−0.1

−0.05

0

D

∆VPV

Figure 5.12: Variation in the steady state input voltage for 1 bit of increment of the

duty cycle as a function of the steady state duty cycle. The duty cycle

register is 7.6 bit large.

According to the calculation done previously and the result shown in Fig. 5.12,

for the expected resolution of the input voltage using a 5.6+2 bit PWM generator, the

maximum resolution for the A/D converter that will guarantee the absence of limit cycles

is 7 bits. However, in practical experiments, no limit cycles where noticed at 8 bits. This

is due to the fact that we used a worst case analysis approach.

92

Page 110: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

Figure 5.13: Voltage regulation before dithering

93

Page 111: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

Figure 5.14: Voltage regulation after introduction of a 2 bits dithering

Fig. 5.13 and Fig. 5.14 shows the benefits of dithering (as implemented using the

dithering function previously expressed) on the voltage regulation: the limit cycles as-

sociated with the limited resolution of the PWM signal is eliminated.

The 2 bits dither subroutine takes 5.6µs to execute on a 20MHz PIC microcontroller

and is executed every 10µs. Therefore, the dither subroutine takes up 56% of the execu-

tion time of the CPU. This is a heavy burden and will have a strong impact on the exe-

cution time of the other routines, particularly on the sampling rate of the feedback loop.

With that routine programmed, TPI increase to 30µs from the initial 12.8µs. Hence, the

94

Page 112: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

minimum sampling rate will be 96µs.

5.1.3 Summary of Analysis

The Perturb & Observe method for MPPT based on the duty cycle alone performs well in

slow changing environment. However, issues arise with sudden change in load or light

intensity. In that situation, the slow response can lead to important drop in the input

voltage and cause shutdown of the converter and reset of the microcontroller. To solve

that issue, a feedback loop can be added in the circuit, controlling the input voltage.

MPPT can then be performed by changes in the voltage reference. This ensures that the

system will keep the voltage between safe boundaries. Resolution has also increased.

However, the resolution of the previous duty cycle perturbation method (Fig. 5.1) can be

increased using the dither technique discussed previously. The disadvantage of the above

configuration is that its implementation adds a PWM IC along with several resistors and

capacitors. An op-amp may also be required between the microcontroller and the PWM

IC’s error input to provide correct impedance to the feedback loop. Those additions

increase board space and cost.

To keep the component count minimal, a digital controller has been realized using

the same microcontroller. A digital control loop has been designed in agreement with

the limitation of the device. It provides similar response to the mixed signal system

described above. The component count now reduces to the same number as for the first

method. However, unlike the mixed signal approach, this system is dependent on the

frequency of the clock for proper operation. The need for dithering is a symptom of

clock frequency limitation.

95

Page 113: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

These results are summarized in Fig. 5.15.

Figure 5.15: Summary of the comparison between the different configuration.

5.2 Improvement of Maximum Power Point Tracking

Through Bypass Switch

Solar panels are often manufactured to optimally charge a specific terminal battery volt-

age. For example, the 30W panels used in our experiments are made to charge 12V

batteries and have a VMPP around 14V. Thus, there is a range of load voltage for which

MPPT actually reduces the power delivered to the battery. This is due to the power

dissipation in the converter. To avoid this loss, a bypass switch can be used to create

96

Page 114: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

an optional direct connection between the solar panel and the battery. This reduces the

losses through the system when the load voltage is matching the solar panel voltage and

the bypass switch is activated.

Figure 5.16: A Maximum Power Point Tracker with bypass switch (SEPIC topology).

97

Page 115: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

Figure 5.17: Output power from the system for different output voltages with direct

connection, MPPT converter, and proposed hybrid system.

Fig. 5.16 shows the implementation of the bypass switch in the case of a SEPIC

converter: the two upper MOSFET compose the bypass switch. Fig. 5.17 shows how

power can be maximized for a broad range of solar voltage outputs using that method.

Fig. 5.18 shows an algorithm to manage the system between the two modes: direct

connection and DC/DC converter operating at MPPT.

98

Page 116: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

Figure 5.18: An algorithm that switches between Perturbation of the DC/DC con-

verter and direct connection between the solar panel and the load in

order to maximize the output power in all cases.

When the algorithm has stabilized around the Maximum Power Point, which is as-

sumed to be done after a 5 second search ( alternatively, the stabilization can be estimated

by calculating the standard deviation of the duty cycle over a certain window of time),

the micro-controller assesses whether MPPT increases delivered power or not. This is

done by switching to direct connection and comparing the charging current delivered to

the battery. The best solution will be retained. Every 5min, the two possibilities, direct

connection or MPPT will be tried again.

Referring to Fig. 5.18, Ts is a period of time after which the algorithm is assumed

to have reached the Maximum Power Point of the solar panel. After a period of Ts has

99

Page 117: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

passed, the current at maximum power point, IMPPT , is stored, the DC/DC converter is

momentarily turned off and Maximum Power Point Tracking interrupted. The bypass

switch is turned ON and the output current with bypass switch, Idirect, is compared with

IMPPT . If the output current using the bypass switch is higher than the output current

achieved with the DC/DC converter using Maximum Power Point Tracking, then the

bypass switch configuration is kept for a long period of time. Otherwise, the bypass

switch is turned OFF and DC/DC converter is turned ON again and the Maximum Power

Point Tracking algorithm is re-enabled.

5.3 Conclusion

We have analyzed the Perturb and Observe algorithm and its different possible im-

plementations and discovered that some configurations result in more reliable opera-

tion of the algorithm. Even though most of the literature mention the use of the Per-

turb&Observe algorithm using the duty cycle as the direct source of perturbation, we

have found that this can result in unreliable operation is some cases. The perturbation

on the input voltage reference offers better performances with little to no increase in

component count (no increase in the all-digital case). We described the issues arising

when using of a digital control of the input voltage and we showed the specific calcu-

lations required to ensure proper operation when the input of the converter is a solar

panel. Additionally we showed that the use of a bypass switch in parallel with a DC/DC

converter, along with proper control algorithms, can result in higher overall efficiency of

the system. These findings will have a direct effect on the choices that will be made in

100

Page 118: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

Chapter 6.

101

Page 119: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

Chapter 6

Prototype For a Commercial Battery

Charger

Figure 6.1: Charger prototype connected to battery and solar panel.

102

Page 120: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

In this Chapter we describe the design and building of a commercial battery charger

using the research results previously described in this thesis.

The battery charger prototype has been built jointly with PowerFilm, Inc. and is

being field tested by US Army Natick Research Laboratory. The product is specifically

designed for the military application of charging BB390s (NiMH) and BB2590(Li-ion)

batteries from commercial flexible portable solar panels. Fig. 6.1 shows the charger (in

gray) connected to a BB390 battery and a solar panel. The charger features a Boost-Buck

configuration with bypass switch and purely digital controller for Maximum Power Point

Tracking and battery charging regulation. Example of such system is simulated in [63].

A Sepic configuration was also being studied. However, the Boost-Buck was ultimately

preferred to the Sepic for reasons of efficiencies and other designs issues. Some work

related to the Sepic converter are shown in Annexe.

The system is designed to charge both 12V NiMH (BB390) and 14.4V Li-ion (BB2590)

military batteries from various types of solar panels. The charger simply clamps on the

battery and connects to the solar panel through a cable. The system recognizes the type

of battery being connected (BB390 or BB2590) and applies the proper charge control

algorithm. Another useful feature is the ability to charge the battery from other batteries

such as Humvee heavy duty batteries. Since the converter topology is compatible with

this application and because the US Army has shown interest in this feature, we have

decided to add that feature in our charger.

Because the BB2590 and the BB390 are each composed of two independent legs,

the output of the DC/DC converter is fed to a set of two bidirectional solid state switch

that allow one or both of the leg to be charged.

103

Page 121: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

This allows us to charge each leg of the battery without using two separate converter

and therefore saves space since only one inductor is necessary. However, this will reduce

the control we have over the charging process, since we can only control current in one

of the legs at a time. The other leg’s current being dictated by the difference in the legs’

admittance. Additionally, proper software management of the switches will have to be

implemented in order to avoid high surges of current between the two legs when their

charge is unbalanced, a situation which could happen at the beginning of the process,

for example.

This chapter will detail the design and function of the prototype charger board:

• Detail of the DC/DC converter topology and its operating characteristics.

• Description of the converter’s digital controller including modeling of the con-

verter and feedback loops.

• Programmed charge control algorithms for BB390 NiMH and BB2590 Li-ion bat-

teries.

• Maximum Power Point Tracking algorithm and its implementation.

Following are the initial characteristic of the charger:

• Dimension of the board (power and control): 2.2x2.2 inches

• Operating Input Voltage: 8-40V

• Output Voltage: 8V-16.5V depending on the battery type and state of charge

(Voltages out of this range will make the charger go to idle mode.)

104

Page 122: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

• (Voltages out of this range will make the charger go to idle.)

• Maximum charging current: 6A (this limit is set by the battery)

• Maximum output power: 100W (6Amps @ 16.5V)

• Output current regulation (when in specific mode): +/- 0.1A

• Input voltage regulation (when in specific mode): +/- 0.36V

• Sampling rate: 200 s

• Switching frequency: 200kHz

• A/D converters resolution : 8bit.

Figure 6.2: System diagram of the prototype.

105

Page 123: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

The system can charge either Li-on battery (BB2590 models) or NiMH (BB390

models) batteries. The charger clamps on the battery and uses the mechanical and elec-

trical differences between the battery packs to detect the type of battery connected. The

system relies on a microcontroller to achieve the various control functions:

• Sensing and integration of the charging parameters.

• Feedback control of the solar panel’s voltage or the battery’s charging current.

• Proper charge control of the Li-ion or NiMH battery

• Maximum Power Point Tracking of the solar panel if necessary.

A system diagram of the charger is shown in Fig. 6.2.

6.0.1 Topology

The initial design was to use a SEPIC converter. More detail on the configuration of the

circuit is given in annexe. Although the circuit performed with acceptable efficiency, the

board size was still larger than expected due to the requirement to use ”off the shelf”

components. Therefore the inductors cannot be coupled and the space taken by the

magnetic component is especially large. Additionally, the addition of a synchronous

rectifier became a problem due to the voltage swings at the terminal of the diode.

Therefore we redesigned the circuit using a Boost-Buck configuration.

106

Page 124: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

Figure 6.3: Topology of the chosen converter.

The configuration is a Boost-Buck converter with a set of bidirectional switches that

allow the current to be directed in each leg. The schematic of the circuit is shown in

fig. 6.3. Depending on the driving of the switches, the circuit can act as a step-down

converter (when switching Q1) or a step up converter (when switching Q2 and keeping

Q1 ON). The switches (Qleg1a,Qleg1b) and (Qleg2a,Qleg2b) form two bi-directional switches

that allow the converter to charge either battery leg1 or/and battery leg2 respectively.

They also prevent current flow from one leg into the other (when the two legs have

a considerable voltage difference). The transistor Qb bypasses the diode D2 when the

circuit operates in buck mode or when it is operating as a direct connection between the

input (solar panel) and the battery. Fig. 6.5 shows the layout of the new board.

107

Page 125: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

Figure 6.4: Schematic of the charge pump for the proper driving of the primary

switch

The primary switch for the buck converter is an N-FET. The driving is supplied by

the high side part of a dual switch driver. The voltage supply for the gate of the transistor

is provided using a bootstrap diode. However, when the circuit operates in boost mode,

the FET has to be turned on indefinitely. The bootstrap diode configuration can only sup-

ply the charge needed to keep the gate on for a short time. The charge for the supply rail

can only be refreshed when the source voltage of the FET’s source goes to zero volts due

to the power diode conduction. Therefore, a charge pump has been added to the circuit.

In order to use a minimum of additional parts, the control of the switches involved in the

charge pump function is supplied directly by the microcontroller. That allows conve-

nient timing and easy dead time addition to prevent any possible cross-conduction.The

108

Page 126: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

function of the pump is as follow: the charge is taken from the 12V rail of the control

circuit to charge a capacitor. The capacitor is then connected to the bootstrap capacitor

to replenish it. Fig. 6.4 shows the detail of the circuitry. The control of the switches is

achieved through the ` RD2´ and ` RD3´ lines of the microcontroller. When U12 is ON

and U14 is OFF, C3 charge quickly to the voltage of the 12V rail. When U12 is OFF

and U14 is ON,U13 turns ON and C3 discharges in C4. C4 is connected in parallel to

the bootstrap capacitor. Between those two states, both U14 and U12 are switched off

to prevent shorting the source of the primary FET (connected to the lower side of C4) to

the ground.

The final board layout is shown in Fig. 6.5. The figure shows the top and bottom

layers of the board. The two additional inner layers were not shown on the figure. The

top layer is dedicated to the power component and the high current part of the DC/DC

converter. The bottom layer is dedicated to the sensing and control electronics. One of

the inner layer serves as a ground plane to minimized the EMI generated in the control

layer from the power layer.

109

Page 127: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

Figure 6.5: New Boost-Buck converter. Top: Power circuit. Bottom: Control layer.

The second layer is used as a ground plane. The third layer is used

for additional routing of the control circuit as well as additional ground

plane.

110

Page 128: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

Figure 6.6: Efficiency of the converter for various input voltages

Fig. 6.6 shows the efficiency of the system for various input operating points and the

following table shows the power components used in the converter:

111

Page 129: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

Q1 IRFS3307

Q2 IRLR9103

Qb IRF7424

Qleg1a, Qleg2a IRF7424

Qleg1b, Qleg2b IRFt424

D1 VB30100

D2 B4030G

L 2300HT-470H-RC (47µH)

C1 4x10µF, ceramic

C2 3x10µF, ceramic

Rs1,Rs2 10mΩ

112

Page 130: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

6.1 Battery Voltage and Chemistry Detection

Figure 6.7: Pin connection diagram on the battery side (top) and on the solar panel

side(bottom)

As specified above, the allowed battery voltage ranges from 8V to 16.5V depending on

the battery chemistry and state of charge. A battery with a potential lower than 8V is

considered faulty and will not be charged. A battery with a potential lower than 10V

is considered highly discharged and will be trickle charged until its voltage rises above

12V. 16.5V is the highest voltage at which the controller will charge the battery. This is

the threshold voltage for the BB2590 Li-ion battery.

Chemistry detection is achieved mechanically using the differences in the BB2590

and BB390 battery pack: the BB390 has pads connected to thermistors used to sense the

battery pack’s inner temperature while those pads are shorted in the case of the BB2590.

These pads are identified in Fig. 6.7 by the letters A and B. The temperature sensing

113

Page 131: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

circuit inside the controller can detect the difference in the mechanical connection and

the type of battery can then be found (the sensors return a value of 0 for a BB2590 and a

thermistor related voltage for the BB390). Other primary batteries using the same con-

figuration as the BB390 and the BB2590 do not possess the additional pads. Therefore,

the sensor will return a value of 0xFF(or 5V) for these battery and the circuit will refuse

to start the charge.

6.2 Operation

Figure 6.8: Simplified organization diagram of the function programmed in the

charger

114

Page 132: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

A simplified diagram of the functions programmed in the charger is shown in Fig. 6.8.

The program can be summarized as follow:

• A state machine stores the state of the charging process (charging, idling, end of

charge, etc) and allows (or disable) current to flow in each battery leg individually.

According to the state and the type of battery, the state machine will set the proper

current limit for the charge.

• An interrupt function (a function that interrupts the execution of the program peri-

odically to execute itself) senses the battery’s data and input voltage and executes

the proper feedback algorithm (input voltage or output current feedback).

• A Maximum Power Point function that periodically scans the range of possible

input voltage (by changing the voltage reference that the interrupt funtion uses)

and determine which operating input voltage yields the highest charging current.

Each of these functions will be described in detail.

6.2.1 Low Level Control

The charge controller will operate the DC/DC converter in order to charge the battery

according to algorithms defined in Chapter 4. The converter will be operated in two

main modes: output current regulation and input voltage regulation.

In the first mode, the output current will be controlled to a threshold value through a

feedback loop programmed in the CPU. If there is a difference in the current between the

two legs of the battery, the current threshold is applied to the leg carrying the maximum

115

Page 133: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

of the two sensed currents. Therefore, while the system cannot control the current in

both legs together, it can ensure that the battery is charged at a safe rate.

The input voltage regulation mode is used for MPPT of the solar panel (input of the

system.) In this mode the input voltage is controlled to a given reference as provided by

the MPPT algorithm through a feedback loop programmed in the CPU. The controller

jumps from voltage control (MPPT) to current control when the output current rises

above the maximum safe charging current for the battery.

Since the DC/DC converter is formed of a step down and a step up converter mounted

around one inductor, the switches need two distinct driving signals: one for the buck

primary switch, and one for the boost primary switch. They are given respectively by

the ’PWM1’ output of the microcontroller for the boost switch and the ’PWM3’ output

for the buck switch. In order to keep the programming of the feedback loop simple, we

use the same control law for the buck and the boost mode and only one PWM value is

returned by the control routine. That PWM value is then broken up in the proper values

to assign to PWM1 and PWM3 through a dedicated routine. Additionally, the opening

or closing of the switch bypassing the Boost converter’s diode is also controlled through

that same subroutine. Hence, the switch by switch control of the converter becomes

transparent to the feedback control loops which makes those feedback controllers easy

to design and reduce the chance of software induced fault (such as the closing of two

switches at the same time or the bypass of the boost’s diode when operating in boost

mode).

116

Page 134: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

Figure 6.9: Low level control of the DC/DC converter. The current feedback loop

controls the output current to a reference set by the charge control al-

gorithm. The voltage feedback loop controls the PV array’s voltage ac-

cording to the value set by the MPPT algorithm. Switching from one

loop to another happens when the current exceeds a limit or when the

current cannot be maintained. Each step of this scheme is a set of rou-

tines programmed in the same microcontroller.

The controller jumps from current control to voltage control (MPPT) when it detects

that current control cannot be achieved because of the limited power available at the

input(in the present state: when the duty cycle reaches a high threshold.) Fig. 6.9

illustrates the principle of operation of the converter including how the system switches

between current control and voltage control.

In the case of the Li-ion battery, when the battery’s voltage is reaching the limit of

117

Page 135: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

16.4V, the threshold for this chemistry, the output current limit is progressively lowered

to keep the voltage under 16.4V.

Figure 6.10: Load of the CPU. executing the control algorithm for the DC/DC con-

verter. The low state of the waveform indicates that the CPU is execut-

ing the control algorithm while the high state represent the time when

the CPU is free to execute the rest of the functions of the program.

Fig. 6.10 shows the computation load of the low level feedback interrupt function for

the DC/DC converter. That interrupt is generated periodically. When executed, it senses

the different data from the battery and the input(charging current, voltage, temperature,

etc...). The interrupt routine also performs parameters check for safe operation, feedback

calculation and duty cycle calculation for the converter. To ensure a proper behavior of

the feedback controller, we need to ensure that there is enough time for the CPU to

finish calculating, checking and applying the next duty cycle before a new interrupt

118

Page 136: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

is generated. In addition, enough time needs to be allowed for the other functions to

execute with appropriate timing. (There needs to be enough ` slack time´ between two

interrupts). The measurement needs to take into account the time taken by the CPU to

execute the dithering interruptions, which are set at a higher priority than the feedback

interrupt and executed every switching cycle. From Fig .6.10, we can see that the overall

time needed to execute the feedback control for one step is between 100µs and 150µs.

Therefore we choose to time the control loop with a period of 200µs. The sampling

period is therefore 200µ. This is close to the smallest possible period that can be applied

considering the computing load of the CPU. This gives a possibility of reaching the

desired reference in about 2 ms (assuming we achieve control in 10 samples). This is not

a fast control but is sufficient for this application, as there are no stringent requirements

on the output current to be constant (no failure in load operation will occur if the current

fluctuates).

6.2.2 Maximum Power Point Tracking

As discussed in Chapter 2 and Chapter 5, it is possible to implement MPPT by utilizing

output current as the input to the algorithm and using an inner feedback loop to control

the input voltage to the desired reference as set by the algorithm (see Chapter 5 for

details). Candidate approaches to achieve Maximum Power Point Tracking may include:

Perturb&Observe, Incremental Conductance and Scanning of the Input Voltage. The

benefits of scanning the input voltage to find the Maximum Power Point of the solar

array are: simpler implementation, greater robustness to noise in the measurement, and

the ability to find the global maximum of the power curve regardless of the operating

119

Page 137: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

conditions [41]. This is achieved by scanning the input voltage reference(using proper

control of the DC/DC converter) and operate the panel at the voltage that yielded the

highest output power during the scan. The drawback of the complete scan method is the

interruption of efficient energy transfer during the scan and the inability to dynamically

adjust to sudden variations in the maximum power point.

This charger opts for the complete voltage scan method for the Maximum Power

Point Tracking algorithm: the charge controller performs a scan on the whole range of

input voltage approximately every 90s and re-update the reference voltage after the scan

has been performed, in order to keep the system operating at the Maximum Power Point.

The scan is achieved by operating the DC/DC converter with an input voltage feedback

loop and changing the reference voltage by steps every 100ms until all possible input

operating voltages are tried. The system then picks the voltage that yielded the highest

battery charging current (output current of the converter) as a the reference voltage for

the next 90 seconds.

If the Maximum Power Point’s voltage of the solar panel is close to the voltage of

the battery, DC/DC conversion is not necessary and direct connection between the panel

and the battery is preferable (see Chapter 5).

In theory there exists an operation point on the characteristic of the Boost-Buck

DC/DC converter where direct connection between the solar panel and the battery is

achieved. This occurs when the duty cycle of the Buck converter is set to 1 and the duty

cycle of the Boost converter is set to 0 with Qb, the FET bypassing the Boost converter’s

diode, being switched on. In this mode of operation, there is no periodic switching of

any power device and the current travels directly from the solar panel to the battery

120

Page 138: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

through the Buck’s FET (Q1), the inductor and the FET bypassing the Boost converter’s

diode (Qb). Additionally, the current travels through the leg selector’s FETs. The total

resistance through the DC/DC converter parts is estimated to be about 50mΩ for the

components used in our design. The leg selector will add another resistance of 34mΩ

per leg (an effective resistance of 17mΩ if the current is equally split between the two

legs).

While there is a specific duty cycle value that will achieve the aforementioned con-

figuration of the switches, there is no possibility to ensure that the system will operate

in this position. That is, because the charger controls the input voltage by steps and

therefore, the steady state of the system will also be changed by steps. The reference

input voltage created by the feedback control routine in the microcontroller will not nec-

essarily generate the exact voltage that will create a duty cycle of 1 for the Buck’s main

switch and 0 for the Boost’s main switch (PWM3=1 and PWM1=0). In order to force

the system to operate in direct connection, we can use an algorithm such as the one

proposed in Fig. 6.11.

121

Page 139: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

Figure 6.11: MPPT bypass algorithm for improved efficiency when the battery volt-

age matches the Maximum Power Point of the solar panel

In this algorithm, the system scans the whole range of input voltage using the DC/DC

converter in input voltage feedback mode as discussed earlier. If the voltage at Maximum

Power Point is found to be close to the battery voltage (smaller than a certain threshold α

in Fig. 6.11), the converter is put in bypass mode by opening Q2 and keeping Q1 and Qb

closed, essentially forming a direct connection between the solar panel and the battery.

After a certain period of time, a new scan is executed in case the Maximum Power Point

has moved.

6.2.3 The State Machine

The charge control software uses a state machine to control the DC/DC converter and

all the power switches on a high level. The state machine has the task of operating the

122

Page 140: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

leg selector switches and assign the battery’s charging current reference.

The State Machine is a routine programmed in the microcontroller and updates itself

every 5 seconds depending on the different existing conditions. The State Machine

routine is low priority and is interrupted by the sensing and feedback interrupt.

Figure 6.12: State machine for the NiMH BB390 battery

123

Page 141: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

Figure 6.13: State machine for the Li-ion BB32590 battery

Depending on the battery, a different state machine is used. The state machine is

shown in Fig. 6.12 for the NiMH battery and in Fig. 6.13 for the Li-ion battery. The

detail of the state machines is described:

For the BB390 (NiMH):

• State 0: This is the initial state of the system after startup. Alternatively, the

system goes to this state whenever a battery fault is detected. When the system is

in that state, the DC/DC converter is shut down.

• State 1: This state is entered when the temperature derivative of LEG1 rises above

the threshold. In this state, the DC/DC converter is on, LEG1 is ON and LEG2 is

124

Page 142: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

turned OFF.

• State 2: This state is entered when the temperature derivative of LEG2 rises above

the threshold. In this state, the DC/DC converter is on, LEG2 is ON and LEG1 is

turned OFF.

• State 3: This state is entered when the voltage of the two legs equalize. In this

state, the DC/DC converter operates at full available load. Both leg switches are

ON.

• State 4: This state is entered when the full S.O.C. is detected. The battery keep

being charged at low current.

• State 5: This is an intermediary state when the system needs to enter State 3 (both

legs charging) but the voltages of the legs are not equal. If the system enters State

3 directly, a high current could flow from one leg to another, potentially damaging

the charger. In state 5, LEG1 is charging and LEG2 is turned off until V1 rises to

be equal to V2. The system then enters State 3

• State 6: This state is identical to State 5 but for the case when V2 is lower than

V1.

For the BB2590 (Li-ion):

The state machine for the BB2590 is similar to the BB390. State 1 and 2 are not

present:

• State 0: Same as for BB390

125

Page 143: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

• State 3: Both legs are charged together at constant current. When the battery

voltage reaches 16.4V, the current reference is lowered to maintain the battery

voltage under 16.4V. When the current reference gets under 150mA per leg, the

system switches to State 4.

• State 4: The battery is fully charged, the converter is shut down.

• State 5: This is an intermediary state when the system needs to enter State 3 (both

legs charging), but the voltages of the legs are not equal. If the system enters state

3 directly, a high current could flow from one leg to another, potentially damaging

the charger. In State 5, LEG1 is charging and LEG2 is turned off until V1 rises to

be equal to V2. The system then enters State 3

• State 6: This state is identical to State 5 but for the case when V2 is lower than

V1.

6.2.4 Feedback Controller Design

The control of the DC/DC converter is achieved through two feedback loops programmed

in the microcontroller as described previously. Only one loop is active at any given time.

The microcontroller chooses which to activate depending on the situation. One feedback

controller regulates the output current to the battery to a reference provided by the higher

level control algorithms. The second controller regulates the input voltage of the con-

verter (in other words, the voltage of the solar panel), to a reference also provided by the

higher level control algorithms (in this case, the MPPT algorithm).

126

Page 144: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

In this subsection, we will model the system and calculate appropriate control func-

tions for the controller.

Figure 6.14: Shaded area shows the possible operating area at the input of the

DC/DC converter. Dashed curves show example of typical input

sources that can be used.

Fig. 6.14 shows the sources that can be used with the charger. The shaded area

represent the possible operating points at the input of the DC/DC converter. The area

is bounded by the minimum and maximum output voltage of 8V and 35V respectively.

The maximum current is limited to 7A in the inductor to avoid saturation. This translates

to an average input current of 7A maximum when the converter operates in Boost mode

(average input current equals average inductor current). Finally, the charging current

(the output current of the DC/DC converter) is limited to 2.5A per leg of the battery,

127

Page 145: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

which results in maximum power of 83W if the battery voltage is 16.5V (maximum

voltage for the Li-ion BB2590 battery). Assuming a worst case efficieny of 90%, the

maximum input power is 91W. This limits the possible operating range of the input

under the curve shown in Fig. 6.14. Also shown in Fig. 6.14 are three examples of

typical I/V characteristic of inputs that can be used with the system: two different solar

panels and a battery (modeled as a voltage source in series with a resistor).

Because the system is designed to handle a large range of inputs (see Fig. 6.14),

tradeoffs will have to be made in order to achieve a stable control of the DC/DC converter

in any situation.

Output current controller In order to analyze the behavior of the converter and the

controller, we use an averaged state space model of the converter and perform lineariza-

tion around the operating point [64].

The DC/DC converter is comprised of a buck and a boost mode. Each mode will be

modeled on its own.

Figure 6.15: Model of the buck converter.

128

Page 146: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

Buck For the Buck, the schematic of the model is shown in Fig. 6.15. Referring

to the schematic in Fig. 6.3, Qb is always ON and Q2 is always OFF. The inductor

is modeled as an inductance and parasitic resistance rL. The transistor bypassing the

boost’s diode in buck mode is modeled by a resistance. For convenience, it is included

in rL. The capacitors are modeled with their E.S.R. (rc1and rc2). The source is modeled

as a voltage source and a resistance and so is the battery (Eo and Ro). The diode D1 is

modeled as a voltage source Vd when conducting and the main switch Q1 as a resistor

(rDS on) when conducting.

The averaged model is expressed by the following equations [64]:

x = f (x, u, d) = A(d)x + B(d)u

iout = g(x, d) = C(d)x(6.1)

with: A(d) = d · Aon + (1 − d) · Ao f f and B(d) = d · Bon + (1 − d) · Bo f f

x =

vC1

iL

vC2

and u =

e1

eo

vD

and:

Aon =

−1C1(R1+rc1)

−R1C1(R1+rc1) 0

R1L(R1+rc1)

1L (−rc1R1

rc1+R1− rc2Ro

rc2+Ro − rL − rDS on) −RoL(Ro+rc2)

0 RoC2(rc2+Ro)

−1C2(rc2+Ro)

129

Page 147: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

Ao f f =

−1C1(R1+rc1) 0 0

0 1L (−rc2Ro

rc2+Ro − rL − rDS on) −RoL(Ro+rc2)

0 RoC2(rc2+Ro)

−1C2(rc2+Ro)

Bon =

1C1(R1+rc1) 0 0

rc1L(R1+rc1)

−rc2L(Ro+rc2) 0

0 1C2(rc2+Ro) 0

, Bo f f =

1C1(R1+rc1) 0 0

0 −rc2L(Ro+rc2)

−1L

0 1C2(rc2+Ro)

−1C2(rc2+Ro)

C =

[0 rc2

Ro+rc2

1Ro+rc2

]

Remark: If the diode D2 is bypassed as shown in Fig. 6.15 then vD = 0.

If we assume an operating point for the source, the input parameters E1 and R1 are

set along with the input current I1. If the parameters of the load (Eo and Ro) are known,

we can estimate the steady state duty cycle:

Destimate =Eo + RoIo estimate

E1 − R1I1(6.2)

with:

Io estimate =−Eo +

√E2

o + 4Ro(E1I1 − R1I21)

2Ro(6.3)

The assumption made here is that the input power is equal to the output power. While

this is not true, it will allow us to get an estimate of the duty cycle D at that operating

point. We then use that estimate of D to calculate the steady state of the system using

the model previously calculated. The reason for this step is that we are not so much

interested in a specific duty cycle but a specific operation point on the I/V characteristic

130

Page 148: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

of the input (such as a solar panel). That calculation allows us to fix the steady state

duty cycle for a given operating point. Because of the error in the estimation, the actual

operating point obtained will not be exactly the one desired. However, that does not

affect the accuracy of the model, just the position of the operating point for the simulated

converter.

IL,steady

VC1,steady

VC2,steady

= −A−1(D)B(D)

E1

E2

VD

(6.4)

The steady state of the system is calculated using 6.4.

Remark : The model assumes that the inductor current is in continuous conduction

mode (CCM). If the system is found to be not in CCM, i.e. if the average steady state

current is smaller than the calculated peak to peak current ripple, the model is not valid.

We now linearize around the operating point:

d = D + d (6.5)

x = X + x (6.6)

D and X are the nominal value of d and x respectively. d and x are the small-time

components of d and x around the nominal value. For the analysis, the input vector u

will be assumed to be constant: u = U.

131

Page 149: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

˙x =∂ f∂x x +

∂ f∂d d = Ad x + Bdd

iout =∂g∂x x +

∂g∂d d = Cd x

(6.7)

with: Ad = AonD + Ao f f (1 − D)

Bd = (Aon − Ao f f )X + (Bon − Bo f f )U = (Aon − Ao f f ) ·

VC1,steady

IL,steady

VC2,steady

+ (Bon − Bo f f ) ·

E1

Eo

VD

Cd =

[0 rc2

Ro+rc2

1Ro+rc2

]

From (6.7) we obtain a transfer function relating the changes in the output current

˜iout to the changes in duty cycle d for any set of E1, I1 and R1. The system is a third order

transfer function with two zeros.

In the later sections we will compute the transfer functions for the range of operation

of the solar panels.

Figure 6.16: Model of the boost converter.

132

Page 150: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

Boost The Boost model is shown in Fig. 6.16 and expressed by the following

equations:

x = f (x, u, d) = A(d)x + B(d)u

iout = g(x, d) = C(d)x(6.8)

with:

A = d · Aon + (1 − d) · Ao f f

and B = d · Bon + (1 − d) · Bo f f

x =

vC1

iL

vC2

and u =

e1

eo

vD

and:

Aon =

−1C1(R1+rc1)

−R1C1(R1+rc1) 0

R1L(R1+rc1)

1L (−rc1R1

R1+rc1− rL − rd son) 0

0 0 −1C2(Ro+rc2)

Ao f f =

−1C1(R1+rc1)

−R1C1(R1+rc1) 0

R1L(R1+rc1)

1L (−rc1R1

R1+rc1− rL − rc2Ro

rc2+Ro) −Ro

L(Ro+rc2)

0 RoRo+rc2

−1C2(Ro+rc2)

Bon =

1C1(R1+rc1) 0 0

rc1L(R1+rc1) 0 0

0 1C2(Ro+rc2) 0

133

Page 151: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

Bo f f =

1C1(R1+rc1) 0 0

rc1L(R1+rc1)

−rc2L(Ro+rc2) − 1

L

0 1C2(Ro+rc2) 0

C =

[0 rc2

Ro+rc2(1 − d) 1

Ro+rc2

]

We now linearize around the operating point:

˙x =∂ f∂x x +

∂ f∂d d

iout =∂g∂x x +

∂g∂d d

(6.9)

˙x = Ad x + Bdd

˜iout = Cd x + Ddd(6.10)

with:

Bd = (Aon − Ao f f ) ·

VC1,steady

IL,steady

VC2,steady

+ (Bon − Bo f f ) ·

E1

Eo

VD

Ad = AonD + Ao f f (1 − D)

Cd =

[0 rc2

Ro+rc2(1 − D) 1

Ro+rc2

]

Dd = −[0 rc2

Ro+rc20]

IL,steady

VC1,steady

VC2,steady

134

Page 152: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

Using the same linearization method as for the Buck mode, we obtain the transfer

function for the Boost. We then use Matlab to plot and analyze the response for all the

input scenarios: various input voltages, various operating currents and different equiv-

alent resistances at each of the points to model all different possible solar panels. We

opt for an integral compensator for each loop. We then making sure that the gain of

the controller leads to the phase margin being kept higher than a minimum value in the

worst case (30°).

Remark: Because of the type of input, we cannot guarantee a minimum response

time. For example, a solar panel operating close to the Maximum Power Point will

have a duty cycle-to-output current gain that will tend to zero because it is near the

point where the power cannot be increased. Hence the response time of any classical

controller will tend to infinity. However, we can design the converter to achieve stability

for any input characteristic and any choice of current reference, as long as the current

reference is reachable by the system, ie the solar panel can deliver the required power.

The controller is digital. Therefore, the converter’s transfer functions is converted

from Laplace domain into a Z domain transfer function form using Matlab (after nu-

merical calculation of the operating point average model). The tuning of the controller

is then performed to achieve stability and fastest possible response for the worst case

model(the one having the lowest phase margin). Once a candidate controller is chosen,

we verify that it will be stable in any input configuration and operating point with the

condition that the operating voltage is higher than the voltage at Maximum Power Point

for the given configuration.

Fig. 6.17 and 6.18 show the frequency response of the converter for different operat-

135

Page 153: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

ing points (varying the input voltage and current) for the buck mode and the boost mode,

respectively. Fig. 6.14 shows the possible input voltage and current at which the con-

verter can be operating. Additionally, if the solar panel is modeled as an voltage source

in series with a resistor, the resistor can vary depending on the solar panel’s characteris-

tic and point of operation. We therefore compute the transfer functions using these three

parameters (input voltage, input current and source resistance) as variables. One issue in

designing the controller comes from the characteristic of the solar panel. When the oper-

ating point of the solar panels approaches the Maximum Power Point of the solar panel,

the dynamic resistance increases and the response time of the controller will increase

and tend to infinite as the operating points reaches the Maximum Power Point. There-

fore, it is impossible to design a classic controller with a guaranteed convergence time

for all the possible inputs. Although it would have been possible and desirable to design

a different controller for the Boost and the Buck mode, we used a single controller for all

the range of operation due to design time limitations. Calculating the transfer function

characteristic has shown that the most oscillatory response happens when the equivalent

source resistance R1 is zero. Finally, the controller’s gain is adjusted to be 80, ensuring

a phase margin higher than 30°for the worst case.

136

Page 154: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

Bode Diagram

Frequency (rad/sec)

Pha

se (

deg)

Mag

nitu

de (

dB)

−20

0

20

40

60

80

101

102

103

104

−180

−135

−90

increasing Vpv

Figure 6.17: Current loop gain diagram of the digitized system and transfer func-

tion for the Buck model for different operating points (sampling time is

200µs). Worst case is 35V input voltage.

137

Page 155: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

Bode Diagram

Frequency (rad/sec)

Pha

se (

deg)

Mag

nitu

de (

dB)

−20

−10

0

10

20

30

40

50

60

101

102

103

104

−180

−135

−90

Figure 6.18: Current loop gain diagram of the digitized system and transfer function

for the Boost model (sampling time is 200µs).

The combined gain of the current amplifier on the board and A/D converter inside

the microcontroller is 51.2 (gain of 1V for 1A for the amplifier and a full range of 256

for a maximum input voltage of 5V for the A/D converter). The gain of the duty cycle

generator is 11632 (the maximum value of the duty cycle is 0h660 per converter or 1632).

Therefore, the initial gain of the loop is 51.21632 = 0.0314 or 156 × 200 · 10−6 In order

to achieve the desired gain, we will have to divide the error signal by approximately 2.

This is done by a binary right shifting of the error register. Although the proper func-

tion is achieved, there is a loss of resolution associated with the loss of the information

on the LSB (least significant bit). This is inevitable due to the resolution of the PWM

generator (the initial gain is inversely proportional with the resolution of the PWM gen-

138

Page 156: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

erator). Another solution to reduce the initial gain of the controller without affecting the

resolution of the calculations would be to reduce the gain of the current sensor.

Bode Diagram

Frequency (rad/sec)

Pha

se (

deg)

Mag

nitu

de (

dB)

−15

−10

−5

0

5

10

102

103

104

−180

−135

−90

−45

0

Figure 6.19: Closed loop transfer function of the digitized system and transfer func-

tion for the Buck model (sampling time is 200µs).

Fig. 6.19 shows the closed loop Bode plot of the converter+controller with a battery

a output and for various operating points of the solar panel.

139

Page 157: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

Bode Diagram

Frequency (rad/sec)

Pha

se (

deg)

Mag

nitu

de (

dB)

−20

−15

−10

−5

0

5

101

102

103

104

−180

−135

−90

−45

0

Figure 6.20: Closed loop transfer function of the digitized system and transfer func-

tion for the Boost model (sampling time is 200µs).

Fig. 6.20 shows the closed loop Bode plot of the converter+controller with a battery

a output and for various operating points of the solar panel.

140

Page 158: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

Time (sec)

Am

plitu

de

0 0.001 0.002 0.003 0.004 0.005 0.006 0.007 0.008 0.009 0.010

0.2

0.4

0.6

0.8

1

1.2

1.4

1.6

1.8Buck Boost

Figure 6.21: Response of the Buck and Boost systems to a step in the current refer-

ence. The plot show the most oscillatory response for each converter

mode. Parameters for the Boost: E1 = 8V,R1 = 0Ω, I1 = 7A, Eo =

16.5V,Ro = 0.2Ω. Parameters for the Buck;E1 = 36V,R1 = 0Ω, I1 =

3A, Eo = 12V,Ro = 0.2Ω

Fig. 6.21 shows the simulated most oscillatory response for the Buck and the Boost

converter. Although the system is stable, the overshoot is quite large and undesirable.

One option to solve this issue is to reduce the gain, but as stated previously, this will

cause unwanted loss in precision due to the low bound on the possible gains. We add

bounds on the variation of the duty cycle per sample (rate limiter). Additionally, a dead

zone is added on the error to reduce the possibility of limit cycling due to quantization

effects, which has the dual effect of improving the dynamic response of the system as

141

Page 159: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

well as increasing the steady state error between the output current and the reference. A

dead zone means that any error smaller than the dead zone value will be seen as zero.

The dead zone is set between ”-3” and ”+3” in the microcontroller which means that the

steady state error will be less than 69mA.

Figure 6.22: Simulink modelization of the DC/DC converter and controller.

The converter with the digital controller is simulated with Simulink. The diagram is

shown in Fig.6.22. The dead zone is modeled as well as the limit on the variation of the

duty cycle (modeled here as a saturation block on the error). The quantization effect for

the A/D converter as well as for the PWM generator is also modeled.

142

Page 160: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

0 0.001 0.002 0.003 0.004 0.005 0.006 0.007 0.008 0.009 0.010

0.2

0.4

0.6

0.8

1

1.2

1.4

time (s)

delta

Iout

(A

)

Figure 6.23: Simulation of the system’s response to a step in the current reference,

E1 = 20V,R1 = 0Ω.

143

Page 161: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

Figure 6.24: Experimental test of the response of the system to a step in the current

reference, the waveform is taken at the output of the current sensor

(1V ⇔ 1A), E1 = 20V,R1 = 0Ω.

Fig. 6.23 shows an example of the expected response of the system to a step in the

current reference and fig. 6.24 shows the experimental measurement of a reference step

for the same conditions. The experiment shows that the model is accurate and that the

converter and feedback loop perform according to the design. Fig. 6.25, Fig. 6.26, Fig.

6.27 and Fig. 6.28 show the same test for different input conditions. In each case, the

real system performs according to the simulation, showing the good performance of our

model.

144

Page 162: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

0 1 2 3 4 5−0.1

−0.05

0

0.05

0.1

0.15

0.2

0.25

0.3

0.35

0.4

time (ms)

I(A

)

Figure 6.25: Simulation of the system’s response to a step in the current reference,

E1 = 20V,R1 = 2.5Ω, I1 = 1.1A.

145

Page 163: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

Figure 6.26: Experimental test of the response of the system to a step in the current

reference, the waveform is taken at the output of the current sensor

(1V ⇔ 1A), E1 = 20V,R1 = 2.5Ω, I1 = 1.1A.

146

Page 164: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

0 0.001 0.002 0.003 0.004 0.005 0.006 0.007 0.008 0.009 0.01−0.1

0

0.1

0.2

0.3

0.4

time(s)

I(A

)

Figure 6.27: Simulation of the system’s response to a step in the current reference,

E1 = 20V,R1 = 5Ω, I1 = 1A.

147

Page 165: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

Figure 6.28: Experimental test of the response of the system to a step in the current

reference, the waveform is taken at the output of the current sensor

(1V ⇔ 1A), E1 = 20V,R1 = 5Ω, I1 = 1A.

Bypass connection for MPPT

As stated previously, if the DC/DC converter operates in Buck mode with a duty

cycle of 100%, the converter becomes practically a bypass switch and the only losses in

the system are due to the ON resistance of the power FETs and the inductor. There is no

switching loss and no diode forward voltage loss and this is therefore the most efficient

operation point of the converter. If the maximum power point of the solar panel matches

the voltage of the battery under charge, it is possible and preferable to run the charger

in that mode. However, because the controller controls the reference voltage and not the

duty cycles directly, that specific configuration of the switches cannot be guaranteed to

148

Page 166: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

be one of the steady states during the scan for the Maximum Power Point.

In order to allow the converter to operate in this mode, we propose the algorithm

shown in Fig. 6.29.

Figure 6.29: Proposed algorithm to alternate between direct connection and MPPT.

Following this algorithm, the system routinely performs a scan of the input volt-

age to locate the Maximum Power Point using the DC/DC converter. If the voltage at

Maximum Power Point is close to the output voltage (the voltage of the battery), the

controllers turns OFF the DC/DC converters and turns ON Q1 and Qb on Fig. 6.3. Oth-

erwise, the system enables the DC/DC converters and the recorded voltage at maximum

power point is used as the reference for the control.

149

Page 167: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

6.3 Conclusion

In this chapter, we have shown the design and construction of a prototype designed to

recharge military NiMH and Li-ion batteries with portable solar panels. The prototype

uses the results from the research described in the previous chapters, in particular:

• Differential temperature algorithm for full SOC detection for the NiMH chemistry.

• Li-ion algorithm not affected by input current swings.

• MPPT using input voltage control of the converter.

• Full digital control of the converter with 3bit dithering.

150

Page 168: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

Chapter 7

Multi panel Maximum Power Point

Tracking

The previous chapter discussed different implementation of Maximum Power Point

Tracking algorithms and improvement to these algorithms for the classical operation

of a single solar panel operation.

The purpose of this chapter is to discuss how to parallel these solar panels together

with a low cost, small size Maximum Power Point Tracker (MPPT). Often (particularly

in U.S. military applications) the portable, foldable and flexible solar panels are sewn

together to form a tent or are simply connected in parallel directly to a NiMH battery

for faster charge. Because of the diversity of the solar panel industry, different modules

with different characteristic and technology can co-exist on an application. For example,

in the U.S. Army, soldiers have a wide variety of solar panel power manufacturers to

choose from. However, this leads to fundamental research questions that have yet to

151

Page 169: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

be examined, such as: Can a small (portable), low cost MPPT circuit be used extract

maximum power from the multiple arrays? If so, how many sensors, microprocessors,

and power converters are required? Do the solar panels have to be the same size, type or

have similar output power? Etc. We focus on the development of a MPPT that has only

one single current sensor and one microprocessor, and thus is lower in cost and size than

if each solar panel were to have their own dedicated MPPT, as in [65].

In addition, the reduction of the sensing circuitry to a single output current sen-

sor allows new topologies to be considered for the task of performing multiple MPPT.

Because MPPT can be performed using the common output current, the need for one

individual output current branch for each solar panel is not necessary (such as in the

case of several converters connected in parallel) and a single inductor topology becomes

possible. Because precision measurement of the input voltage and current is not neces-

sary in this algorithm, topologies with floating inputs can easily be implemented. In this

chapter, we will propose a topology that takes advantage of these possibilities and can

operate with a single inductor and a simple switching scheme for easy implementation.

The contributions of this chapter are summarized as follow:

• New dynamic power point tracking algorithms are presented for the proposed sin-

gle sensor ”interleaved” architecture. Two approaches are discussed in this chap-

ter. First, a simple ` interleaved´ approach is described, which is more suitable for

paralleled solar panels with similar output power capabilities. Second, a ` steepest

ascent´ MPPT is proposed that uses gradient ascent algorithms to update to the

MPPT quicker. This has particular advantages when one solar panel is able to

produce more power than other panels.

152

Page 170: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

• Experimental, simulation and theoretical results are presented which support that

the proposed MPPT system is suitable for these types of applications. Compar-

isons are made between the interleaving of sensors and traditional MPPT with

individual dedicated sensors. Both approach reach the same final operating point.

The interleaved approach has reduced sensor cost, but with the drawback of slower

algorithm convergence.

• A single inductor topology for multiple input systems developed in [66] is used

that takes advantage of the aforementioned MPPT method to reduce size and cost

of the converter. The proposed architecture offers advantages in terms of reduced

cost, development time with its single inductor design and the fact that it can

operate with unsynchronized PWM control inputs

7.1 The Classic Perturb and Observe Method

This section will introduce the Perturb&Observe method as it was already done in Chap-

ter 2. The Perturb and Observe algorithm is a dynamic method that seeks the Maximum

Power Point of the solar panel and keep the panel operating around it [3, 41–44].

Perturb & Observe algorithms work by modifying the solar panel’s output voltage

and observing the result on the output power. If the power is increased due to the per-

turbation, then the algorithm keeps perturbing the voltage in the same direction until the

power begins to decrease. If the power decreases due to the perturbation, the algorithm

reverses the direction of the perturbation.

153

Page 171: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

Figure 7.1: The Perturb & Observe algorithm.

The algorithm is shown in Fig. 7.1. Assuming a PWM control of the switches, D(n)

is the duty cycle of the DC/DC converter at the sample n. α(n) is the direction of the

perturbation at the sample n. Its value is either +1 or -1. PPV(n) is the output power of

the solar panel at the sample n.

154

Page 172: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

7.2 Single Sensor, Multiple Panel MPPT Algorithms

Figure 7.2: Traditionnal Multiple array Maximum Power Point Tracking method:

The voltage and current is sensed at the output of each photovoltaic pan-

els.

The common approach to operate multiple solar panels in parallel at their MPP is to

build a dedicated tracking and sensing circuitry for each solar panel which require a

couple of sensor for each array: an input voltage sensor and an input current sensor(Fig.

7.2) [36,65,67–70]. This is an excellent approach for high power PV systems, but takes

up board space and increases cost for the portable applications described above.

155

Page 173: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

Figure 7.3: Proposed Multiple array Maximum Power Point Tracking method: only

the load current is sensed to achieve Maximum Power Point Tracking.

In this research we propose a new MPPT design with only a single current sensor

required as shown in Fig. 7.3. The converters used with the algorithm can be of many

different type, such as the boost converter design in [71],converters proposed in [37,72–

74] a system of boost or buck converter with ORing diodes, as done in the first part of

this chapter with a multiple boost configuration or the converter proposed in the next

section. Only the load current is sensed. For a single solar panel, [45,75] shows that the

load current is (in most cases) enough to track the maximum power point of one solar

panel. It is now proposed that MPPT can be achieved for multiple solar panels using

only the sensed load current. Depending on the controller’s technology, this can result

in much smaller circuitry. Many FPGAs, for instance, do not possess A/D conversion

156

Page 174: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

circuitry. Each line of analog information therefore needs extra circuitry to convert it to

digital. In addition, sensing circuitry is necessary for each sensed data which can greatly

increase the cost [52].

Methods exist that achieve Maximum Power Point Tracking using only the open

circuit voltage of the solar panel [33] as discussed in Chapter 2. However, this method

depends on the solar panel temperature [35] and mainly technology. In the case of a

portable system that can be connected to various types of existing commercial solar

panels, that method is not valid.

In order to achieve MPPT with only one load sensor, we introduce the idea of an

interleaving MPPT algorithm. In this algorithm, the operating point of each input will be

modified by perturbing each converter’s duty ratio turn-by-turn. This will be explained

in detail in the following section. Clearly, the idea of interleaving that we introduce is

different to the concept of interleaving the switching of DC/DC converter to reduce the

output current ripple. Here we are taking turns using a single sensor for adjustment of

each of the separate duty ratios of the individual converters.

We also analyze the dynamics of the controller and the tradeoffs compared to a more

classical method that controls each solar panel by sensing their respective output power.

157

Page 175: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

7.2.1 Interleaving MPPT Algorithm

Figure 7.4: Interleaved MPPT algorithm. The duty cycle of each converter is per-

turbed turn by turn. As a result of a perturbation of one converter the

next duty cycle for that converter is calculated and stored. Then, the

stored duty cycle of the next converter is applied and the process contin-

ues. The algorithm cycles that way through all the converters. (step=1

at initialization, N is the number of PV panels.)

The basic proposed MPPT algorithm is presented in Fig. 7.4. It consists of an inter-

leaved Perturb&Observe scheme: The duty ratio of one converter (Duty( j) where j is

the converter’s number) is perturbed and the steady state load current (Iout) sensed and

stored. The duty cycle of the next converter is then perturbed; the load current is again

sensed, and so on. In this way, if there are N solar arrays, then it takes N perturbations

158

Page 176: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

before a cycle is complete and individual converter’s duty ratio is perturbed again. The

direction of the duty ratio perturbation, step(j), equal to 1 or -1, depends on whether its

previous perturbation (from the last cycle) increased (if Iout is larger than Iold) decreased

the load’s output current. If it increased the load current, then the perturbation is kept

in the same direction. Otherwise, the duty ratio is adjusted in the opposite direction

(step( j) is negated). Once the new duty cycle for the j th input has been computed, it

is not directly updated but stored in Duty s( j) and will be applied in the next round of

perturbation.

The converter is operating in open loop when executing the algorithm: the duty cycle

is changed by increments every time step. No adjustment is made between the steps in

order to account for perturbations. This is commonly done in MPPT and while this is

not always desirable (see our discussion in Chapter 5), it is not the focus of this research

to address that specific issue in the proposed algorithms presented in this chapter.

159

Page 177: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

Figure 7.5: Experimental three inputs Maximum Power Point Tracker.

To test the algorithm, the circuit of Fig. 7.5 is used. It consists of a parallel output

connection of boost type DC/DC converters. Each converter is connected to a solar

panel. There is no restriction for the solar panels to be matched. Each switching cell

(transistor + diode) can be controlled independently without the need for interleaving

the commutation of the switches, thanks to the output diode on each converter which

block any current to flow from one converter into another. Therefore, the switches can

be turned ON and OFF at different and overlapping duty ratios. Rs is the current sensing

resistor used in the MPPT algorithm. The behavior of the converter and the algorithms

are first simulated and then tested experimentally.

Remark: While the inductor current do not need to be interleaved, it is usually the

160

Page 178: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

preferred method used in a system of parallel converters in order to achieve lower output

current ripple [76]. However, this is beyond the scope of this research.

0 500 1000 15000

2

4

6

Cur

rent

(A

)

PV 1PV 2PV 3Output

0 500 1000 15000

20

40

60

80

P.V

. Pow

er P

rodu

ced

(W)

0 500 1000 15000.2

0.4

0.6

0.8

time step

Dut

y C

ycle

Figure 7.6: Simulation of the algorithm for a three input boost converter.

Simulations in Matlab (see Fig. 7.6) have been carried out to test the feasibility of a

multi-input DC/DC converter designed to achieve simultaneous MPPT of several solar

panels (with different characteristics) with a Perturb & Observe algorithm and using a

single current sensing component. The simulation is achieved using a Newton-Raphson

algorithm that calculates the steady state of the system (converter, load and solar panels)

for a given set of source and load and for a given set of duty cycles.

161

Page 179: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

The equations of each solar panel are given by:

I j = Il − I0[eqViAkT − 1] = f j(V j) (7.1)

where I j and V j are the output current and voltage of the jth solar panel. k is the Boltz-

mann constant, q is the electron charge, T is the temperature in Kelvin, A is a dimension-

less factor, Il is the light generated current and Io is the dark saturation current (although

the subscript j hasn’t been added to Il., Io and A, they are different for each solar panels.)

In the case of boost converters and assuming continuous conduction mode on all

converters (Iout = (1 − D) Iin for all converters), the steady equations become the fol-

lowing:

I j = f j(V j) (7.2)

V j

1 − D j= Vout (7.3)

Iload =∑

(1 − D j) I j (7.4)

These equations form the system that need to be solved in order to fully characterize

the steady state of the circuit. D j is the duty cycle of the jth converter and the load is

modeled as a voltage source in series with a resistance:

Vout = Eload + Iload Rout (7.5)

162

Page 180: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

0 5 10 15 20 25 300

0.5

1

1.5

2

2.5

3

3.5

4

Voltage (V)

Cur

rent

(A

)

Figure 7.7: Characteristic of the solar panels used in the simulation. A shade can be

simulated by using a different characteristic for the solar panel (lower

curve instead of the higher).

The I-V curve of the solar panels modeled in our simulation is shown in Fig. 7.7.

The figure shows two I-V curves for the same simulated solar panel, but the lower cur-

rent curve is shaded. The models in the Annexe that are simulated represent a typical

solar panel (75 Watts) that is designed to have MPP at around 24V in full sun illumi-

nation. During the simulation, shade is simulated over the solar panel by changing the

characteristic of the solar panel from the higher current curve to the lowest.

The Matlab scripts for the simulation are provided in Annexe.

Fig. 7.6 shows that the system converges to the maximum power point of all three

solar panels. Initially, all three solar panels are of same characteristic. The duty cycle

163

Page 181: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

for each converter increases until the Maximum Power Point is reached. The duty cycles

then oscillate around the value that keep the solar panels operating at their Maximum

Power Point. A sudden drop in light intensity is simulated on one of the solar panel at the

500’th step. This, in effect, makes the solar panel different from the other ones (different

I versus V characteristic). When that happens, the power output by the shaded solar

panel decreases sharply. Additionally, there is a net drop in the power produced by the

other solar panels. This is due to the fact that lower power transmitted results in a lower

voltage at the output of the converter. This will affect the current transfer of all the other

converters for a set duty cycle. Therefore, the other panels’s operating points are also

affected and moved away from the Maximum Power Points. It is shown that the system

is able to recover by changing the duty cycles and keep all the panels operating at MPP

as it can be seen that the two non shaded simulated solar panel recover their full power

production level. The initial light condition is restored around the thousandth simulation

step and the algorithm is once again capable of adjusting the duty cycles properly and

achieve MPPT.

In each situation, the system was able to reach the global maximum power point of

the system (set of duty cycles that allow each solar panel to operate at its individual Max-

imum Power Point). The advantage of such method would be: reduced current sensing

circuitry and reduced current sensing A/D conversion lines which leads to reduced board

size and cost.

164

Page 182: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

Figure 7.8: Comparison between the standard P&O implementation and the pro-

posed algorithm. Top curves: load current. Bottom curves: output cur-

rent of each converter. The current for the proposed method is shown in

dark.

A disadvantage of the proposed method is also highlighted in Fig. 7.8. The figure

shows the evolution of the proposed interleaving algorithm with simulated solar pan-

els. At the simulation steps 500, 900 and 1200, the simulated light intensity is modified

resulting in a modification of the Maximum Power Point position and a change in the

output current. The algorithm keeps adjusting the duty cycle of the simulated converter

to track the Maximum Power Point. The figure also shows the evolution of the simula-

tion using a conventional Perturb&Observe method on each solar panels (no interleaving

and information taken using each solar panels’ output currents and voltages with sepa-

165

Page 183: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

rate sensors). As expected, the proposed interleaving method has a slower response time

due to the fact that the current sensor’s information is shared by all the converters, which

slows the execution of the algorithm for each converter and solar panel.

7.2.2 Gradient Ascent Interleaved Algorithm

An improved version of the MPPT algorithm is also presented in Fig. 7.9. Here, the

basic concept to perturb individual duty ratios and measure the effect in an interleaved

method remains the same. However, in this case, the next converter to perturb in chosen

using a steepest gradient climbing estimation based on the previous perturbations:

∇I =∆I1

∆D1

−→d1 +

∆I2

∆D2

−→d2 +

∆I3

∆D3

−→d3 (7.6)

166

Page 184: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

Figure 7.9: Interleaved gradient ascent algorithm.

The degrees or freedom (or axes) are the duty cycles (N directions in which the

system can be moved where N is the number of solar panels in the system). ∆I j is the

latest variation of the output current resulting from a perturbation on the jth converter,

step j ∆D is the perturbation step of the duty cycle of the jth converter (∆D is usually

a fixed value). Duty( j) is the duty cycle of the jth converter and Duty s( j) is the stored

duty cycle for the jth converter that will be applied the next time that Perturb&Observe

is performed on that converter.

167

Page 185: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

In order to favor the evolution of the duty cycle of the most influential converter (the

one for which a variation in the duty cycle will result in the highest elevation of power

on the load), each cycle is composed of a number of steps (arbitrarily chosen here to be

2N where N is the number of inputs). The number of steps in each axis is then optimized

using the following formula:

N S ( j) = round(|∆I j|‖∇I‖1 2N) (7.7)

N S is a vector of N elements and contains the information about the amount of time

that a Perturb and Observe operation need to be executed for each panel. N S ( j) is the

amount of time the Perturb and Observe sequence must be executed for the jth solar panel

in one cycle. The values of N S are calculated following the previous formula after the

gradient of the power of the solar panels is estimated. The result is that the algorithm

will more often perturb and observe the solar panel for which an increment of the duty

cycle resulted in a larger power increase. After the cycle is completed, the gradient will

be calculated again using the past values of the current stored in the memory.

In the algorithm of Fig. 7.9, cyc count is a value that is initialized at 2N, which is the

maximum amount of time, Perturb and Observe can be executed for one solar panel in

one cycle according to our definition of the content of the vector N S . As the algorithm

cycles through the index j of the input solar panel, a check is made to see if the content

of N S ( j) is higher than the value of cyc count (if N S ( j) > cyc count). If it is the case,

a Perturb&Observe sequence will be programmed for the solar panel. If not, then, the

168

Page 186: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

algorithm will check the content of N S ( j + 1) until all solar panels have been checked.

The value of cyc count is reduced by one and the value of j set back to 1. This goes on

until cyc count = 0. When that happens, the gradient is estimated again, the vector N S

is updated using the formula 7.7 and cyc count reset to 2N. In summary, the goal of this

part of the algorithm is to make sure that each solar panel is perturbed as often as set by

7.7.

One additional step in each axis can be added to enhance the estimation of the gradi-

ent at the end of each 2N steps. This ensures that the calculation of the gradient is done

using the most recent data.

The first proposed interleaved algorithm with one current sensor converges to the

global Maximum Power Point (MPP) of the system N times slower than the P&O algo-

rithm with N sensors. That is because the current sensor is shared by each converter in

the system. The gradient climbing algorithm can reach the MPP in a smaller number of

steps than the basic algorithm and the transient power produced will always be higher

than the interleaved algorithm. This is because the algorithm follows the highest power

increase path to the global MPP.

169

Page 187: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

Figure 7.10: Comparison of convergence speed for the classical Perturb and Ob-

serve algorithm, the proposed interleaved algorithm and the proposed

modified interleaved gradient ascent algorithm.

170

Page 188: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

Figure 7.11: Comparison of convergence speed for the classical Perturb and Ob-

serve algorithm, the proposed interleaved algorithm and the proposed

modified interleaved gradient ascent algorithm.

Improvement in the convergence is shown in Fig. 7.10 and Fig. 7.11. The figure

shows the current output of a simulated system with two solar panels. Steps in the

simulated light intensity are added. The system is simulated for the classical three panel

Perturb& Observe method, the basic proposed interleaved algorithm and the proposed

gradient ascent interleaved algorithm. As expected, the algorithm shown in Fig. 7.6

performs N times slower, where N is the number of solar panel in the system (in this

case N=2), than when each array runs its own individual, stand alone P&O algorithm.

The modified algorithm in Fig. 7.9 helps reducing the convergence time to the Maximum

171

Page 189: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

Power Point of the system.

Remark: If the solar panels have the same I/V characteristic (same technology, same

illumination, etc...), the gradient algorithm will perform the same as the first newly pro-

posed algorithm presented previously.

Figure 7.12: Trajectories of the proposed gradient climbing interleaved algorithm

and the original proposed algorithm for a two input system.

Fig. 7.12 shows the map of the output power for changing set of duty cycles in a dual

PV array system calculated by solving the previous equations (calculated for a two input

system.) On top of the map, the simulated excursion path of the proposed interleaved

algorithm is shown as well as the original basic interleaved algorithm. Fig. 7.13 shows

the path of each duty cycle in the time domain. The proposed basic interleaved algorithm

172

Page 190: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

is shown on the top plot while the proposed gradient ascent algorithm is shown on the

bottom plot. It shows how the algorithm reaches the Maximum Power Point faster than

the basic one.

Figure 7.13: Evolution of the duty cycles for both algorithm for a two input system.

Top: basic interleaved algorithm. Bottom: gradient ascent interleaved

algorithm.

Some experimental results have been obtained using a dual input boost converter.

The circuit is the same as Fig. 7.5 with the difference that only two Boost converters

are paralleled. The input capacitors C1 and C2 are 10µF each. The output capacitor is a

100µF. The results are shown in Fig. 7.14 and Fig. 7.15. Fig. 7.14 shows the evolution

of the algorithm and the oscillation around the Maximum Power Point of the system.

173

Page 191: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

Fig. 7.15 compares the experimental response time of the two proposed algorithms.

Figure 7.14: Output current and duty cycle variation for the gradient ascent algo-

rithm in an experimental dual input boost MPPT system.

Fig. 7.14 shows the evolution of the proposed gradient ascent algorithm. It shows

how the algorithm performs perturb and observe more often on the larger solar panel

between t=0 and t=0.8s as the power gain is measured as higher after the estimation of

the gradient. Between t=0.8s and t=1.7s, as the larger solar panel reaches Maximum

Power Point, the effect of changes in the duty cycle on the output power reduces and the

algorithm gives more time to other smaller solar panel to reach its own Maximum Power

Point. When the smaller solar panel gets close to its Maximum Power Point operation,

174

Page 192: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

the larger solar panel takes priority again in the algorithm after t=1.7s.

This experiment shows how the algorithm favors a specific solar panel when it sets

the sequence of the Perturb & Observe.

Figure 7.15: Experimental results showing the response time of the basic interleaved

and gradient ascent interleaved MPPT algorithms.

Improvement in the convergence is shown in the simulation in Fig. 7.15. Both the

proposed interleaved algorithm and the gradient climbing interleaved algorithms are ex-

perimented with the same set of solar panels. The proposed gradient climbing algorithm

is shown to converge to the global Maximum Power Point sooner.

175

Page 193: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

7.3 Proposed MPPT System Architecture

Figure 7.16: Proposed Maximum Power Point Tracking architecture for multiple so-

lar panels. Three solar panels are illustrated but the topology extends

to arbitrary N inputs.

In the previous section, we introduced algorithms designed to track the Maximum Power

Points of several solar panel using a single sensor. The advantage of these algorithm is

the fact that only the output current needs to be sensed reducing board space and cost.

We believe that these facts make the proposed algorithm useful for low power solar

applications despite the drawback of lower tracking speed.

In this section, we propose a new architecture to improve the design of Maximum

Power Point Tracking systems for multiple solar panels. It is specially designed to be

176

Page 194: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

used with the algorithm designed in this chapter and is made attractive due to the re-

duction in the sensing circuitry needed for MPPT that our proposed algorithm offers.

Because of that reduction, it is no longer necessary to keep the output current of each

energy conversion circuit separated. Therefore topologies with single inductor where

the energy is delivered in a single output branch are made available. The architecture

is presented in Fig. 7.16 for a three solar panel system, but the topology extends to

arbitrary N inputs. The advantages of this configuration are:

• A single inductor is required for all the input which makes design simpler and

reduces board space.

• Only one current sensor is needed for current mode control or protection of the

circuit when using synchronous rectification.

• The duty cycle of each switching cell operated in PWM mode can be selected

independently and do not need to be synchronized (two inputs can conduct at the

same time) [66].

• Voltage stress on each switch is the same compared to separate buck converters.

Multiple-input converter topologies have been widely proposed. In this research

we look at topologies to draw out the benefits in the case where the inputs are solar

arrays operating with a MPPT algorithm. A Single inductor multiple input buck-boost

converter has been proposed [72]. In [74], the inputs of a buck converter are paralleled

and connected to a single inductor which reduces the part count. Because the inputs can

be of different voltages, the control circuit must be designed in a way that no switch

177

Page 195: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

is turned ON at the same time [77]. A double input converter with a single inductor

is proposed in [73]. It consists of a topology that combines step up and step down

function where one input has a higher voltage than the output and another one that

has a lower voltage than the output. A topology involving the series connection of

flyback converters has also been shown [78]. It involves the series connection of the

output flyback transformers and can operate with various non synchronized duty cycle

but still requires one magnetic component (transformer) per input. Numerous interesting

topologies have also been presented [79–83] that have multiple inputs.

In [66], a variety of topologies are derived from a systematic design theory. These

converters offer some interesting features, in particular, the fact that they do not require

synchronization of the duty cycle. We have retained one of the topology proposed in [66]

and shown in Fig. 7.16 as an interesting topology for our multiple solar panels Maxi-

mum Power Point Tracking architecture. Unlike the multiple buck boost of [72], the

proposed converter does not require synchronization of the duty cycle. The need for

duty cycle synchronization could make the implementation of the control more compli-

cated in some cases as microcontrollers usually do not support this function (they have

PWM outputs that are all synchronized on their rising or falling edges and therefore can-

not create the required switching pattern). However floating channels and higher current

stress in the switches of our proposed converter drawbacks of our chosen topology. Fi-

nally, proposed [66] converter offers a beneficial cost effective solution to low power

MPPT circuits compared to use of multiple flyback topologies [78, 81].

178

Page 196: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

7.3.1 Operation

Figure 7.17: Timing of the proposed multiple three input converter. This figure shows

one example of timing.

The circuit diagram is shown, along with the flow of the current for each operational

states, in Fig. 7.17. The three inputs of the circuit are not hierarchized, the diagrams in

Fig. 7.17 represent only one example of possible sequence: cell ¨2¨switches first, then

cell ¨3¨, then cell¨1¨. All the other combinations are possible.

179

Page 197: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

For the example shown in Fig. 7.17 the timing is as follows :

1. Q11,Q21,Q31 are switched ON, Q12,Q22,Q32 are OFF. The current flows through

all the solar panels. The configuration is equivalent with a buck converter with in-

put voltage V1 + V2 + V3. Therefore the inductor voltage is V1 + V2 + V3 − Vo.

2. Q11,Q22,Q31 are ON, Q12,Q21,Q32 are OFF. The current flows through solar

panels 1 and 3 and bypasses solar panel 2. The voltage on the input side of the

inductor is V1 + V3, and therefore, the voltage across the inductor is equal to V1 +

V3 − Vo.

3. Q11,Q22,Q32 are ON, Q12,Q21,Q31 are OFF. The current flows through solar

panel 1 and bypasses the others. The voltage across the inductor is now V1 − Vo.

4. Q12,Q22,Q32 are ON, Q11,Q21,Q31 are OFF. All solar panels are bypassed and

the inductor discharges into the load. The inductor voltage is equal to −Vo (all the

stages are bypassed).

If the input capacitors are large enough, the voltage at each input can be considered

constant during one cycle. The duty cycle of each cells do not need to be synchronized

in any way. The input capacitors C1,C2 and C3 allow high current response and are

recharged each time the associated solar panel is bypassed.

180

Page 198: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

Figure 7.18: Inductor current (top) and inductor voltage (bottom) in the three input

converter operating in CCM.

The steady state input to output relationship can be found using the fact that the

inductor has a zero voltage average. Fig. 7.18 shows the current and voltage across the

inductor for CCM operation. Ideal switch and energy storage components are assumed

(no losses in the switches, the inductor or the capacitors).

The following relationship exists in CCM:

181

Page 199: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

V1 D1 + V2 D2 + V3 D3 = Vout (7.8)

V1,V2,V3 are the voltage at the three inputs of the converter, or, in other words the

voltage of the solar panels. D1,D2,D3 are the duty cycles of the three switching cells of

the converters. Vout is the output voltage.

The ripple in the inductor current for the converter operating in CCM is found with

the following formula:

∆iL =(1 − max(D1,D2,D3))Vout

L f(7.9)

L is the inductor value in Henry and f is the switching frequency of the PWM gen-

erator in Hertz. This calculation of the ripple assumes a system with PWM generators

for each switching cells synchronized on their rising edge as it is done for Fig. 7.18.

Interleaved control of the switch can lead to lower ripple calculation for the same set of

parameters.

The ripple voltage at the first input can be found using the assumption that most of

the ripple current will be absorbed by the input capacitor [64] :

∆v1 =(1 − D1)ILD1T

C1(7.10)

If the load is purely resistive, the input voltage ripple becomes:

182

Page 200: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

∆v1 =(1 − D1)(V1D1 + V2D2 + V3D3)D1T

C1Ro(7.11)

Where Ro is the value of the output resistor in Ω.

The ripple calculation can be extended to the other inputs by symmetry :

∆v2 =(1 − D2)(V1D1 + V2D2 + V3D3)D2T

C2Ro(7.12)

∆v3 =(1 − D3)(V1D1 + V2D2 + V3D3)D3T

C3Ro(7.13)

In DCM, the following relationship applies:

Pout =1L (V1 D1 + V2 D2 + V3 D3) (7.14)

Pout is the output power of the system and L is the value of the inductor.

183

Page 201: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

Figure 7.19: Inductor current (top) and inductor voltage (bottom) in the three input

converter operating in DCM.

Fig. 7.19 shows the theoretical current and voltage waveforms through the inductor

of the proposed converter operating in DCM.

The system is first simulated in Matlab and tested using the simple interleaved algo-

rithm described in the previous section. Experimental verification will be presented in

the next section.

184

Page 202: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

2.005 2.01 2.015 2.02 2.025 2.03

x 10−3

25

25.5

26

26.5

27

V

2.005 2.01 2.015 2.02 2.025 2.03

x 10−3

5

5.5

6

6.5

7

A

2.005 2.01 2.015 2.02 2.025 2.03

x 10−3

17.8

17.9

18

18.1

18.2

time

V

Figure 7.20: Simulation showing the expected waveform of the proposed three input

DC/DC converter with a resistive load and three different solar panels.

The simulations are achieved using a switched circuit approach and Matlab’s ODE

solver. The scripts are given in the Annexe. The result of the simulations shown in

Fig. 7.20 indicate that the circuit can operate properly in CCM mode. The input are

simulated solar panels and have different operating voltage (top plot). The inductor

current rises sharply at the beginning of each cycle as every solar panel is connected in

series. The rising rate of the current drops each time one input is disconnected from

the current path. In this simulation, each input voltage V1, V2 and V3 is greater than the

desired output voltage. Thus, for all 0 < t < T. max(d1, d2, d3), the inductor current is

185

Page 203: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

increasing. The current finally drops when the last input is disconnected. The inductor

is set to 50µF and the input capacitor to 80µF. The output capacitor is 33µF and the

load is a 3Ω resistor.

Figure 7.21: Simulation showing the expected waveform of the proposed three input

DC/DC converter with a resistive load and three different solar panels.

Top: Current in the inductor. Bottom: Input and output voltages. The

voltage of one of the solar panel (V3) is lower than the output voltage.

One difference with this configuration compared to three bucks in parallel is that

input voltages of the sources do not have to be each higher than the output voltage for

the converter to operate. A simple example is when each input is a voltage source and

186

Page 204: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

the duty cycle of each switching cell is the same. The system will then operate as one

regular buck converter with input voltage V1 + V2 + V3. Therefore, each input voltage

can individually be lower than the output voltage. Another, more interesting case, is

illustrated in Fig. 7.21. In this simulation, one of the input voltage (V3) is lower than

the output voltage. The order of switching is: source 1 (V1 on the plot) is switched off

first, then source 2, and finally source 3 (D1 < D2 < D3). The top plot shows that the

current in the inductor reduces when only the third source is connected. This is expected

because V3 < Vout and the inductor voltage becomes negative when t > D2 T . However,

the source is still able to transfer energy to the load.

One disadvantage of the topology is an increased switching loss on the FETs, as

each switch has to sustain the full output current when they turn ON (the current is split

between each inductor in the parallel connection.) Therefore for a three input converter,

the current stress on each switch will be in average three times higher than the stress

found in a classic parallel connection of Buck converters. The voltage stress of each

switch is the same as the parallel buck configuration.

187

Page 205: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

7.3.2 Experiments

Figure 7.22: Three solar panels connected to the experimental Maximum Power

Point Tracker.

An experimental three input circuit is built following the proposed configuration of Fig.

7.16. The system includes a microcontroller with three independent PWM channels. The

three power stages are implemented using FDS8447 MOSFETS and ADP3120 drivers

(one per channel). Each driver is powered by their respective solar panels and the control

signal is transmitted to two of the channels using optocouplers (The first channel shares

ground with the controller and so does not require specific circuitry to receive the PWM

signal from the microcontroller). The input capacitors C1,C2 and C3 are 22µF each and

the inductor has a value of 33µH. The output capacitor Cout has a 47µF capacitance.

188

Page 206: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

The switching frequency is 200kHz.

The proposed interleaved MPPT algorithm is programmed in the microcontroller and

data is logged through the serial port to a computer. The experimental setup is shown in

Fig. 7.22. Outdoor testing is used for all of the experiment involving this circuit. The

solar panels shown in the picture and used in the experiments are 10W solar panels from

PowerFilm Inc. (model F15-600) unless otherwise specified.

Figure 7.23: Ch1 (Bottom): Potential between the output of the third stage and the

ground. Ch2(Top): Load voltage. The load is a 4.7Ω resistor

Fig. 7.23 show some waveforms illustrating the function of the three input DC/DC

converter: the output voltage on Channel 2 and the voltage between the inductor and the

ground on Channel 1. The position of the probe can be seen on Fig. 7.16 labeled CH1

for Channel 1 and CH2 for Channel 2. The probes share the same ground as the one

shown on Fig. 7.16. As expected, the last waveform shows the potential jumping from

189

Page 207: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

higher voltage to a lower ones as each switching cell controlling a panel’s conduction is

switched.

0 50 100 150 200 250 300 350 4000

0.5

1

1.5

2

2.5

Out

put c

urre

nt (

A)

0 50 100 150 200 250 300 350 4000

0.1

0.2

0.3

0.4

time (s)

duty

cyc

le

Panel 1Panel 2Panel 3

Figure 7.24: Experimental evolution of the algorithm in the three input Buck con-

verter. Top: output current. Bottom: duty cycles of the three switching

cells.

Fig. 7.24 shows the recorded evolution of the algorithm, the duty cycle for the three

switching cells of the converter as well as the output current. This figure shows that the

system is able to achieve maximum power point tracking for the three solar panels using

only a single current sensor. In this experiment, the algorithm is deliberately slowed

down to allow the transfer of information between the microcontroller and the computer

recording the experimental data. At t=146s a shadow obscures one of the three panels.

The shade is removed at t=245s. The system’s adaptation to the change in light intensity

is shown by the evolution of the duty cycles of the converter.

190

Page 208: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

Fig. 7.25 show other experimental results.

0 20 40 60 80 100 120 140 1600

0.5

1

1.5

2

Cur

rent

(A

)

0 20 40 60 80 100 120 140 1600

0.1

0.2

0.3

0.4

time (s)

Dut

y C

ycle

Figure 7.25: Experimental evolution of the algorithm in the three input Buck con-

verter. Top: output current. Bottom: duty cycles of the three switching

cells.

In Fig. 7.25, one solar panel is put in the shade at t=95s resulting in a loss of power

and a reconfiguration of the duty cycle oscillation region by the controller.

7.3.3 Conclusion

We have proposed an algorithm capable of tracking the Maximum Power Point of several

solar panels using only a single current sensor. The algorithm works by interleaving a

Perturb and Observe type algorithm which enable the current sensor to be ` shared´ by

each solar panel. The advantage of this system is a reduced design cost due to lower part

count, increased flexibility to add solar panel, and increased layout simplicity for small

191

Page 209: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

portable systems. This configuration also has some disadvantages over classic methods,

the main one being an increased convergence time to the Maximum Power Point of the

solar panels.

An additional modification of the algorithm is proposed to partially address the issue

of the increased convergence time. The proposed gradient climbing interleaved algo-

rithm can increase the speed of the system by performing a perturb and observe sequence

more often on the solar panels that produce more power. This increase the convergence

speed in the case where one of the solar panel has a higher power output than the other

panels in the system (because of its technology or because it receives a higher illumina-

tion).

Finally, an architecture is proposed that maximizes the benefits of the proposed al-

gorithm by offering a configuration that requires only one inductor and can achieve

synchronous rectification control of the converter using a single current sensor. The pro-

posed converter has the ability to function in PWM mode with unsynchronized switching

waveforms making it simple to implement.

192

Page 210: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

Chapter 8

Conclusion

In this thesis, we have addressed some of the problems related with field operation of

rehargeable batteries. This research has been motivated by the increasing need of reliable

portable power generation for low power applications and the rise of the flexible solar

panel industry to answer those needs. These new technologies are increasingly used in

the civil as well as in the military areas. The U.S. Army, in particular, has reported issue

when using solar panels with their rechargeable batteries.

In this research, we have identified some major issues in charge control of the bat-

teries when the charging source is a solar panel. In particular, we have noticed that tra-

ditional voltage algorithms for NiMH batteries fail, due to large variations of charging

current. Moving shadows and passing clouds result in variations in the battery voltage

that fool the charger. These variations are relatively large compared to the evolution of

the voltage when constant current is used. Therefore, the information on overcharge of

the battery is lost. Similarly, temperature swings due to weather changes can greatly

193

Page 211: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

affect the detection of overcharge based on temperature methods. Finally, Li-ion charge

control algorithms need extra care in their design, as some formulation of the algorithm

can result in failure and early termination of the charge when used with a solar panel.

In Chapter 4, we have proposed charge control algorithms to solve the previously

identified issues. The proposed methods outperform the existing charge control algo-

rithms in changing weather situations. In particular, the proposed algorithms are more

robust to false detections before the battery is fully charged. One of the methods pro-

posed is based on the voltage evolution of the battery. It involves a detection and filtering

of false events. A second charge control algorithm is based on differential temperature

measurement between two groups of battery cells in order to filter out the effect of chang-

ing ambient temperature and irradiation. This algorithm has been shown to work for the

military BB390 NiMH battery as well as for off-the-shelf standard AA cells. Finally, we

have shown a proper formulation of the Li-ion charge control algorithm for use with the

solar panels.

In Chapter 5, we have analyzed different implementations of a dynamic algorithm for

Maximum Power Point Tracking of the solar panel using the Perturb&Observe method.

While this algorithm is one of the most widely used method to track the Maximum Power

Point of a solar array, different possible implementations of that algorithm are possible.

We have discovered that some configurations result in more reliable operation of the

algorithm. Even though most of the literature mentions the use of the Perturb&Observe

algorithm using the duty cycle as the direct source of perturbation, we have found that

this can result in unreliable operation is some cases. The perturbation on the input volt-

age reference offers better performances with little to no increase in component count

194

Page 212: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

(no increase in the all-digital case). Additionally we have shown that the use of a bypass

switch in parallel with a DC/DC converter, along with proper control algorithms, can

result in higher overall efficiency of the system.

In Chapter 6 we designed and built a commercial grade prototype that implements

the benefits of the research of the previous chapters. The circuit is specifically designed

to control the charge of military Li-ion and NiMH batteries with solar panels. The

charge control algorithms for the Li-ion and NiMH batteries use the results found in

Chapter 4 and the charger performs Maximum Power Point Tracking using results found

in Chapter 5 in order to keep the solar panel operating at its optimum point and to reduce

the charging time of the batteries.

In Chapter 7, formulation of new Maximum Power Point Tracking algorithms for

multiple solar panel systems is presented along with a proposed system architecture.

This is of special interest for small portable applications using photovoltaic modules

having different fabrication and characteristics each.

• New dynamic algorithms capable of tracking the Maximum Power Point of several

solar panels using only a single current sensor were presented.

• Experimental, simulation and theoretical results were presented which support

that the proposed MPPT system is suitable for these types of applications. Com-

parisons are made between the interleaving of sensors and traditionnal MPPT with

individual dedicated sensors. Both approach reach the same final operating point.

The interleaved approach has reduced sensor cost, but with the drawback of slower

algorithm convergence.

195

Page 213: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

• A single inductor topology for multiple input systems is used to take advantage of

the proposed MPPT algorithms to reduce size and cost of the converter.

The algorithm works by interleaving a Perturb and Observe algorithm which enable

the current sensor to be ` shared´ by each solar panel. The advantage of this system

is a reduced design cost and increased layout simplicity for small portable systems.

However, this configuration also has some disadvantages over classic methods, the main

one being an increased convergence time to the Maximum Power Point of the solar

panels.

A modified algorithm is also proposed in Chapter 7 to partially address the issue of

the increased convergence time. The proposed gradient climbing interleaved algorithm

can increase the speed of the method by performing a perturb and observe sequence more

often on the solar panels that produce more power. This increases the convergence speed

in the case where one of the solar panel has a higher power output than the other panels

in the system (because of it’s technology or because it receives a higher illumination).

A proposed architecture is also shown in Chapter 7. It is based on a Buck topology

with multiple input in series. It has the advantage of being able to interface several solar

panels using only one inductor, one current sensor and no OR-ing components, such as

diodes. This has potential benefits in terms of board space and cost. An experimental

system using this topology and the aforementioned MPPT algorithm has successfully

been tested.

196

Page 214: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

8.1 Issues and Future Research

While we certainly have improved the reliability of overcharge detection for NiMH bat-

teries, the algorithms we have proposed do not guarantee that the system will never be

fooled and that overcharge will be properly detected at all times. For the proposed volt-

age method, the information about overcharge can disapear after the filtering and false

error detection is done. For the proposed differential temperature algorithm, the effect

of external disturbances in the battery temperature cannot be totally decoupled due to

physical constraints (package, position of the battery, etc...). Adding additional external

temperature sensors covering all the areas of the pack could add information on the heat

transfer between the battery pack and its surrounding (such as the what part of the pack

is heated by sunlight), thereby allowing the algorithm to be balanced properly. However,

this does not appear to be a practical solution for this application at this point.

Figure 8.1: An electrical model of the battery.

Often, the electric behavior of the battery can be found using a simplified model

197

Page 215: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

having a voltage source (open circuit voltage of the battery) and a series of RC cells

[84–86] as shown in Fig. 8.1.

The goal of future research should focus on the ability to measure the parameters of

the model on-line. While the battery is charging, the system would continuously monitor

and estimate the value of the model’s variables using only the battery’s terminal voltage

and input current (only data available). The evolution of the parameters of the model

would then be used to detect when the battery is entering overcharge.

The model of the battery can be expressed from Fig. 8.1 as follow:

Vbat = EOC + RS I + V1 + V2 + ... + VN (8.1)

Where Vbat is the battery’s terminal voltage, the only measurable voltage. EOC is the

open-circuit voltage of the battery, RS is an equivalent series resistance. V1,V2 to VN are

the voltages of the equivalent RC cells.

198

Page 216: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

400 600 800 1000 1200 1400 1600 1800 2000 220010

10.5

11

11.5

12

12.5

13

13.5

14

14.5

time(s)

V

Figure 8.2: Voltage of a BB390 12V battery being charged with a current interrupted

periodically.

An initial result is to obtain the model of the battery using a series of tests by con-

trolling the charging current. One of such test is shown in Fig. 8.2. In this experiment,

the charging current is interrupted periodically to analyze the transient response of the

battery voltage.

V1 = − V1

R1C1+

IC1

(8.2)

One of the issues is to determine EOC, as the voltage of the battery can take days to

settle down to its steady state [87]. Methods proposed in [87] could be used for that.

199

Page 217: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

Once EOC is obtained, other components of the system can be measured. Rs might be

estimated by cutting the charging current and measuring the drop in the voltage imme-

diately after the charge is cut. We may be interested in obtaining the smallest possible

order of the model to simplify calculation. If the approximation of a first order model

is retained for the battery, and if the current is shut down during the test, the following

formula can be used:

V1 − ˆV1 = (−1τ

V1) − (−1τ

V1) (8.3)

where V1 is the estimated voltage of the RC cell, τ is the time constant of the model,

and τ is the estimated time constant of the model.

Assuming that the current does not change and the value of the open voltage stays

constant during the period of the test, we can assume Vbatt = V1 and V1 = Vbatt − EOC.

Therefore, the time constant of the RC cell could be found from the estimate and the

error between the estimated and the measured time derivative of the voltage.

200

Page 218: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

1000 1500 2000 2500

13.4

13.45

13.5

13.55

13.6

13.65

13.7

13.75

time(s)

V

Figure 8.3: Voltage of the battery after the charging current is turned off (solid) and

second order model of the battery (dashed). For better clarity, The volt-

age drop due to RS is not shown (the drop occurs before t=1000s).

However, initial experiments seem to indicate that the model of the battery should

be of a higher order as shown in Fig 8.3. This is in accordance with [84]. Further exper-

iments with changing current and varying temperature are needed to better characterize

the battery model and to find which parameters can be associated with a full SOC con-

dition. Some clues can be found in [84], but the results in this paper are specific to one

NiMH cell model and it needs to be determined if those results are applicable to a battery

pack (multiple cells in series and parallel), such as the BB390 and if the measurements

are precise enough to allow full SOC detection. Finally, the ability to estimate the pa-

rameters of the model on-line, without turning the charging current off and relying on

201

Page 219: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

the natural perturbation of the charging current from a solar panel need to be determined.

The tasks required can be summarized as follow:

• Create a complete test bench with high precision measurement and automated

testing

• Acquire model using tests during charge such as open circuit and determine condi-

tions for full SOC detection that can be repeated from one battery pack to another.

• Acquire model during charge dynamically, using natural perturbations in the charg-

ing current (from events such as passing clouds) and detect full SOC condition

without having to interrupt the charge.

Future research may also address more advanced controller design for the charger

presented in Chapter 6. Due to time constraints and project deadlines, a simple con-

troller has been used with fixed gains for the two feedback loops. Although this is, a

priori, more a development issue than a research problem, new control scheme could

be designed to achieve a desired response quality (convergence time, oscillation etc...)

over a broad range of conditions (large differences in the input voltage, current and

impedance). In addition, while we proposed an algorithm to achieve Maximum Power

Point Tracking of the solar panel that takes into account the specific non-linearities of the

designed converter (the Boost-Buck topology with an output diode that can be bypassed

when operating in Buck mode, see Chapter 6 for more details), it still needs refinement

in its formulation to ensure smooth operation in all cases and specifically transitions

between Buck and Boost modes.

202

Page 220: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

Finally, future research could be aimed at creating a system capable of better con-

trolling the power flow into the load for the multi-input converter shown in Chapter 7. In

addition to Maximum Power Point Tracking, output voltage and/or output current need

to be implemented in a real system. An intelligent output current or voltage control

would be useful in many applications (battery chargers, small electronics etc...). The

challenge of implementing output current and voltage control stems from the sensing

limitation that we imposed to the converter. Because only one output current sensor is

available, and because the system contains multiple inputs and different possible config-

urations of the switches with many possible operating points, the design of an efficient

controller becomes challenging. Some possible answer to theses problems could possi-

bly be found in [88] Additional issues can come from sudden disconnection of one input

or the need to switch part of the solar panels to MPPT while the other part is operated

to ensure the output current is controlled to its desired reference value. That last point

can also be part of a control strategy to obtain the desired behavior of the converter.

Research should focus on:

• Accurate and fast response. A cycle-by-cycle MPPT algorithm proposed in [89]

could help address the speed issue by allowing a Perturb and Observe type algo-

rithm to be executed each switching cycle, dramatically increasing speed (issues

of sampling rate and sensing precision will arise).

• Reliable operation with wide variety of input configurations: different type of so-

lar panels and weather conditions (including shading of parts of the solar panels),

different configurations at the input (some inputs not connected to any solar pan-

203

Page 221: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

els, disconnections of some inputs while delivering power, etc...).

204

Page 222: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

Bibliography

[1] A. Gregg, R. Blieden, A. Chang, and H. Ng, “Performance analysis of large scale,amorphous silicon, photovoltaic power systems,” Records of the IEEE PhotovoltaicSpecialists Conference, pp. 1615–1618, 2005.

[2] P. Fairley, “Solar cell rollout,” Technology Review, vol. 107, pp. 34–40, 2004.

[3] E. Koutroulis, K. Kalaitzakis, and N. Voulgaris, “Development of amicrocontroller-based, photovoltaic maximum powerpoint tracking control sys-tem,” IEEE Transaction on Power Electronics, vol. 16, pp. 46–54, 2001.

[4] J. Woodworth, M. Thomas, J. Stevens, S. Harrington, J. Dunlop, and M. R. Swarny,“Evaluation of the batteries and charge controllers in small stand-alone photo-voltaic systems,” IEEE Photovoltaics Specialists Conference, vol. 1, pp. 933–945,1994.

[5] T. Hund and B. Thompson, “Amp-hour counting charge control for photovoltaichybrid power systems,” Records of the 26th Photovoltaic Specialists Conference,pp. 1281–1284, 1997.

[6] R. Hamlen, H. Christopher, and S. Gilman, “Us army needs-present and future,”IEEE Aerospace and Electronic Systems Magazine, vol. 10, pp. 30–33, 1995.

[7] E. Plichta, M. Hendrickson, and R. Hamlen, “Mobile power challenges for thearmy’s objective force,” Battery Conference on Applications and Advances, pp.109–111, 2002.

[8] K. Hu, M. Geng, X. Gao, T. Burchardt, Z. Gong, D. Norus, and N. Nakstad, “Effectof long-term overcharge and operated temperature on performance of rechargeablenimh cells,” Journal of Power Sources, vol. 159, pp. 1478–1483, 2006.

[9] R.A.Powers, “Batteries for low power electronics,” Proceedings of the IEEE,vol. 83, pp. 687–693, 1995.

205

Page 223: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

[10] M. J.M. Tarascon, “Issues and challenges facing rechargeable lithium batteries,”Nature, vol. 414, pp. 359–367, 2001.

[11] G.E.Blomgren, “Current status of lithium ion and lithium polymer secondary bat-teries,” Fifteenth annual battery conference on applications and advances, pp. 97–100, 2000.

[12] C. Iwakura, S. Nohara, N. Furukawa, and H. Inoue, “The possible use of polymergel electrolytes in nickel/metal hydride battery,” Solid State Ionics, vol. 148, pp.487–492, 2002.

[13] L. Jarvis, T. B. Atwater, and P. Cygan, “Alternate power source for land warrior,”Battery Conference on Applications and Advances, pp. 9–13, 2000.

[14] O. Barbarisi, R. Canaletti, L. Glielmo, M. Gosso, and F. Vasca, “State of charge es-timator for nimh batteries,” IEEE Conference on Decision and Control, pp. 1739–1744, 2002.

[15] F. C.B., “Temperature termination and the thermal characteristics of nicd and nimhbatteries,” WESCON/94. ’Idea/Microelectronics’ Conference Record, pp. 309–315,1994.

[16] A. Gonzales, M. Perez, J. Campo, and F. Ferrero, “Considerations to improve thepractical design of universal and full-effective nicd/nimh battery fast-chargers,”Applied Power Electronics Conference and Exposition, vol. 1, pp. 167–173, 1999.

[17] F. Lima, J. Ramalho, D. Tavares, J.Duarte, C. Albuquerque, T. Marques, A. Ger-aldes, A. Casimiro, G. Renkema, J. Been, and W. Groeneveld, “A novel universalbattery charger for nicd, nimh, li-ion and li-polymer,” Conference on EuropeanSolid-State Circuits, pp. 209–212, 2003.

[18] T. Osaka and M. Datta, Energy Storage Systems for Electronics. Gordon andBreach Science, 2000.

[19] G. Danese, F. Leporati, R. Lombardi, M. Nucita, G. Pedrazzini, and G. Ricotti,“An instrument for the characterization of voltage and temperature profile in nicdand nimh batteries,” Proceedings of the 23rd Euromicro Conference, pp. 178–183,1997.

[20] J. Ross, T. Markvart, and W. He, “Modelling battery charge regulation for a stand-alone photovoltaic system,” Solar Energy, vol. 69, pp. 181–190, 2000.

206

Page 224: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

[21] M. Gonzalez, M. Perez, J. Campo, and F. Ferrero, “Accurate detection algorithm ofbattery full-capacity under fast-charge,” Proceedings of Instrumentation and Mea-surement Technology Conference, pp. 755–759, 1998.

[22] G. L, L. .S, and D. R.A, “Dynamic lithium-ion battery model for system simula-tion,” IEEE Transaction on Components and Packaging Technologies, vol. 25, pp.495–505, 2002.

[23] J. Lopez, M. Gonzales, J. Viera, and C. Blanco, “Fast-charge in lithium-ion batter-ies for portable applications,” Telecommunication Energy Conference INTELEC,pp. 248–253, 2004.

[24] M. Inaba and Z. Ogumi, “Up-to-date development of lithium-ion batteries injapan,” IEEE Electrical Insulation Magazine, vol. 17, pp. 6–20, 2001.

[25] P. Gomadam, J. Weidner, R. Dougal, and R. White, “Mathematical modeling oflithium-ion and nickel battery systems,” Journal of power sources, vol. 110, pp.267–284, 2002.

[26] T. Markvart, Solar Electricity. John Wiley and Sons, 1994.

[27] A. Barnett, C. Honsberg, D. Kirkpatrick, S. Kurtz, D. Moore, D. Salzman,R. Schwartz, J. Gray, S. Bowden, K. Goossen, M. Haney, D. Aiken, M. Wanlass,and K. Emery, “50 percent efficient solar cell architectures and designs,” Record ofthe 4th IEEE World Photovoltaic Energy Conversion Conference, pp. 2560–2564,2006.

[28] R. C. Neville, Solar Energy Conversion. Elsevier, 1995.

[29] H. Takatsuka, M. Noda, Y. Yonekura, Y. Takeuchi, and Y. Yamauchi, “Develop-ment of high efficiency large area silicon thin film modules using vhf-pecvd,” SolarEnergy, vol. 77, pp. 951–960, 2004.

[30] H. K.H., M. I., H. T., and O. M., “Maximum photovoltaic power tracking: analgorithm for rapidly changing atmospheric conditions,” IEE Proceedings of Gen-eration, Transmission and Distribution, vol. 142, pp. 59–64, 1995.

[31] J. Gow and C. Manning, “Development of a photovoltaic array model for use inpower-electronics simulation studies,” IEE Proceedings on Electric Power Appli-cations, vol. 146, pp. 193–200, 1999.

207

Page 225: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

[32] J. Enslin, M. Wolf, D. Snyman, and W. Swiegers, “Integrated photovoltaic maxi-mum power point tracking converter,” IEEE Transaction on Industrial Electronics,vol. 44, pp. 769–773, 1997.

[33] M. Massoum, H. Dehbonei, and E. Fuchs, “Theoretical and experimental analy-ses of photovoltaic systems with voltage and current based maximum power pointtracking,” IEEE Transaction on Energy Conversion, vol. 17, pp. 514–522, 2002.

[34] M. Masoum, S. Mosavi, and E. Fuchs, “A microprocessor controlled new classof optimal battery chargers for photovoltaic applications,” IEEE Transaction onEnergy Conversion, vol. 19, 2004.

[35] E. Radziemska and E. Klugmann, “Photovoltaic maximum power point varyingwith illumination and temperature,” Journal of Solar Energy Engineering, vol. 128,pp. 34–39, 2006.

[36] T. Noguchi, S. Togashi, and R. Nakamoto, “Short-current pulse-based maximum-power-point tracking method for multiple photovoltaic-and-converter module sys-tem,” IEEE transaction on Industrial Electronics, vol. 49, pp. 217–223, 2002.

[37] H. Matsuo and F. Kurokawa, “New solar cell power supply system using a boosttype bidirectional dc-dc converter,” IEEE transactions on Industrial Electronics,vol. 31, pp. 51–55, 1984.

[38] B. Cougo, P. Cortizo, F. Rocha, G. Coelho, P. Seixas, and L. de V.B. Machado Neto,“A photovoltaic system for remote fault detection in distribution lines using a novelmppt algorithm,” IEEE International Symposium on Industrial Electronics ISIE,pp. 2397–2402, 2007.

[39] A. Kajihara and A. Harakawa, “Model of photovoltaic cell circuits under partialshading,” IEEE International Conference on Industrial Technology, pp. 866–870,2005.

[40] K. Kobayashi, I. Takano, and Y. Sawada, “A study on a two stage maximum powerpoint tracking control of a photovoltaic system under partially shaded insolationconditions,” Journal of Solar Energy Materials and Solar Cells, vol. 90, pp. 2975–2988, 2006.

[41] C. Sullivan and M. Powers, “A high-efficiency maximum power point tracker forphotovoltaic arrays in a solar-powered race vehicle,” IEEE Power Electronics Spe-cialists Conference, pp. 574–580, 1993.

208

Page 226: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

[42] N. Femia, G. Petrone, G. Spagnuolo, and M. Vitelli, “Optimization of perturband observe maximum power point tracking method,” IEEE Transaction on PowerElectronics, vol. 20, pp. 963–973, 2005.

[43] M. Veerachary, T. Senjyu, and K. Uezato, “Maximum power point tracking ofcoupled inductor interleaved boost converter supplied pv system,” IEE Proceedingson Electric Power Applications, vol. 150, pp. 71–80, 2003.

[44] X. Weidong and W. Dunford, “A modified adaptive hill climbing mppt methodfor photovoltaic power systems,” IEEE 35th Annual Power Electronics SpecialistsConference PESC, vol. 3, pp. 1957–1963, 2004.

[45] D. Shmilovitz, “On the control of photovoltaic maximum power point tracker viaoutput parameters,” IEE Proceedings on Electric Power Applications, vol. 152, pp.239–248, 2005.

[46] P. Wolfs and L. Tang, “A single cell maximum power point tracking converterwithout a current sensor for high performance vehicle solar arrays,” IEEE PowerElectronics Specialists Conference, pp. 165–171, 2005.

[47] D. Hohm and M. Ropp, “Comparative study of maximum power point trackingalgorithms using an experimental, programmable, maximum power point trackingtest bed,” 28th IEEE Photovoltaic Specialists Conference, pp. 1699–1702, 2000.

[48] V.Salas, M. Manzanas, A. Lazaro, A. Barrado, and E. Olias, “The control strategiesfor photovoltaic regulators applied to stand-alone systems,” IECON 02, vol. 4, pp.3274–3279, 2002.

[49] H. Chung, K. Tse, S. Hui, C. Mok, and M. Ho, “A novel maximum power pointtracking technique for solar panels using a sepic or cuk converter,” IEEE Transac-tion on Power Electronics, vol. 18, pp. 717–724, 2003.

[50] Brambilla, M. Gambarara, A. Garutti, and F. Ronchi, “New approach to photo-voltaic arrays maximum power point tracking,” IEEE Power Electronics Special-ists Conference, vol. 2, pp. 632–637, 1999.

[51] P. Midya, P. Krein, R. Turnbull, R. Reppa, and J. Kimball, “Dynamic maximumpower point tracker for photovoltaic applications,” IEEE Power Electronics Spe-cialists Conference, vol. 2, pp. 1710–1716, 1996.

209

Page 227: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

[52] T. Esram and P.L.Chapman, “Comparison of photovoltaic array maximum powerpoint tracking techniques,” IEEE Transactions on Energy Conversion, tbp.

[53] M. Simoes, N. Franceschetti, and M. Friedhofer, “A fuzzy logic based photovoltaicpeak power tracking controller,” IEEE international symposium on industrial elec-tronics, pp. 300–305, 1998.

[54] T. Hiyama, S. Kouzuma, and T. Imakubo, “Evaluation of neural network basedreal time maximum power tracking controller for pv system,” IEEE transactionson Energy Conversion, vol. 5, pp. 543–548, 1995.

[55] V. Teofilo, R. Hollandsworth, G. Mason, J. Nadell, M. Isaacson, and E. Cuel-lar, “Lithium ion solid polymer electrolyte batteries far portableelectronics andspace applications,” Battery Conference on Application and Advances, pp. 227–232, 1999.

[56] A. Hande and T. Stuart, “A selective equalizer for nimh batteries,” Journal of PowerSources, vol. 138, pp. 327–339, 2004.

[57] K. Bundy, M. Karlsson, G. Lindbergh, and A. Lundqvist, “An electrochemicalimpedance spectroscopy method for prediction of the state of charge of a nickel-metal hydride battery at open circuit and during discharge,” Journal of PowerSources, vol. 72, pp. 118–125, 1998.

[58] W. Bentley, “Cell balancing consideration for lithium-ion battery systems,” BatteryConference on Applications and Advances, pp. 14–17, 1997.

[59] H. C. and S. C., “Study of maximum power tracking techniques and control ofdc/dc converters for photovoltaic power system,” IEEE Power Electronics Special-ists Conference, vol. 1, pp. 86–93, 1998.

[60] W. Xiao and W. Dunford, “Evaluating maximum power point tracking perfor-mances by using artificial lights,” IEEE Conference on Industrial Electronics,vol. 3, pp. 2883–2887, 2004.

[61] “Pic18f452 datasheet,” Microchip, Tech. Rep.

[62] A. Peterchev and S. Sanders, “Quantization resolution and limit cycling in digitallycontrolled pwm converters,” IEEE Transaction on Power Electronics, vol. 18, pp.301–308, 2003.

210

Page 228: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

[63] Z. Jiang and R. Dougal, “Multiobjetive mppt/charging controller for standalonepv power systems under different insolation and load conditions,” IEEE IndustryApplication Conference, pp. 1154–1160, 2004.

[64] J. Kassakian, M. Schlecht, and G. Verghese, Principles of Power Electronics.Addison-Wesley, 1992.

[65] M. Chiang, C. C. Hua, and J. Lin, “Direct power control for distributed pv powersystem,” Power Conversion Conference, vol. 1, pp. 311–315, 2002.

[66] Y. Liu and Y. Chen, “A systematic approach to synthesizing multi-input dc/dc con-verters,” Power Electronics Specialists Conference, pp. 2626–2632, 2007.

[67] W. Wu, W. Qiu, K. Rustom, T. Kasparis, and I. Batarseh, “Dsp-based multiple peakpower tracking for expandable power system,” IEEE Applied Power ElectronicsConference and Exposition, vol. 1, pp. 525–530, 2003.

[68] K. Siri, V. Caliskan, and C. Lee, “Maximum power tracking in parallel connectedconverters,” IEEE transactions on Aerospace and Electronics Systems, vol. 29, pp.935–945, 1993.

[69] C. Hua and J. Lin, “Fully digital control of distributed photovoltaic power sys-tems,” IEEE international symposium on Industrial Electronics, pp. 1–6, 2001.

[70] W. Xiao, N. Ozog, and W. Dunford, “Topology study of photovoltaic interfacefor maximum power point tracking,” IEEE transactions on Industrial Electronics,vol. 54, pp. 1696–1704, 2007.

[71] F. Caricchi, F. Crescimbini, O. Honorati, A. D. Napoli, and E. Santini, “Testingof a new dc/dc converter topology for integrated wind-photovoltaic generating sys-tems,” Proc. 5th Eur. Conf. Power Electronic Applications, vol. 8, pp. 83–88, 1993.

[72] B. Dobbs and P.L.Chapman, “A multiple-input dc-dc converter topology,” IEEEPower Electronics letters, vol. 1, pp. 6–9, 2003.

[73] Y. Chen, Y. Liu, and S. Lin, “Double input pwm dc/dc converter for high/lowvoltage sources,” Telecommunication Energy Conference INTELEC’03, pp. 27–32,2003.

[74] J. Sebastian, P. Villegas, F. Nuno, and M. Hernando, “High efficiency and widebandwidth performance obtainable from a two input buck converter,” IEEE Trans-action on Power Electronics, vol. 13, pp. 706–717, 1998.

211

Page 229: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

[75] F. Umeda, M. Ohsato, G. Kimura, and M. Shioya, “New control method of reso-nant dc-dc converter in small scaled photovoltaic system,” IEEE Power ElectronicsSpecialists Conference, vol. 2, pp. 714–718, 1992.

[76] J. Yang, H. Bae, J. Lee, and B. Cho, “A simplified series-parallel structure forthe regulated peak power tracking (rppt) system,” IEEE Applied Power ElectronicsConference and Exposition, pp. 160–166, 2008.

[77] N. Benavides, T. Esram, and P. Chapman, “Ripple correlation control of a multiple-input dc-dc converter,” Power Electronics Specialists Conference PESC05, pp.160–164, 2005.

[78] O. Rodrigues and P. Ghosh, “Series interconnection of dc-dc converters for outputcontrols,” Power Electronics in Transportation, pp. 133–137, 2004.

[79] H. Tao, A. Kotsopoulos, J. Duarte, and M. Hendrix, “Family of multiport bidi-rectional dc-dc converters,” IEE Proceedings on Electric Power Applications, pp.451–458, 2006.

[80] H. Matsuo, T. Shigemizu, F. Kurokawa, and N.Watanabe, “Characteristics of themultiple input dc-dc converter,” Power Electronics Specialists Conference, pp.115–120, 1993.

[81] H. Matsuo, W. Lin, F. Kurokawa, T. Shigemizu, and N. Watanabe, “Characteristicsof the multiple input dc-dc converter,” IEEE Transactions on Industrial Electron-ics, vol. 51, pp. 625–631, 2004.

[82] Y. Chen, Y. Liu, F. Wu, and Y. Wu, “Multi-input converter with power factorcorrection and maximum power point tracking,” IEEE Applied Power ElectronicsConference, pp. 490–496, 2002.

[83] L. Solero, A. Lidozzi, and J. Pomilio, “Design of multiple-input power converterfor hybrid vehicles,” IEEE Transactions on Power Electronics, vol. 20, pp. 1007–1016, 2005.

[84] M. Chen and G. Rincon-Mora, “Accurate electrical battery model capable of pre-dicting runtime and i-v performance,” IEEE Transactions on Energy Conversion,vol. 21, pp. 504–511, 2006.

[85] M. Glass, “Battery electrochemical nonlinear/dynamic spice model,” Energy Con-version Engineering Conference, vol. 1, pp. 292–297, 1996.

212

Page 230: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

[86] B. Schweighofer, K. Raab, and G. Brasseur, “Modeling of high power automotivebatteries by the use of an automated test system,” IEEE Transactions on Instru-mentation and Measurements, vol. 52, pp. 1087–1091, 2003.

[87] S. Abu-Sharkh and D. Doerffel, “Rapid test and non-linear model characterizationof solid-state lithium-ion batteries,” Journal of Power Sources, vol. 130, pp. 266–274, 2005.

[88] K. Siri and K. Conner, “Sequentially controlled distributed solar-array power sys-tem with maximum power tracking,” IEEE Aerospace Conference, vol. 4, pp.2774–2783, 2004.

[89] X. Liu and A. Lopes, “An improved perturbation and observation maximum powerpoint tracking algorithm for pv arrays,” IEEE Power Electronics Specialists Con-ference, pp. 2005–2010, 2004.

213

Page 231: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

214

Page 232: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

Chapter 9

Annexe

9.1 Temperature Measurements for BB390 Related Ex-

periments

2 4 6 8 10 12 14 1615

20

25

30

35

40

45

50

Resistance (in k )

Tem

pera

ture

( in

C )

Ω

Figure 9.1: Resistance vs temperature for the thermistors inside the BB390 NiMH

battery pack 215

Page 233: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

Unless otherwise mentioned, the temperature of the battery’s cells for the BB390 are

measured using the battery pack’s internal thermistors using a voltage bridge. The data is

gathered in terms of voltage across the thermistor and can easily be transformed into the

value of the resistance of the thermistor. In order to relate that value to the temperature

of the cells, we took one of the thermistor inside a battery pack (by opening one pack

and therefore destroying it) and put it in an incubator (temperature controlled chamber).

Fig. 9.1 shows the resistance vs. temperature curve of the 10k thermistors inside the

pack.

From this curve we can calculate a linear approximation to model the thermistor.

However, a logarithmic approximation gives a better result:

T = 79.2 − 23.9ln(Rth) (9.1)

Where Rth is the resistance of the thermistor in kΩ and T is the temperature in °C. This

approximation gives a maximum error of less than 0.2 °Cover the range of measured

values.

9.2 Parameter Calculation for the SEPIC Converter:

This section informs the reader on the design choices for the SEPIC converter used in

chapter 5:

The input/output steady state equation for the SEPIC converter are given here as-

216

Page 234: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

suming losseless conversion:

Iout =1 − D

DIin (9.2)

Vout =D

1 − DVin (9.3)

Choice of the inductors L1 and L2

Due to the limitation of the solar panel, the maximum input power for the converter

is expected to be lower than 70W. Additionally, the voltage of the solar panel is expected

to be no less than 10V at maximum power point. That gives a maximum input current

of 7A assuming input/output power conservation for design purposed (Pin = Pout).

IL2 =1 − D

DIin = Iout (9.4)

Therefore:

max(IL2) =1 − Dmin

Dminmax(Iin) (9.5)

We also have:

D =Vout

Vin + Vout(9.6)

so Dmin = 0.14 and max(IL2) = 43A. However, due to the limitation of the batteries used

in our research, we limit our converter to an output of 5A :max(Iout) = 5A

217

Page 235: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

So max(IL2) = 5A.

∆IL1 =VinDT

L1(9.7)

The frequency is chosen to be 100kHz due to limitations of the DPWM generator on the

microcontroller. Therefore T = 10µs.

8 10 12 14 16 18 20 222

4

6

8

10

12

14

Vin

D x

Vin

Vo = 30V

Vo = 17V

Vo = 4V

Vo = 8V

Vo = 12V

Figure 9.2: DVin product as a function of the Vin and Vout.

In the worst case scenario, Vin = 23V while Vout = 30V . This gives us a maximum

duty cycle of : Dmax = 0.68. (In practice, Vin can be higher than 23V. However, the

power is expected to be significantly lower than the maximum of 70W and the current

variations are then not an issue for core saturation of the inductors). As shown in Fig.

9.2, the worst pulsation appears when Vin and Vout are both maximum.

218

Page 236: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

0.5 1 1.5 2 2.5 3 3.5 4 4.5

x 10−4

0

0.5

1

1.5

2

2.5

3

3.5

4

4.5

5

L1 (H)

∆Ι(Α

)

Figure 9.3: peak to peak current ripple in L1 as a function of the inductance.

The maximum pulsation at L1 for different values of inductance is given in Fig. 9.3.

By choosing L=50uH, we ensure a worst case current pulsation of 2.8A peak to peak.

Therefore the maximum current through the inductor will be 8.4Amps (7Amps DC +

1.4Amps of peak ripple.) By using an inductor with 10Amps saturation current, we

ensure a 20% safety range over the calculated value.

Due to the topology of the SEPIC converter,in continuous conduction mode, the

ripple in L2 will be the same as the one in L1. Therefore L2 is picked to be equal to

L1.In theory, the two inductor can be coupled on the same core since the voltage accross

L1 and L2 are equal. However, due to the limitation in the choice of available cores, we

used one separate core for each inductor.

Choice of the capacitor Cin:

The ripple in the voltage at the terminals of Cin can be expressed using the following

219

Page 237: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

equation:

∆VCin =(1 − D)T Iin

Cin(9.8)

If we do not want the ripple to exceed 6% of the DC voltage the constraint becomes

:

Cin > f rac(1 − Dmin)Iin0.07 f Vin (9.9)

The worst case scenario as previously dicsussed will happen when the input voltage

is 10V and the input current is 7A. The smallest duty cycle will happen when the output

voltage is 4V. Therefore here, Dmin = 0.28. So C needs to be larger than 84µ F. We use

a 88 µF capacitor in practice.

Small signal model and feedack loop.

In order to design the feedback loop of the converter, we build a small signal model

of the converter.

We used a state space representation of the system:

X = AX + BU (9.10)

Y = CX + DU (9.11)

(9.12)

For practical purposes we separate the matrix A into three terms A0, A1 and A2 such

220

Page 238: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

that the state equation becomes:

X = (A0 + DA1 + (1 − D)A2)X + BU (9.13)

Y = CX + DU (9.14)

(9.15)

221

Page 239: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

A0 =

−rL1L1

0 0 1L1

0

0 − rL2L2

0 0 0

0 0 0 0 0

− 1Cin

0 0 − 1Cinrpv

0

0 0 0 0 − 1Coutrbatt

A1 =

0 0 0 0 0

0 0 1L2

0 0

0 −−1C 0 0 0

0 0 0 0 0

0 0 0 0 0

A2 =

0 0 − 1L1

0 − 1L1

0 0 0 0 − 1L2

1C 0 0 0 0

0 0 0 0 0

1Cout

1Cout

0 0 0

(9.16)

L1 and L2 are the inductors of the circuit as shown in Fig. 5.16. rL1 and rL2 are the

series resistance of the inductors. C is the main capacitor as shown in Fig. 5.16. Cin is

the input capacitor and Cout is the output capacitor.

The output of the system is the input voltage of the DC/DCconverter therefore it is

the voltage at Cin:

222

Page 240: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

C =

[0 0 0 1 0

]

In order to analyze the response of the input voltage to the command, we need to

rewrite the system so that the input becomes the small signal variation in the duty cycle

: d.

˙X = AX + B

Iin

˜Vbatt

+ (A1 − A2)X0d (9.17)

X0 is the steady state value of X. X represents the small variations of the state. ˜IPV

is the small variations of the input voltage (PV panel’s side of the converter). ˜Vbatt is the

small variations of the battery’s voltage.

9.3 Multi-Input Boost Converter Simulations

In order to study the behavior of the multiple input boost converter, we use the Matlab

environment to simulate it. A switched circuit simulation is created. However, the

computation time required to achieve the simulation over a long time can become quite

large. In order to reduce the simulation time, we use a power flow type of approach

using a set of equation describing the circuit in steady state.

Let fpv1 and fpv2 be the functions describing each photovoltaic panel’s voltage as a

function of its current.

223

Page 241: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

F1(V1, I11) = V1 − fpv1(I11) = 0 (9.18)

F2(V2, I21) = V2 − fpv2(I21) = 0 (9.19)

Each Boost converter leg satisfies the following relationship: Vout = Vin1−D . Therefore

we have :

F3 =V1

1 − D1− V2

1 − D2= 0 (9.20)

And also :

Vo = Eb + Rb(I10 + I20) = Eb + Rb((1 − D1)I11 + (1 − D2)I21) =V1

1 − D1(9.21)

So we can write :

F0 =V1

1 − D1− Eb + Rb((1 − D1)I11 + (1 − D2)I21) = 0 (9.22)

Where Eb and Rb describe the load as a voltage source in series with a resistor. D1

and D2 are the duty cycle of converter 1 and 2. We now have a set of four equation

F0, F1, F2, F3 describing the system with four independent variables :V1, I11,V2, I21.Because the sources are photovoltaic cells, the system is non linear. Therefore, to solve

it, we use a Newton-Raphson approach to solve the system.

224

Page 242: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

We write the Jacobian of the system:

0 − F0

0 − F1

0 − F2

0 − F3

=

11−D1

−Rb(1 − D1) 0 −Rb(1 − D2)

−∂ fpv1

∂I111 0 0

0 0 1 ∂ fpv2

∂I21

11−D1

0 − 11−D2

0

∆V1

∆I11

∆V2

∆I21

(9.23)

Where ∂ fpv1

∂I11and ∂ fpv2

∂I21are the partial derivative of the solar panel’s voltage with changes

in their output current. Because the equations are non linear, this value changes with

the variables. We can either recalculate the Jacobian each time the vector of variables

change. Or, if optimization of the convergence is not particularly an issue, we can pick

values that are large enough to keep the convergence algorithm stable.

∆F = J∆X (9.24)

In order to solve the system, we assume a starting point [X]0. We then compute F

and ∆F. If the matrix J is invertible, we can write :

∆X = J−1∆F (9.25)

From ∆X we have an estimation of the modifications of X required to satisfy F =−→0 ,

the solution of the system. Because J is not exact (due to non linearity) applying those

modifications will not result in the correct vector X. Instead we apply α∆X where α is a

225

Page 243: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

weighting factor smaller than one. The process is iterated until ‖X‖ < 1e − 3 (which is a

value chosen arbitrarily.)

Once the vector X has been estimated for a given set of duty cycles, all the systems

parameter can be extracted from it.

The previous example has been given for a two input circuit. It can easily be gener-

alized to N input.

9.4 SEPIC Prototype for PowerFilm, Inc.

Figure 9.4: Topology of the initially proposed converter. The system is built around

a SEPIC converter

226

Page 244: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

This section shows the design of the early version of the prototype shown in chapter

6. The initial design involved a sepic converter but was later changed to a boost-buck

type converter (see chapter 6 for details on it). As shown in Fig. 9.4, the leg selector

allows current to be directed to each leg of the battery, the bypass switch is used when

the input voltage at Maximum Power Point is closed to the output voltage. In that case,

the converter is shut down and the bypass switch activated in order to reduce losses.

The control of the converter is achieved using a micro-controller with voltage sensing

(input and outputs) and current sensing (outputs). Driving circuitry for the various FET

switches and current sensing circuitry are not shown in the figure.

Figure 9.5: Sepic converter and control circuit board. Only the top (darker) and the

bottom (clearer) layer are shown. The top side (power side) is shown

with its components outlined in dark.

227

Page 245: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

Fig. 9.5 shows the layout of the board. Although initially designed on a two layer

PCBoard, the board size requirements and the complexity of the circuit made us redesign

the board in a 4 layer board.

9.5 Matlab Scripts

9.5.1 Simulation of a Three Inputs Boost Converter Using a Newton

Raphson Algorithm

The scripts covers the simulation of three boost converter with their output connected.

the simulations covers solely the CCM operation of the converters. The inputs are mod-

els of solar panels

Script main.m:

1 close all;clear all;2 %load modelization:3 battery voltage=0;4 battery impedance=10;5

6 Rs1=1/10; %dynamic resistance of the sources7 Rs2=1/10; %needed in the N−R algorithm and randomly set8 Rs3=1/10;9

10 Iold=0; %old output current11

12 direction=[1,1,1]; %direction of the P&O algo for each input13 index=1;14 D=[0.2,0.2,0.2]; %duty cycles15 Dnew=[0.2,0.2,0.2]; %future duty cycle16 D1=0.2;17 D2=0.2;18 D3=0.2;19 % Jacobian

228

Page 246: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

20 J=[ 1/(1−D1),−battery impedance*(1−D1), 0,−battery impedance*(1−D2), 0 ,−battery impedance*(1−D3);

21 Rs1 , 1 , 0 , 0 , 0 , 0 ;22 0 , 0 , Rs2 , 1 , 0 , 0 ;23 0 , 0 , 0 , 0 , Rs3 , 1 ;24 1/(1−D1), 0 , −1/(1−D2) , 0 , 0 , 0 ;25 1/(1−D1), 0 , 0 , 0 , −1/(1−D3) , 0];26

27 JJ=inv(J); %JJ will not be recalculated afterward. As long as it works...28

29 X=[10,0.5,10,0.5,10,0.5]; %X contains: V1 I1 V2 I2 V3 I3(input voltages and currents)30 for(j=1:1:150)31 j32 if(j==50) %This switch allows a change in the load at step j==xx33 battery impedance=10;34 end35

36 D(index)=Dnew(index); %updates the duty cycle of one of the converters37

38

39 a=0; %"a" carries the number of the Newton Raphson iteration that has been made40 dF=[1,1,1,1,1,1]; %Initialization of 'dF' so the while loop is not overlooked41

42 %while the functions are not minimized (while the equation is not solved)43 while(sum(abs(dF))>1e−6)44 a=a+1 ;45 F=source(X,[battery voltage,battery impedance,D(1),D(2),D(3)],j);46 dF=[0,0,0,0,0,0]−F;47 dX=0.01*JJ*dF'; %modification to X (with damping factor)48 X=X+dX';49 if(X(2)<0) %No current is allowed to flow backward in the converters50 X(1)=5;X(2)=0; %%%CAREFULL This can cause the algorithm to STOP converging51 end %%%BECAUSE the equations defined in "source.m" don't handle DCM52 if(X(4)<0)53 X(3)=5;X(4)=0;54 end55 end56 duty store(j,:)=D;57 I1 out=X(2)*(1−D(1));58 I2 out=X(4)*(1−D(2));59 I3 out=X(6)*(1−D(3));60 Iout=X(2)*(1−D(1))+X(4)*(1−D(2))+X(6)*(1−D(3)); %calculates output current from result61 X ext=[I1 out,I2 out,I3 out,Iout];62 X ext store(j,:)=X ext; % Stores the output current for each iteration63 X store(j,:)=X;

229

Page 247: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

64

65 %Performs P&O66 if(Iout<Iold)67 direction(index)=−direction(index);68 end69 Dnew(index)=D(index)+direction(index)*0.04;70 Iold=Iout;71 index=index+1;72 if(index>3)73 index=1;74 end75

76

77 end

Function source.m:

1

2 %This function calculates the value of the f functions that define the system3 %The closer these equations are to 0, the closer to thruth the proposed solution is.4 function F=source(X,parameter,t)5 battery voltage=parameter(1);6 battery impedance=parameter(2);7 D1=parameter(3); %duty cycles8 D2=parameter(4);9 D3=parameter(5);

10 V1=X(1);I1=X(2);V2=X(3);I2=X(4);V3=X(5);I3=X(6); %variables of the system to find11

12

13

14 %F0,F1,F2,F3 set of non−linear equation to solve15

16 F0=V1/(1−D1)−battery impedance*((1−D1)*I1+(1−D2)*I2+(1−D3)*I3)−battery voltage;17

18 F1=I1−Curr(3,V1);19 if(t>50 & t<100)20 F2=I2−Curr2(0.5,V2);21 else22 F2=I2−Curr(3,V2);23 end24 F3=I3−Curr(3,V3);25 F4=V1/(1−D1)−V2/(1−D2);26 F5=V1/(1−D1)−V3/(1−D3);27 F=[F0,F1,F2,F3,F4,F5];28 end

230

Page 248: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

Function curr.m

1 function [C] = Curr(Isc, V)2

3 V=V/10;4 q=1.6022e−19;5 a=6.55;6 k=1.3806e−23;7 T=300;8 I0=3.403e−07;9 Rsh=53;

10

11 %Open circuit output voltage12 mVT=(a*k*T)/q;13 Voc = mVT * log(Isc/I0+1);14 b = q*Voc/(a*k*T);15 sigma = Voc/(Rsh*Isc);16

17 C = Isc − ( Isc*( (1−sigma)/(exp(b) −1))*( exp(b*V/Voc)−1) ) − (Isc*V/Voc*sigma);18 if(V<0)19 C=Isc;20 end21 %if(V>Voc)22 % C=0;23 %end

Function curr2.m

1 function [C] = Curr(Isc, V)2

3 V=V/9.5;4 q=1.6022e−19;5 a=6.55;6 k=1.3806e−23;7 T=300;8 I0=3.403e−07;9 Rsh=53;

10

11 %Open circuit output voltage12 mVT=(a*k*T)/q;13 Voc = mVT * log(Isc/I0+1);14 b = q*Voc/(a*k*T);15 sigma = Voc/(Rsh*Isc);16

231

Page 249: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

17 C = Isc − ( Isc*( (1−sigma)/(exp(b) −1))*( exp(b*V/Voc)−1) ) − (Isc*V/Voc*sigma);18 if(V<0)19 C=Isc;20 end21 %if(V>Voc)22 % C=0;23 %end

The functions ¨curr.m ¨and ¨curr2.m ¨contains model for the solar panels.

9.5.2 Simulation of a Three Input, Single Inductor Converter

The simulation of the converter proposed in Chapter 7 is achieved using a switched

circuit simulation in Matlab:Script main.m:

1 close all;clear all;2 options=odeset('MaxStep',1e−7);3

4 [t,Y]=ode45(@differ,[0 3e−3],[0,25,25,25,0],options);Function differ.m:

1 function dX=differ(t,X)2 IL=X(1);3 VC1=X(2);4 VC2=X(3);5 VC3=X(4);6 VCout=X(5);7

8

9 R=3; %load10

11

12 D1=0.1; %duty cycle of the cells13 D2=0.2;14 D3=0.4;15 C=80e−6; %input capacitors (all the same)16 L=50e−6; %inductor

232

Page 250: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

17 Cout=33e−6; %output capacitor18 period=5e−6;19

20

21 dVC1=Curr(3,VC1)/C;22 dVC2=Curr(3,VC2)/C;23 dVC3=Curr(5,VC3)/C;24

25 %state vector:26 %X=[IL, VC1, VC2, VC3, VCout];27 dIL=0;28 dVCout=−VCout/(R*Cout);29 if(mod(t,period)<D1*period)30 dIL=dIL+VC1/L;31 dVC1=dVC1−IL/C;32 end33 if(mod(t,period)<D2*period)34 dIL=dIL+VC2/L;35 dVC2=dVC2−IL/C;36

37 end38 if(mod(t,period)<D3*period)39 dIL=dIL+VC3/L;40 dVC3=dVC3−IL/C;41 end42 dIL=dIL−VCout/(L);43 dVCout=dVCout+IL/(C);44 if(IL≤0 & dIL<0)45 dIL=0;46 end47

48 if(VC1≤0 & dVC1<0)49 dVC1=0;50 end51 if(VC2≤0 & dVC2<0)52 dVC2=0;53 end54 if(VC3≤0 & dVC3<0)55 dVC3=0;56 end57

58 dX=[dIL;dVC1;dVC2;dVC3;dVCout];

The program uses the functions ¨curr.m ¨and ¨curr2.m ¨defined in the previous subsec-

233

Page 251: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

tion.

9.5.3 Model of the Boost-Buck Converter

The scripts for the calculation of the model of the Boost-Buck converter designed in

Chapter 6 are shown here.

For the Buck converter mode:

1

2 %This script calculates the averaged model of the buck converter, linearize3 %the model and extract the transfer function relating change in duty cycle4 %with output current.5 %The model can be used with Simulink to test different controller by using6 %the calculated state space model matrices AAAA,BBBB,CCCC or BBBB winputs7 %instead of BBBB and DDD winputs.8 clear all;close all;9 rdson=0.008; %ON resistance of the MOSFET switch

10 Eo=13; %load voltage11 Ro=0.200; %load resistance12 L=50e−6;13 C1=40e−6; %input capacitor14 C2=30e−6; %output capacitor15 rc1=0.006; %ESR of C116 rc2=0.007; %EST of C217 rl=0.015+0.016; %resistance of the inductor + resistance of the PFET bypassing18 %the boost's diode19 VD=0.0; %forward voltage of the diode (we bypass it so=0)20 STORE=[];21 corec=tf([1,0],[1,−1],200e−6);22

23 %the for loops allow to test different input operating point to obtain a map24 for E1in=20:5:20 %Elin is the voltage at the input of the converter25 for R1=0.1:2:2 %R1 is source resistance26 for I op=0.5:1:4 %I op is input current27

28 E1=E1in+I op*R1; %E1 is the input voltage source29

30 P estim=E1*I op−R1*I opˆ2; %quick estimate of the transfered power31 dPdV=2*I op−E1/R1;

234

Page 252: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

32 I out estim=(−Eo+sqrt(Eoˆ2+4*Ro*(P estim)))/(2*Ro); %estimated output current33 D=(Eo+Ro*I out estim)/(E1−R1*I op)*1.01; %estimated operating duty cycle34

35

36 %model of the circuit:37 Aon=[−1/(C1*(R1+rc1)),−R1/(C1*(R1+rc1)),0;38 R1/(L*(R1+rc1)),1/L*(−rc1*R1/(rc1+R1)−rc2*Ro/(rc2+Ro)−rl−rdson)39 ,−Ro/(L*(Ro+rc2));40 0,Ro/(C2*(rc2+Ro)),−1/(C2*(rc2+Ro))];41

42 Bon=[1/(C1*(R1+rc1)),0,0;43 rc1/(L*(R1+rc1)),−rc2/(L*(Ro+rc2)),0;44 0,1/(C2*(rc2+Ro)),0];45

46 Aoff=[−1/(C1*(R1+rc1)),0,0;47 0,1/L*(−rc2*Ro/(rc2+Ro)−rl−rdson),−Ro/(L*(Ro+rc2));48 0,Ro/(C2*(rc2+Ro)),−1/(C2*(rc2+Ro))];49

50 Boff=[1/(C1*(R1+rc1)),0,0;51 0,−rc2/(L*(Ro+rc2)),−1/L;52 0,1/(C2*(rc2+Ro)),0];53

54 AAA=Aon*D+Aoff*(1−D);55 BBB=Bon*D+Boff*(1−D);56

57 %The input of the system is: [voltage source E1, battery voltage Eo,58 % forward voltage of the diode VD]59

60

61 %calculating steady state of the circuit:62 steady=−inv(AAA)*BBB*[E1;Eo;VD]63

64 %an estimate of the efficiency, not really useful:65 effi= steady(2)*steady(3)/(steady(1)*(E1−steady(1))/R1)66

67 %Linearizaton around the operating point, The input is now the68 %small variation of the duty cycle:69 BBBB=(Aon−Aoff)*[steady(1);steady(2);steady(3)]+(Bon−Boff)*[E1;Eo;VD];70 AAAA=AAA;71 CCCC=[0,rc2/(Ro+rc2),1/(Ro+rc2)]; %the output is the load current72

73 %this is to allow the simulation of perturbation of the input or/and output voltage:74 %the input vector is then [dutycycle,e1,e0,vd]75

76 BBBB winputs=[BBBB,BBB];

235

Page 253: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

77 DDDD winputs=[0,0,−1/(Ro+rc2),0];78

79

80 sys=ss(AAAA,BBBB,CCCC,0); %this regroups the state model matrices in a81 %Matlab linear system structure.82 [num,den]=tfdata(sys);83 sys2=tf([1],[1,0]);84 sys3=sys*sys2*156;85 hold on86

87 sys4=c2d(sys,200e−6); %sampling frequency of 200us for the microcontroller88

89 [Gm,Pm,Wcg,Wcp]=margin(sys4*corec*200e−6*80);90 sys5=sys4*corec*200e−6*80;91

92 STORE=[STORE;[Gm,Pm,Wcg,Wcp,I op,E1in,R1]];93

94 bode(sys5/(1+sys5),100,1e5);95 end;96 end;97 end;98 end;

For the Boost converter mode:

1 %This script calculates the model for the Boost converter mode2 %This script is similar to the script that calculates the model3 %for the Buck converter4 clear all;close all;5 rc1=0.006;6 rc2=0.007;7 rdson=0.01;8 R1=0.001;9 Eo=13.0;

10 Ro=0.1;11 L=50e−6;12 C1=40e−6;13 C2=30e−6;14 rL=0.015;15 VD=0.4;16 STORE=[];17 %corec=tf([1,0],[1,−1],200e−6);18 for E1in=8:−2:819 for R1=0.001:1:0.001

236

Page 254: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

20 for I op=2:1:221

22 E1=E1in+I op*R1 ;23 P estim=E1*I op−R1*I opˆ2;24 dPdV=2*I op−E1/R1;25 I out estim=(−Eo+sqrt(Eoˆ2+4*Ro*(P estim)))/(2*Ro);26 D=1−(E1−R1*I op)/(Eo+Ro*I out estim)*0.96;27

28

29

30 Aon=[−1/(C1*(R1+rc1)),−R1/(C1*(R1+rc1)),0;31 R1/(L*(R1+rc1)),(1/L)*(−rc1*R1/(R1+rc1)−rL−rdson),0;32 0,0,−1/(C2*(rc2+Ro))];33

34 Aoff=[−1/(C1*(R1+rc1)),−R1/(C1*(R1+rc1)),0;35 R1/(L*(R1+rc1)),(1/L)*(−R1*rc1/(R1+rc1)−rL−rc2*Ro/(rc2+Ro))36 ,−Ro/(L*(Ro+rc2));37 0,Ro/(C2*(Ro+rc2)),−1/(C2*(Ro+rc2))];38

39 AAA=D*Aon+(1−D)*Aoff;40

41 Bon=[1/(C1*(R1+rc1)),0,0;42 rc1/(L*(R1+rc1)),0,0;43 0,1/(C2*(rc2+Ro)),0];44

45 Boff=[1/(C1*(R1+rc1)),0,0;46 rc1/(L*(R1+rc1)),−rc2/(L*(Ro+rc2)),−1/L;47 0,1/(C2*(rc2+Ro)),0];48

49 BBB=D*Bon+(1−D)*Boff50

51

52 %Linarization around the operating point53

54 steady=−inv(AAA)*BBB*[E1;Eo;VD]55 AAAA=AAA;56 BBBB=(Aon−Aoff)*[steady(1);steady(2);steady(3)]+(Bon−Boff)*[E1;Eo;VD];57 CCCC=[0,rc2/(Ro+rc2),1/Ro];58 DDDD=−[0,rc2/(Ro+rc2),0]*[E1;Eo;VD];59

60

61 sys=ss(AAAA,BBBB,CCCC,DDDD);62 [num,den]=tfdata(sys);63 sys2=tf([1],[1,0]);64 sys3=sys*sys2*156;

237

Page 255: Improving battery charging with solar panels - DRS1434/... · Improving Battery Charging with Solar Panels ... 2.2.3 Maximum Power Point Tracking ... 9.2 Parameter Calculation for

65 % step(sys3/(1+sys3));66 % bode(sys3);67 hold on68 sys4=c2d(sys,200e−6);69 sys5=sys4*corec*200e−6*78;70 step(sys5/(1+sys5));71 %margin(sys5);72 %[Gm,Pm,Wcg,Wcp]=margin(sys4*corec*200e−6*90);73 %margin(sys3)74 STORE=[STORE;[Gm,Pm,Wcg,Wcp,I op,E1in,R1]];75 end ;76 end;77 end;

238