sritharan thuwaragan 201206 masc thesis

104
Impact of Current Waveforms on Battery Behaviour by Thuwaragan Sritharan A thesis submitted in conformity with the requirements for the degree of Master of Applied Science Graduate Department of Electrical and Computer Engineering University of Toronto Copyright c 2012 by Thuwaragan Sritharan

Upload: devendra-patil

Post on 14-Apr-2016

224 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: Sritharan Thuwaragan 201206 MASc Thesis

Impact of Current Waveforms on Battery Behaviour

by

Thuwaragan Sritharan

A thesis submitted in conformity with the requirementsfor the degree of Master of Applied Science

Graduate Department of Electrical and Computer EngineeringUniversity of Toronto

Copyright c© 2012 by Thuwaragan Sritharan

Page 2: Sritharan Thuwaragan 201206 MASc Thesis

Abstract

Impact of Current Waveforms on Battery Behaviour

Thuwaragan Sritharan

Master of Applied Science

Graduate Department of Electrical and Computer Engineering

University of Toronto

2012

With increasing emphasis on renewable energy sources and efficient energy use,

energy storage devices, and in particular electrochemical storage devices, are becoming

more prevalent. In order to interface batteries to systems, converters are used to maintain

the desired voltage, current or power. In this thesis, we explore the response of the bat-

tery to commonly seen current waveforms to understand the impact of the converter on

the battery. An electrochemical model of the electrode-electrolyte is studied to first un-

derstand its operating principles and then to pinpoint the causes of the observed battery

response. A circuit was built to test the response of the battery to current waveforms.

Experiments consisting of constant current, triangular and sinusoidal currents of varying

frequency and ripple currents, and pulsed currents were conducted. Using electrochem-

ical principles, an explanation of the results is presented along with the impact of the

experimental results on converter design specifications.

ii

Page 3: Sritharan Thuwaragan 201206 MASc Thesis

Acknowledgements

Foremost, I would like to thank my supervisors Professor Francis Dawson and

Professor Keryn Lian, for their support, guidance, and patience over the course of this

thesis. Their insight into areas outside of the field of ECE proved to be extremely valuable

and was an integral part in this thesis.

I am also grateful to Adrian Amanci, Jin Chang, Amgad EL-Deib, Valentin Bol-

borici, Hamid Timorabadi and Qifeng Tian for their time and assistance in various aspects

of my thesis.

I would like to also acknowledge the Flexible Energy and Electronics Laboratory

(FEE Lab) for letting me use their equipment for my tests.

Thanks and acknowledgement must be given to Haoyang Chen and Pawel Chomicki

who worked on the waveform generating circuit and the MATLAB GUI used to analyze

the data.

Last, and most importantly, I need to thank my family. For without their love,

support and patience, I could not have completed this thesis.

iii

Page 4: Sritharan Thuwaragan 201206 MASc Thesis

Contents

Abstract ii

Acknowledgements iii

Table of Contents iv

List of Tables vi

List of Figures vii

1 Introduction 1

1.1 Objectives . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4

1.2 Outline . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5

2 Introduction to Batteries 7

2.1 Electrochemical Cell Overview . . . . . . . . . . . . . . . . . . . . . . . . 7

2.2 Electrode-Electrolyte Interface . . . . . . . . . . . . . . . . . . . . . . . . 10

2.3 Electrochemical Impedance Spectroscopy . . . . . . . . . . . . . . . . . . 15

2.4 Battery Model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17

2.5 Lead Acid . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18

2.6 Nickel Based Batteries . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19

2.7 Lithium Based Batteries . . . . . . . . . . . . . . . . . . . . . . . . . . . 21

2.8 Summary of Battery Chemistries . . . . . . . . . . . . . . . . . . . . . . 25

3 Experimental Results and Discussion 26

iv

Page 5: Sritharan Thuwaragan 201206 MASc Thesis

3.1 Experimental Setup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27

3.2 Constant Current Charging and Discharging . . . . . . . . . . . . . . . . 29

3.3 Triangular and Rectified Sinusoidal Currents . . . . . . . . . . . . . . . . 36

3.4 Pulsed Currents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43

4 Conclusion 49

4.1 Contributions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51

4.2 Future Work . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52

A Battery Tester Circuit Design 54

A.1 Circuit Requirements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54

A.2 Circuit Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55

A.3 Circuit Details . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57

A.4 Simulation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62

A.5 Testing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69

B Battery Tester Code 71

B.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71

B.2 Matlab Code . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78

References 92

v

Page 6: Sritharan Thuwaragan 201206 MASc Thesis

List of Tables

2.1 Comparison of Secondary Batteries [27, 28] . . . . . . . . . . . . . . . . . 25

3.1 Constant Current Charge . . . . . . . . . . . . . . . . . . . . . . . . . . . 32

3.2 Constant Current Discharge . . . . . . . . . . . . . . . . . . . . . . . . . 34

3.3 1C Average Charging Current with 10%C Triangular Current Ripple . . 37

3.4 2C Average Charging Current with 10%C Triangular Current Ripple . . 39

3.5 2C Average Charging Current with 20%C Triangular Current Ripple . . 39

3.6 2C Average Charging Current with 30%C Triangular Current Ripple . . 40

3.7 2C Average Charging Current with 50%C Triangular Current Ripple . . 40

3.8 2C Average Charging Current with 1kHz Sinusoidal Current Ripple . . . 41

B.1 GUI Layout Handles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75

B.2 Data Structure Handles . . . . . . . . . . . . . . . . . . . . . . . . . . . 76

vi

Page 7: Sritharan Thuwaragan 201206 MASc Thesis

List of Figures

1.1 Two possible methods of interconnecting battery storage to a grid. . . . . 3

1.2 Characterization of switch-mode converters by current waveforms. . . . . 5

2.1 A typical battery model [6]. . . . . . . . . . . . . . . . . . . . . . . . . . 8

2.2 Schematic illustrations on the crystal structures of (a) LiCoO2 (layered

structure), (b) LiMn2O4 (spinel structure), and (c) LiFePO4 (olivine struc-

ture [9]). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9

2.3 Formation of the electric double layer [11]. . . . . . . . . . . . . . . . . . 10

2.4 Formation of a concentration gradient at the electrode-electrolyte interface. 12

2.5 Cell response to a step in the a) applied voltage, and b) applied current

assuming a perfectly conducting electrolyte and electrode. . . . . . . . . 14

2.6 EIS with no DC bias resulting in a) the measured impedance , and b) the

RC circuit that models the measured impedance. . . . . . . . . . . . . . 15

2.7 EIS for a typical electrode electrolyte interface where Rct is the charge

transfer resistance and Cd is the double layer capacitance [16]. . . . . . . 16

2.8 EIS for a lithium battery from [1] as a function of charge-discharge cycle

number. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16

2.9 Electrode-electrolyte circuit model proposed by Conway [17]. . . . . . . . 17

2.10 Simplified battery equivalent circuit, ignoring diffusion rate limiting phe-

nomena and assuming a large number of accessible active sites. . . . . . . 18

2.11 Typical charging profile for Ni-MH and Ni-Cd batteries [22]. . . . . . . . 21

3.1 Cell voltage response for constant current charge at 0.5C. . . . . . . . . . 30

vii

Page 8: Sritharan Thuwaragan 201206 MASc Thesis

3.2 Predicted cell voltage waveforms during charging using internal battery

resistance to calculate IR voltage drop as function of a) battery capacity

and b) time. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31

3.3 Cell voltage response for constant current charge at 0.5C, 1C, 2C and 3C

along with the predicted voltage response. . . . . . . . . . . . . . . . . . 32

3.4 Cell voltage response for constant current discharge at 0.5C . . . . . . . 34

3.5 Predicted cell voltage waveforms during discharge using internal battery

resistance to calculate IR voltage drop as function of a) battery capacity

and b) time. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34

3.6 Cell voltage response for constant current discharge at 0.5C, 1C, 2C and

3C. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35

3.7 Cell voltage response for 1C charge with 0.1C ripple current of varying

frequencies. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38

3.8 Effect of ripple current on cell capacity (with a DC current of 2C). . . . . 39

3.9 Cell voltage response for 2C charge with 0.5C ripple current. . . . . . . . 41

3.10 Cell voltage response for 2C charge with 1kHz ripple current . . . . . . . 42

3.11 a) Current pulse response for a 0.5C DC current with a 100ms pulse of 1C

charge current, and b) predicted cell response from Sand’s equation. . . . 44

3.12 Cell voltage response for a 0.5C DC current with a 100ms pulse of 1C. . 44

3.13 Cell voltage response for a 0.5C DC current with a 100ms pulse of 2C. . 45

3.14 Cell voltage response for a 0.5C DC current with a 10ms pulse of 1C

discharge current. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46

3.15 Battery response to a 0.5C to 1C charge pulse of 10ms at various states

of charge. Voltage0 corresponds to the pulse response when the battery is

depleted, Voltage25 is the response when the battery is charged to 25%, etc. 47

viii

Page 9: Sritharan Thuwaragan 201206 MASc Thesis

3.16 Battery response to a 0.5C to 1C discharge pulse of 10ms at various states

of discharge. Voltage0 corresponds to the pulse response when the battery

is fully charged, Voltage25 is the response when the battery is discharged

by 25%, etc. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48

A.1 Complete schematic of the battery charging and discharging circuit. . . . 56

A.2 Current control loops. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57

A.3 DAC Battery charging mode. . . . . . . . . . . . . . . . . . . . . . . . . 58

A.4 DAC Battery discharging mode. . . . . . . . . . . . . . . . . . . . . . . 58

A.5 DAC Theory of Operation. . . . . . . . . . . . . . . . . . . . . . . . . . 59

A.6 Internal resistor ladder of the DAC. . . . . . . . . . . . . . . . . . . . . . 59

A.7 Simplified circuit used for PSpice simulations. . . . . . . . . . . . . . . . 63

A.8 Simulated circuit response of a 1A to 5A pulse. . . . . . . . . . . . . . . 64

A.9 The small signal model of the op-amp and BJT in the charging loop. . . 65

A.10 Transfer function model of a feedback controller. . . . . . . . . . . . . . . 65

A.11 Bode plot of the op-amp open loop gain. . . . . . . . . . . . . . . . . . . 67

A.12 Bode plot of the feedback loop (H(s)) for 1A (blue), 5A (green), 10A (red)

and 14A (teal) currents. . . . . . . . . . . . . . . . . . . . . . . . . . . . 68

A.13 Experimental circuit response of the uncompensated charging loop show-

ing output current oscillations. The second trace shows the op-amp output

and the third trace shows the resulting current. . . . . . . . . . . . . . . 69

A.14 Experimental circuit response of the compensated charging loop showing

output current response to a 1A to 10A step. The second trace shows the

op-amp output and the third trace shows the resulting current. . . . . . . 70

A.15 DAC linearity of the input signal and the resulting output current . . . . 70

B.1 Layout Hierarchy of GUI in dataloggerGUI.m . . . . . . . . . . . . . . . 73

B.2 GUI Layout of dataloggerGUI.m . . . . . . . . . . . . . . . . . . . . . . . 74

B.3 Plot Annotations in dataloggerGUI.m . . . . . . . . . . . . . . . . . . . . 78

ix

Page 10: Sritharan Thuwaragan 201206 MASc Thesis

Chapter 1

Introduction

With increasing environmental concerns, a large emphasis is being placed on re-

newable forms of energy. The most prevalent forms of renewable energy derived from

the sun or wind are not constant and thus energy storage is required to reconcile short

as well as longer term mismatches between instantaneous energy supply and energy de-

mand. The storage systems are charged during periods when the load demand is low

and discharged when the demand is high. There are also schemes going forward where

the cost of buying or selling energy to the grid would vary depending on the time of

day, season and location. In this case the sizing of the energy storage system and the

management of the energy transfers has to be optimized to maximize the rate of return

on the investment.

There are several means of storing energy - for example, pump storage, compressed

air in underground caverns, flywheels or electrochemical storage. Pump storage is only

practical in specific geographical areas. Flywheels are of interest but the cost of ownership

is still problematic. Electrochemical energy storage in the form of batteries is the most

common form of energy storage in use today and for the foreseeable future. The work in

this thesis will focus on electrochemical energy storage.

1

Page 11: Sritharan Thuwaragan 201206 MASc Thesis

Chapter 1. Introduction 2

There are a number of battery technologies available on the market and each

technology has attributes as well as drawbacks. The choice of battery system ultimately

is based on a site analysis. Aside from utility applications, batteries are also used to

provide backup power for consumer applications where downtime is detrimental. This

includes Uninterruptible Power Supplies (UPS) for consumer appliances as well as for

businesses that use batteries as a means of transitioning from grid power to backup diesel

generation. Another application where an increase in battery use is seen is in hybrid and

electric vehicles. The following discussion focuses more on the use of batteries in utility

systems.

Most applications using batteries require converters to transform the power into

the needed voltage or current. Two schemes for interconnecting a battery to a grid

is shown in Fig. 1.1: Fig. 1.1(a) shows a battery connected to a bus with a floating

voltage; Fig. 1.1(b) shows a battery which is connected through a converter to a bus.

The battery in Fig. 1.1(a) is exposed to pulsed currents and the voltage of the bus

is always maintained between a lower and upper bound. Fig. 1.1(b) shows the other

extreme where the battery is connected through a converter to an intermediate DC bus.

The current supplied to or extracted from the battery is quasi-continuous and thus would

be optimal from the point of view of the battery. The choice of converter in Fig. 1.1(b)

depends to some extent on how many batteries are placed in series and parallel. These

converters will always inject AC waveforms (current ripple) into the battery but the

magnitude and frequency content of the ripple can be designed beforehand.

Battery manufacturers typically provide data sheets showing how the batteries

perform under constant current charging or discharging. They do not give any indication

on how a battery responds under pulsed current conditions which is the case in many

instances depending on the converter topology which has been implemented. It is also

known that the lifetime of a battery depends to a large extent on how the battery is

Page 12: Sritharan Thuwaragan 201206 MASc Thesis

Chapter 1. Introduction 3

(a) Battery subjected to pulsed current (b) Battery subjected to quasi-constant current

Figure 1.1: Two possible methods of interconnecting battery storage to a grid.

charged and discharged; pulsing is known to be detrimental to battery lifetime. More-

over, a battery’s response to current pulses near a fully charged state versus a nearly

discharged state is different. Hence, in designing a controller and choosing a converter,

the dynamic conditions have to be considered for over the full operating range of the

battery. Unfortunately, there are currently no good models available that can be used to

characterize a battery’s response to arbitrary charging and discharging current pulses.

Although some studies on the behaviour of batteries under pulsed currents [1, 2]

and constant current [3] exist, they deal mostly with the influence of the ambient tem-

perature. The transient self-heating effect due to time varying current profiles is not

accounted for. Self-heating impacts the electrolyte conductivity as well as the electro-

chemical reaction rate at the electrode/electrolyte interfaces. Excessive heating can lead

to undesirable reactions within the battery and ultimately a reduction in the lifetime. A

model that incorporates the effect of self-heating in a rigorous manner is currently not

available.

Pulse characterization has been done [4] but in hybrid applications where the

battery is placed in parallel with a capacitor; the purpose of the capacitor is to condition

the battery current so that it sees a nearly continuous current and thus the battery

lifetime is extended. There are also studies on the effect of pulsed currents which show

Page 13: Sritharan Thuwaragan 201206 MASc Thesis

Chapter 1. Introduction 4

the battery characteristics as the battery performance is degraded [5]. However, there has

been no notable work done in testing a battery subjected to various current waveforms,

representing the real environment.

1.1 Objectives

The objective of this thesis is to explore the impact that different current wave-

forms have on the behaviour of the battery. Of particular interest are the waveforms that

would be typically seen at the converter output, which are square (pulse width modu-

lated converter with a floating bus, boost or flyback converter operating in the continuous

current conduction mode), near symmetrical triangular (buck in discontinuous, or contin-

uous current), and rectified sinusoidal currents (high frequency link resonant converters

with the rectifier output connected across the battery). Fig. 1.2 shows the categoriza-

tion of the current waveforms and associated converter type. The diagram is not meant

to provide an exhaustive treatment of all possible converter types. Nevertheless, most

waveforms can be fit into one of the aforementioned categories.

The thesis makes a contribution in terms of deepening our understanding of how

the waveform variables, (the average current, ripple frequency, and ripple amplitude)

impact the battery response assuming a steady state charging or discharging profile. To

understand how batteries behave under sudden changes in currents, pulses are also ap-

plied. The ultimate goal is to establish design guidelines for converters that are conducive

to an optimized battery performance; minimizing the number of charge-discharge cycles

for a given specification and maximizing battery lifetime.

Page 14: Sritharan Thuwaragan 201206 MASc Thesis

Chapter 1. Introduction 5

Figure 1.2: Characterization of switch-mode converters by current waveforms.

1.2 Outline

The fundamental electrochemical concepts of an electrode-electrolyte interface are

introduced in Chapter 2. The voltage response to changes in current are described. A

simplistic physical model for the interface is introduced and used to create a simple

electrical model of the battery. An overview of the three commonly used rechargeable

batteries is also given in this chapter. In Chapter 3, test results are presented for constant,

Page 15: Sritharan Thuwaragan 201206 MASc Thesis

Chapter 1. Introduction 6

triangular and sinusoidal current charge and discharge as well as pulsed currents. Chapter

4 summarizes the results of this thesis and areas where future work is required. The

circuit designed to create the various waveforms used to test the battery is presented

in Appendix A. The design, simulation, and the characteristics of the circuit are also

included in this Appendix. Software developed to analyze the data, along with the

associated documentation is presented in Appendix B.

Page 16: Sritharan Thuwaragan 201206 MASc Thesis

Chapter 2

Introduction to Batteries

Batteries can be categorized into two groups as either primary (single use) or sec-

ondary (rechargeable) cells. Primary batteries undergo a non-reversible electro-chemical

reaction and hence are designed for single discharge purposes. On the other hand,

the electro-chemical reactions in secondary batteries are reversible allowing for multi-

ple charge-discharge cycles. The following secondary batteries are most prevalent today:

lead-acid, nickel based, and lithium ion based batteries. This chapter will introduce some

of the basic operating principles of batteries along with specific information on these three

battery types.

2.1 Electrochemical Cell Overview

The basic structure of a battery consists of two electrodes (called the anode and

the cathode) which are separated by an electrolyte as shown in Fig. 2.1. Each of the

electrodes is connected to a current collector which is connected to the external tabs.

The current collectors are chosen such that they are chemically inactive in the operating

conditions of the battery including the voltage, pH and the species involved in the electro-

7

Page 17: Sritharan Thuwaragan 201206 MASc Thesis

Chapter 2. Introduction to Batteries 8

chemical reactions. A battery operates by undergoing an oxidization reaction (an increase

in the oxidation state in which electrons are produced) at the anode. The electrons then

recombine at the cathode by a reduction reaction (a decrease in the oxidation state).

The individual reactions as well as the net reaction is a chemical change of the form

of 2-1. Unlike chemical redox (reduction/oxidation) reactions where both oxidation and

reduction occur together, an electro-chemical reaction has a partial reaction occurring

at one electrode interface and the other partial reaction occurring at the other electrode

interface. The external circuit provides the channel for electron transport.

Partial Reaction 1 : A −→ A+ + e− (2-1)

Partial Reaction 2 : B+ + e− −→ B

Net Reaction: A + B+ −→ A+ + B

Figure 2.1: A typical battery model [6].

The active component of the electrode is attached to the current collector. A

highly porous structure is fabricated to maximize the surface area that is exposed to the

electrolyte, thereby increasing the number of reaction sites available per unit volume.

The pores are designed such that they are large enough to allow the active species within

Page 18: Sritharan Thuwaragan 201206 MASc Thesis

Chapter 2. Introduction to Batteries 9

the electrolyte to move freely within the pores but small enough to maximize the surface

area. The structure of these pores varies depending on the chemistry and the desired

characteristics such as cell voltage and safety. For example, in lithium ion batteries the

cathode can be a layer, spinal or olivine structure (Fig. 2.2). The anode is usually made

up of graphene. However there is ongoing research in creating new structures such as

nanowires [7, 8] which provide very high surface area at the electrolyte interface allowing

for higher currents.

Figure 2.2: Schematic illustrations on the crystal structures of (a) LiCoO2 (layered structure),(b) LiMn2O4 (spinel structure), and (c) LiFePO4 (olivine structure [9]).

The electrolyte can be either in a liquid or solid state and is made up of free ions

that are responsible for the transfer of charge. Liquid electrolytes can be an aqueous

solution, an organic solvent, or an ionic liquid. Aqueous solutions (composed of highly

solvated ions in water) are the least viscous and provide the highest electrical conductiv-

ity. However, when the battery potential is higher than that of water (1.23V), hydrogen

or oxygen gas will evolve. Therefore, a non-aqueous solution must be used if the cell

voltage is to exceed 1.23V. Organic solvents provide a higher potential window and are

used when the voltage or potential window is too large for aqueous solutions. Ionic liq-

uids are salts that are liquid at room temperature and have the highest viscosity of the

three types of electrolytes, and as such have a relatively low conductivity [10]. They are

primarily used in higher temperature applications (as conductivity increases at higher

temperatures) or applications where a potential window of up to 6V is needed.

Page 19: Sritharan Thuwaragan 201206 MASc Thesis

Chapter 2. Introduction to Batteries 10

2.2 Electrode-Electrolyte Interface

For illustrative purposes, and for simplicity, aqueous electrolytes will be used in the

following discussion. At the electrode-electrolyte interface, an electric double layer arises

due to the presence of ions in the electrolyte and the dipole nature of water molecules

(Fig 2.3). The electrons at the surface of the electrode attract water molecules that

reorient themselves and become adsorbed onto the surface and this layer of adsorbed

ions is called the Inner Helmholtz Plane (IHP). In the electrolyte, the dissolved ions are

surrounded by water molecules, and are attracted to the surface due to the electrostatic

forces between the positive ions in the solution and the electrons at the surface of the

electrode. The first layer of attracted cations in the electrolyte form a layer known as

the Outer Helmholtz Plane (OHP). These two planes form the electrical double layer.

Figure 2.3: Formation of the electric double layer [11].

Consider the case of a silver electrode in an aqueous silver nitrate electrolyte. At

the electrode, the silver atoms exist in a solid state (Ag(s)) while the electrolyte consists

of silver ions (Ag+(aq)). The reduction potential is the tendency of the species to be reduced

Page 20: Sritharan Thuwaragan 201206 MASc Thesis

Chapter 2. Introduction to Batteries 11

(gain an electron), and in the case of silver, 2-2, this potential is +0.799V.

Ag+(aq) + e− −→ Ag(s) (2-2)

This potential drop is seen across the electrode-electrolyte interface and leads to an inter-

facial electric field and the formation of the electrical double layer. Inside the battery, two

such double layers are formed (one at the anode and one at the cathode) and the sum-

mation of these double layer voltages give rise to the open cell potential when measured

externally.

Inside a battery, the movement of ions in the electrolyte is governed by two forces:

the electric field and the concentration gradient. When no external forces are applied, the

ions in solution are equally distributed in the electrolyte except in the region in very close

proximity of the electrodes. However, when an external current is applied, a concentration

gradient appears well beyond the interface. Consider the electroplating of silver (2-2)

where an external power supply is connected at time t=0. At t=0−, the concentration

of Ag+(aq) at the surface is 0 (as silver is in it’s solid form on the electrode), while it

is uniformly distributed in the electrolyte. At t=0+, the ions immediately adjacent to

the electrode begin to be electroplated, reducing the concentration of Ag+(aq) near the

surface. This leads to diffusion which brings additional silver ions to the electrode.

At equilibrium, this produces a concentration gradient where the concentration at the

surface is at 0, while in the bulk (sufficiently far from the surface) the concentration is

unaffected, as shown in Fig. 2.4. The region where the concentration gradient appears

is called the diffusion layer.

In the example above, the system changed from that of one where the concen-

tration of the Ag+(aq) adjacent to the surface was the same as the bulk to one where the

ions have a lower concentration immediately adjacent to the surface. This has the effect

of increasing the width and changing the capacitance of the electric double layer. The

current that is responsible for the charging and discharging of the double layer is referred

Page 21: Sritharan Thuwaragan 201206 MASc Thesis

Chapter 2. Introduction to Batteries 12

Figure 2.4: Formation of a concentration gradient at the electrode-electrolyte interface.

to as the non-Faradaic current, double layer current, or displacement current and does

not involve any chemical reactions and hence no electron transfer. Faradaic current is

the term given to the current caused by a chemical reaction in which electron transfer

occurs at the surface of the electrode. Continuing with the electroplating example, at

t=0− there is no current in the system. At t=0+, a faradaic current begins to flow which

causes the electroplating as well a non-faradaic current which is responsible for the change

in the double layer. When the concentration gradient reaches an equilibrium, only the

faradaic current is present. Hence the non-faradaic current is in response to the change

in potential at the electrode.

Two methods, which are duals of each other, are possible for powering a cell:

apply a voltage source or apply a current source. For simplicity, if a planar electrode

(and hence a one dimensional system) is used , an externally applied potential step results

in an output current whose limits are governed by Cottrell’s equation [12, p. 239]

i =nFC∞D

1/2

πt1/2(2.1)

where n is the number of electrons per atom, F is Faraday’s constant, C∞ is the con-

centration of the species in the bulk, D is the diffusion coefficient and t is the time.

It is assumed that there is no external resistance and that the electrolyte is a perfect

Page 22: Sritharan Thuwaragan 201206 MASc Thesis

Chapter 2. Introduction to Batteries 13

conductor. This results in a maximum possible current that it shown in Fig. 2.5(a). Im-

mediately after the potential is applied, the theoretical maximum current goes to infinity

due to the high concentration of the electrochemically active species at the electrode

species. As the concentration gradient is formed, this current drops off to a steady state

value which is limited by the transport of new ions to the electrode from the electrolyte.

When a current step is applied externally such that the current is higher than the

maximum amount sustainable, a similar result occurs (Fig. 2.5(b)) and is governed by

Sand’s equation [13]:

iτ 1/2 =nFC∞D

1/2π1/2

2(2.2)

The time when the species at the electrolyte surface reaches zero (i.e. the current is no

longer sustainable) is labelled as τ (refer to Fig. 2.5(b)). The value of τ is experimentally

determined and is a function of the applied current. When the current is applied, a

potential change occurs across the interface and starts the electroplating process. As the

concentration gradient forms, the potential at the interface increases slightly to promote

the charge transfer, until the concentration gradient is fully formed. This occurs when

the required current is greater than the rate at which the active species at the surface is

replenished by diffusion. At this time, the interfacial potential increases rapidly until new

and often undesirable reactions, such as the evolution of hydrogen gas, are promoted.

Although Cottrell’s equation and Sand’s equation are for one dimensional flow,

they can still be applied to batteries where although the surface is porous and non-

planar, the flow is mostly limited to one direction. The equations govern the diffusion

limiting constraints for the current at each electrode. Cottrell’s equation shows that

one can, in theory, impose a large current, but for a short duration. Sand’s equation

on the other hand describes the effect of this large current on the potential across the

electrode-electrolyte interface. It also gives the maximum duration this current can be

imposed before unwanted reactions begin to occur. Beyond this duration, the faradaic

Page 23: Sritharan Thuwaragan 201206 MASc Thesis

Chapter 2. Introduction to Batteries 14

current disappears (due to the diffusion limitation) and the current goes towards charging

the double layer to a higher voltage until new unwanted chemical reactions occur. For

example, given a system where the maximum DC current is 1A, one can, ignoring all

losses, apply a current pulse larger than this provided the duration of the pulse is shorter

than the time constant τ . For illustrative purposes, assume a pulse of 10A is applied, and

the value of τ is measured to be 4s. Then, using Sand’s equation, one can calculate that

a pulse of 20A can be applied for 1s. Alternatively, any other pulse current durations

are possible so long as the product of i · τ 1/2, which is a constant for a given system, is

satisfied.

(a) Response of Cottrell’s equation (b) Response of Sand’s equation

Figure 2.5: Cell response to a step in the a) applied voltage, and b) applied current assuminga perfectly conducting electrolyte and electrode.

Page 24: Sritharan Thuwaragan 201206 MASc Thesis

Chapter 2. Introduction to Batteries 15

2.3 Electrochemical Impedance Spectroscopy

Electrochemical Impedance Spectroscopy (EIS) is a small signal perturbation

technique used to characterize electrochemical systems by superimposing an AC sig-

nal, which is frequency swept, on a DC signal and measuring the resulting small signal

AC impedance. The measured impedance is broken into it’s real and imaginary compo-

nents and these components are plotted against each other. The shape of the impedance

can then be used to create a circuit model for a particular DC operating point. For

example, a parallel combination of a resistor and capacitor produces a half-circle in the

impedance spectroscopy plot as shown in Fig. 2.6. A typical electrode interface produces

an impedance similar to the one shown in Fig. 2.7, and a typical EIS for a lithium ion

battery is shown in Fig. 2.8. The diagonal line is due to diffusion limits and is modelled

by the Warburg impedance [14] (ZW in the figure).

(a) Impedance [15] (b) Circuit Model

Figure 2.6: EIS with no DC bias resulting in a) the measured impedance , and b) the RCcircuit that models the measured impedance.

Page 25: Sritharan Thuwaragan 201206 MASc Thesis

Chapter 2. Introduction to Batteries 16

Figure 2.7: EIS for a typical electrode electrolyte interface where Rct is the charge transferresistance and Cd is the double layer capacitance [16].

Figure 2.8: EIS for a lithium battery from [1] as a function of charge-discharge cycle number.

Page 26: Sritharan Thuwaragan 201206 MASc Thesis

Chapter 2. Introduction to Batteries 17

2.4 Battery Model

Assuming no diffusion rate limits and a large fraction of accessible active sites,

the battery can be modelled in circuit form using the circuit proposed in [17] (Fig. 2.9).

Cdl represents the double layer capacitance across the interface while Rs models the

resistance of the electrolyte. The faradaic reaction that takes place at the interface is

modelled as a series combination of Rf and Cφ. Rf represents the faradaic resistance

and can be calculated from the slope of the applied overpotential to the current in the

Butler-Volmer equation [18, 19]. The pseudo-capacitance that arises from the faradaic

current is Cφ [17].

Figure 2.9: Electrode-electrolyte circuit model proposed by Conway [17].

A battery model can be constructed by utilizing the above interfacial model as

shown in Fig. 2.10. The added resistors RCC Cathode and RCC Anode represent the energy

lost between the active electrode sites and the external battery terminal. This also

accounts for the fact that the current flowing into the porous electrode material is flowing

through a network and thus the effective cross section for the current flow is restricted.

Hence the effective resistance from the interface to the collector is high. It is important

to note that the values of the capacitors and resistors in the circuit models are a function

of the operating point (the DC current, temperature, state of charge, etc.). Also the

values for the anode are not necessarily the same as that of the cathode.

Page 27: Sritharan Thuwaragan 201206 MASc Thesis

Chapter 2. Introduction to Batteries 18

Figure 2.10: Simplified battery equivalent circuit, ignoring diffusion rate limiting phenomenaand assuming a large number of accessible active sites.

2.5 Lead Acid

Lead acid batteries were the first type of rechargeable batteries and were invented

by Gaston Plante in 1859. The half cell reactions and the overall reaction for the lead

acid battery is shown in 2-3. When fully charged, one electrode is lead while the other

is lead dioxide. As the battery is discharged, both electrodes are converted into lead

sulphate. Also, from the chemical formula, we see that the acidity of the sulphuric acid

is reduced (due to the hydrogen sulphate being consumed). The solvating of compounds

decreases the freezing point of water (know as freezing point depression). Therefore, the

electrolyte in a fully discharged battery has a higher freezing point and can be prone to

freezing during cold temperature operation.

Page 28: Sritharan Thuwaragan 201206 MASc Thesis

Chapter 2. Introduction to Batteries 19

discharge: Pb + PbO2 + 2 HSO−4 + 2 H+ −→ 2 PbSO4 + 2 H2O (2-3)

anode: Pb + HSO−4 −→ PbSO4 + H+ + 2 e−

cathode: PbO2 + HSO−4 + 3 H+ + 2 e− −→ PbSO4 + 2 H2O

The two main types of lead acid batteries are flooded and valve regulated. Flooded

batteries, the earliest type, required constant maintenance. Electrolysis of water in the

electrolyte occurs when the battery is overcharged, resulting in the removal of water from

the battery. Therefore, it is necessary to check the electrolyte level on a regular basis and

add water to the battery as needed. Valve regulated lead acid (VRLA) batteries are also

known as maintenance free batteries since they contain catalysts that promote hydrogen

and oxygen to recombine and form water.

As lead acid batteries have been in use for over a century, their cost is considerably

less than other rechargeable batteries. Also many variations in cell structures are available

for use in either high power applications or as a high energy density variant. However,

due to their weight, their relative energy and power densities compared to newer battery

chemistries remain low. The weight also limits the use of this type of battery to stationary

applications where this is not an issue. The only notable exception is their widespread

use in automobiles.

2.6 Nickel Based Batteries

The first appearance of nickel based batteries were in the form of nickel-cadmium

(Ni-Cd). The half cell reactions and the overall reaction for Ni-Cd batteries is shown

in 2-4. Unlike the lead-acid batteries of the time, these batteries were sealed and did

not require any maintenance. As Ni-Cd batteries were lighter than lead-acid batteries of

Page 29: Sritharan Thuwaragan 201206 MASc Thesis

Chapter 2. Introduction to Batteries 20

similar capacity, they had a higher energy density and therefore were favoured in portable

applications. Due to the presence of cadmium (a toxic heavy metal) these batteries

present an environmental hazard. Ni-Cd batteries exhibit a phenomenon known as the

memory effect wherein a battery that is not fully discharged for extended periods of time

loses some of its capacity - the nickel electrode undergoes a change in it’s structure if left

charged and this reduces the available capacity of the cell [20].

discharge: Cd + 2 NiO(OH) + 2 H2O −→ Cd(OH)2 + 2 Ni(OH)2 (2-4)

anode: Cd + 2 OH− −→ Cd(OH)2 + 2 e−

cathode: 2 NiO(OH) + 2 H2O + 2 e− −→ 2 Ni(OH)2 + 2 OH−

The cadmium was replaced by alloys capable of absorbing the hydrogen atoms,

leading to the development nickel-metal hydride (Ni-MH) batteries (2-5). The com-

position of the hydride forming alloy (the active material of the anode) influences the

performance of the battery including the voltage profile and the energy density [21].

discharge: MH + NiO(OH) −→ M + Ni(OH)2 (2-5)

anode: MH + OH− −→ H2O + M + e−

cathode: NiO(OH) + H2O + e− −→ Ni(OH)2 + OH−

Both Ni-Cd and Ni-MH batteries have similar charge characteristics (including

voltage and temperature profiles). They can be charged with the same charger [22]. There

are two types of chargers that are available for consumer applications: slow chargers and

fast chargers. The older devices, slow chargers, work by charging the battery at a low

current for a fixed period of time. These chargers do not have any sensors to monitor the

battery and will continue to charge the battery even when the battery is fully charged.

Page 30: Sritharan Thuwaragan 201206 MASc Thesis

Chapter 2. Introduction to Batteries 21

The excess charge is converted into heat and can damage the battery. Fast chargers

have sensors that determine when the battery is fully charged. Although many different

charging algorithms have been proposed [23, 24], they all rely on monitoring either the

voltage or the temperature. As the battery is charged, the cell voltage rises until the cell

is fully charged. after which the voltage actually begins to drop and the temperature

rises sharply (Fig. 2.11) as the energy used to charge the battery is converted into heat.

By detecting either the negative voltage change or the sharp increase in temperature, the

chargers are designed to prevent the batteries from being overcharged.

Figure 2.11: Typical charging profile for Ni-MH and Ni-Cd batteries [22].

2.7 Lithium Based Batteries

The use of lithium-ions for energy storage was first reported in a paper in 1976

[25]. Lithium appeared as a promising means of storing energy, as lithium is relatively

light (being the third element on the periodic table) and is the strongest reducing agent

(releasing the most energy during oxidation), thus giving it a high energy to weight ratio.

The high reactivity also makes lithium a more difficult material to use compared to other

battery chemistries. When exposed to moisture in the air, lithium reacts violently with

the water molecules. Therefore, special consideration must be made when storing lithium.

Also, for commercial batteries using this technology, the structural integrity of the cell

Page 31: Sritharan Thuwaragan 201206 MASc Thesis

Chapter 2. Introduction to Batteries 22

must be considered to ensure the cell remains sealed when damaged.

The anode of a lithium battery typically consists of lithium atoms stored between

sheets of carbon graphite through a process knows as intercalation. When surrounded

by carbon this way, the lithium remains stable, as it is isolated and cannot participate

in reactions. In the cathode, the lithium is intercalated through a more complex porous

structure (Fig. 2.2). The first commercialized lithium-ion batteries used lithium cobalt

oxide, as well as manganese dioxide and iron phosphate. The transitional metal at the

cathode is reduced to a lower oxidation state during discharge, with the electron being

supplied by lithium. The half-cell reactions as well as the total reaction is shown in 2-6.

discharge: xLi(graphite) + Li1−xCoO2 −→ LiCoO2 (2-6)

anode: xLi(graphite) −→ xLi+ + xe−

cathode: Li1−xCoO2 + xLi+ + xe− −→ LiCoO2

Further research efforts continue to develop new cathode materials containing

different transitional metals and structures. These are designed by various manufactur-

ers and are tuned for the cell voltage, safety and weight restriction of the application.

These metals can be mixed together to form such electrodes as LiCo1/3Ni1/3Mn1/3O2,

LiNi1/2Mn1/1O2, or any other conceivable combination.

As the open cell voltage can vary between 3V up to 4.2V, depending on the

electrode materials, aqueous electrolytes cannot be used since water electrolyses at 1.23V.

Therefore, lithium salts such as LiPF6 and LiBF4 dissolved in organic solvents are used.

The high cell voltage, in conjunction with the organic electrolyte, cause the formation

of a Solid Electrolyte Interface (SEI). The SEI layer forms during the first few charging

cycles of the cell. The SEI forms a solid coating at the anode which is actually beneficial

because it creates a protective barrier around the graphite. However, the SEI layer is

Page 32: Sritharan Thuwaragan 201206 MASc Thesis

Chapter 2. Introduction to Batteries 23

porous enough to allow lithium ions to pass through while adding only a slight internal

resistance. When cells are overcharged, unwanted growth of the SEI layer occurs which

increases the resistance of the cell.

The biggest issue with lithium-ion batteries are their delicate range of operation.

Care must be taken during charging and discharging to ensure that the battery is not

pushed to its limits (especially high currents which can lead to cell heating). In consumer

electronics, this is usually done by on-board electronics outside the individual cells but

integrated into the overall battery unit. Since batteries can be made up of multiple cells,

each cell must have its own monitoring circuit, which adds to the weight and size of the

battery.

Overcharging a cell can cause problems at both the electrodes. At the anode,

overcharging causes a build up of electrons on the graphite layer with the lithium ions

forming a plate over the anode as they are unable to enter the graphite. The excess

electrons can freely interact with the electrolyte, and in particular the oxygen available

in the organic electrolyte compounds. The availability of excess electrons, oxygen and

lithium ions promotes the formation of lithium oxide that coats the electrode surface

through a non-reversible reaction reducing the overall capacity of the battery. At the

cathode, as the cell is overcharged, oxidization of the transitional metal occurs. For some

transitional metals, this process is relatively safe; however, for high voltage and high

energy storage batteries, this can be a problem. For example, in LiCoO2, the cobalt

changes from a 3+ oxidization state to 4+, which is unstable. According to [26], the

reversibility of LixCoO2 is generally good, but it degrades rapidly when ’x’ is near 0.5.

Therefore, the cathode should not be oxidized to a point where more than half of the

cobalt cells are in the 4+ oxidation state. This principle holds for other materials as well,

although the value of ’x’ varies depending on the metal type. In the experiments carried

out in [26], cell temperatures increased during overcharging, speeding up the oxygen

Page 33: Sritharan Thuwaragan 201206 MASc Thesis

Chapter 2. Introduction to Batteries 24

liberation reaction (as cobalt oxidized from 4+ to 3+) at the cathode even more. This

oxygen is then free to react with the lithium causing further increases to the temperature.

If not caught quickly enough, this results in thermal runaway.

As with overcharging, deep discharge of the battery is a problem. During deep

discharge, a lack of sites for the lithium to be inserted into can cause the following

reaction:

LiCoO2(s) + Li+ + e− −→ CoO + Li2O

Although this is not as dangerous as the overcharging situation, the reaction converts

the cathode into an inert species, reducing the capacity of the battery. Also, during

deep discharges, the monitoring circuit for the cell can permanently shut down the cell

if the voltage drops below a threshold, as a low voltage indication can be a sign of other

problems such as an internal short circuit. As a precautionary measure, the cell is shut

down.

As lithium is intercalated in the anode and cathode for safety, this produces

a bottle neck for high power applications, as the current is limited by how fast the

lithium can be removed and inserted. Recent developments in nanostructures for use in

manufacturing electrodes (which increase the surface area of the electrode) have improved

the rate of lithium extraction and insertion.

Page 34: Sritharan Thuwaragan 201206 MASc Thesis

Chapter 2. Introduction to Batteries 25

2.8 Summary of Battery Chemistries

For comparison purposes, a summary of the characteristics of commonly used

rechargeable batteries is presented in Table 2.1

Table 2.1: Comparison of Secondary Batteries [27, 28]

Lead Acid NiCd NiMH Lithium Ion

Nominal Cell Voltage (V) 2 1.25 1.25 3.6

Energy Density (Wh/kg) 30-50 45-80 60-120 110-160

Energy Density (Wh/L) 60-90 50-150 140-300 210-270

Power Density (W/kg) 180 150 250-1000 1800

Cycle life 200-300 1500 300-500 500-1000

Self Discharge(%) per Month 5 20 30 10

Self discharge in batteries in can be caused by three mechanisms [29]. Immedi-

ately after the battery is charged, the over-potential needed to form the double layer is

dissipated across the faradaic resistor. This process occurs until the over-potential goes

to zero. The second mechanism of self discharge is caused by redox reactions occurring

at an electrode/electrolyte interface in the presence of impurities. If these impurities are

easily reduced/oxidized by the potentials across the interface, then they form a redox

shuttle that diffuse between the two electrodes. These redox shuttles preform the role

of electron transport. The final mechanism that causes self-discharge is internal short

circuits caused by an improper separation of the two electrodes.

Page 35: Sritharan Thuwaragan 201206 MASc Thesis

Chapter 3

Experimental Results and Discussion

In real world applications, the battery load can be considered to be a combina-

tion of a steady state characteristic and a superimposed transient characteristic. It is

convenient to characterize the steady state component in terms of belonging to one of

the following class of loads: constant resistance load, constant current load, or constant

power load. On the other hand, the transient load in most cases must be established on

a case by case basis.

As previously mentioned in the Introduction, the most common charging/dis-

charging strategy is to simultaneously control the current and monitor the voltage to

ensure that the battery state of charge remains bounded; not excessively overcharged

or discharged. There have been many articles written describing how batteries should

be charged or discharged. These methods are similar in many respects but the design

approaches taken have been by and large heuristic since the details of the battery model

are still not well understood. As mentioned earlier, batteries prefer to be charged or

discharged at a constant rate but can tolerate slow changes from one rate of current

charge/discharge to another. Bounds on acceptable rates are currently established on

the basis of a qualitative analysis.

26

Page 36: Sritharan Thuwaragan 201206 MASc Thesis

Chapter 3. Experimental Results and Discussion 27

The circuits used to control the current are for the most part switch-mode power

supplies. The use of these power supplies ensure that the efficiency of the conversion

process remains high. As described in the introduction and shown in Fig. 1.1, there

are many switch-mode power supplies on the market so to focus on just one circuit is

not warranted. However, it can be stated that the current waveforms produced by these

power supplies generally fall into one of the following classes: pulsed square current,

triangular current and rectified sinusoidal current. The average current produced by

these power supplies can be controlled so what is important is the width of the pulses,

the amplitude of the pulses and the repetition rate of the pulses. This information would

be used to characterize the steady state operation of the battery.

Transient behaviour cannot be characterized as easily and so for the time being we

inject a square pulse of specific amplitude and pulse width and observe how the battery

behaves.

3.1 Experimental Setup

To understand the behaviour of batteries subjected to different current waveforms,

a battery tester circuit was first built. As the experiments were to be carried out on AA

batteries, we only needed a low current experimental setup (around 15A maximum).

Although a switch mode supply could have been built, the linear amplifier was easier to

design for our purposes and the efficiency of the power supply was not an issue. The

circuit was designed to provide a) constant current, b) triangular and rectified sinusoidal

currents of varying frequency, amplitude and ripple and c) pulsed currents. The circuit

was also designed for both charging and discharging of the battery. Complete circuit

details including simulations and circuit behaviour can be found in Appendix A.

Data collection was done using an 8 channel synchronously sampled Agilent data

Page 37: Sritharan Thuwaragan 201206 MASc Thesis

Chapter 3. Experimental Results and Discussion 28

logger. The data logger consists of two data samplers (model U2542A1), each capable of

four channel analog inputs with a sampling rate of 500KSa/s and a 16-bit resolution. The

acquisition cards were connected to the circuit using a terminal block (model U2901A2).

The cards were housed in a six slot chassis (model U2781A3) which was connected to a

computer along with the provided customized software. The sampling rate can be varied

from 1Sa/s up to 500KSa/s with the number of samples varying from 1 to 2, 000, 000.

The custom software from Agilent allowed the acquisition to be controlled by a

pulse from an external source (the FPGA on the battery tester circuit in this case -

refer to AppendixA). The leading edge of the pulse triggers data acquisition at the set

sampling rate and the number of samples specified in the software. After the data is

acquired, it is then stored in a .csv file format and the data logger waits for the next

sampling pulse. Due to limitations in the processing of the data, the next sampling pulse

cannot be sent until the previous data is written to the hard drive. This writing time

varies linearly with the number of data points per sample. If, however, a sampling pulse

is sent before the system is finished with the previous set of data, the pulse is simply

ignored by the data logger.

A MATLAB GUI was coded in order to process the acquired data. The GUI

is able to display the waveforms against time or other waveforms, or the instantaneous

power over time. The GUI is also capable of overlapping the pulses on top of each to

make comparisons easier. The details of the MATLAB code can be found in Appendix B.

As we wanted to be able push the battery to its limits (in terms of applied cur-

rent) while keeping the current relatively low (to reduce component size), AA recharge-

able batteries were chosen. Currently, the two main types of rechargeable batteries are

1http://www.home.agilent.com/agilent/product.jspx?cc=CA&lc=eng&ckey=1250149&nid=-35073.739736.00&id=1250149

2http://www.home.agilent.com/agilent/product.jspx?cc=CA&lc=eng&nid=-35075.384475&pageMode=OV&cc=CA&lc=eng

3http://www.home.agilent.com/agilent/product.jspx?nid=-33621.0.00&cc=CA&lc=eng

Page 38: Sritharan Thuwaragan 201206 MASc Thesis

Chapter 3. Experimental Results and Discussion 29

lithium-ion and nickel based. As lithium batteries have a stricter range of operation and

are more dangerous if overcharged, Ni-MH batteries were chosen (specifically Energizer

NH15-2300mAh4 due to their availability). The experiments were conducted on a cell

and repeated to verify the results. As batteries lose capacity with each charge/discharge

cycle, the cells were replaced after a few tests.

Since batteries come in different sizes, it is not practical to compare batteries of

different sizes at the same current. A scaling of the battery is done using the C-rate

to normalize the charging/discharging current to the battery capacity such that at 1C

current, a battery is fully charged/discharged in one hour. The current at any given

C-rate is the current needed to fully discharge the battery in 1C

hours assuming no loss

in battery capacity. Therefore, for a battery rated at 1Ah, the 1C and 2C charging rates

are 1A and 2A, respectively, while a battery rated at 2Ah has a 1C current of 2A.

3.2 Constant Current Charging and Discharging

Constant current waveforms were first applied to the battery for the purpose of

understanding the battery response including the voltage profile, variations in the in-

ternal resistance and variations in the cell capacity at different currents. As battery

capacity decreases with increased current, a charging rate of C/2 was used as the control

current to determine the capacity of the battery and to confirm the manufacturer’s claim

of 2300mAh. When charging the battery, the tests were terminated when the battery

reached full charge as indicated by either a negative delta V or once the cell voltage

reached 1.6V (higher voltages promote the decomposition of water and the evolution of

hydrogen and oxygen gases). The resulting cell voltage for C/2 during constant charging

is plotted in Fig. 3.1. At this charging rate, the battery capacity is 101% of the manu-

4http://data.energizer.com/PDFs/nh15-2300.pdf

Page 39: Sritharan Thuwaragan 201206 MASc Thesis

Chapter 3. Experimental Results and Discussion 30

facturer’s claim, and the error can be attributed to the need to overcharge the battery

in order to get the negative delta V.

Figure 3.1: Cell voltage response for constant current charge at 0.5C.

For higher currents, we can make a prediction of the waveforms by using a shift

in the voltage that corresponds to the internal resistance of the battery. In this case,

the battery has an internal resistance of 40mΩ (given by the manufacturer’s datasheet)

and by shifting the voltage of the C/2 charge rate results one obtains the plot in Fig.

3.2. From this, we can see that as the current increases, the 1.6V cutoff voltage should

come into effect before the battery is fully charged and hence a decrease in cell capacity

is expected. The figure shows that the cutoff voltage 1.6V is reached at about 92% at

1C and 65% at 2C.

The experimental results verify the prediction of the voltage shift caused by the

internal resistance. The experimental waveforms are seen in Fig. 3.3 and a summary

of the results is given in Table 3.1. Note that before each run, the battery was fully

discharged using a rate of C/2 to ensure similar starting states. The measured cell

temperatures (using a temperature gun) are also included in the table. The values

were recorded near the midpoint of the charge. However, there is an uncertainty on

Page 40: Sritharan Thuwaragan 201206 MASc Thesis

Chapter 3. Experimental Results and Discussion 31

(a) Percentage of Cell Capacity (b) Time Scale

Figure 3.2: Predicted cell voltage waveforms during charging using internal battery resistanceto calculate IR voltage drop as function of a) battery capacity and b) time.

determining the midpoint as it was based on the predicted waveforms. Also, the battery

heats up over the duration of each test. Therefore, the temperature values presented

may be slightly underestimated and may not represent the steady state value for a given

charge/discharge cycle. For this set of tests, only the C/2 rate of charge showed the

negative delta voltage to indicate a complete charge, while the others were limited by

the cutoff voltage. The results show that there is a large drop in the capacity when

the charging current increases and the battery is only charged to a third of its capacity

during a 3C rate. This is the main reason why quick chargers often charge a battery at

a fast rate (to allow for quick partial charging) followed by a slower rate to insure that

the battery is fully charged. The slow charge allows active sites deep in the pores to be

populated and is used after most of the readily accessible surface sites are populated.

The results show a much higher capacity than was predicted and this can be

attributed to the battery temperature. At the 3C charge rate, the battery temperature

was observed to rise to 46C and this rise in temperature would result in a decrease of

the internal resistance of the battery. A similar, albeit smaller, increase in temperature

was observed for the other charging currents. This results in a lower battery voltage

(as shown in Fig. 3.3), attributed to a drop in the voltage across the electrolyte region,

Page 41: Sritharan Thuwaragan 201206 MASc Thesis

Chapter 3. Experimental Results and Discussion 32

(a) 0.5C Charge (b) 1C Charge

(c) 2C Charge (d) 3C Charge

Figure 3.3: Cell voltage response for constant current charge at 0.5C, 1C, 2C and 3C alongwith the predicted voltage response.

Table 3.1: Constant Current Charge

Current T ime Capacity Capacity Energy Vavg Rint Temperature

(C-rate) (A) (s) (mAh) (%) (kJ) (V) (mΩ) (C)

0.5 1.099 7633 2330 101.3 12.27 1.463 40 27

1 2.230 3409 2112 91.8 11.30 1.487 35 36

2 4.570 1392 1767 76.8 9.818 1.543 31 43

3 6.790 406 766 33.3 4.370 1.585 30 46

thus allowing the battery to charge for a longer time before the cutoff voltage is reached,

giving rise to the higher than predicted capacity. By curve fitting the predicted charge

Page 42: Sritharan Thuwaragan 201206 MASc Thesis

Chapter 3. Experimental Results and Discussion 33

profile to the experimental results, the internal resistance of the battery was calculated.

The results are included in Table 3.1. It is important to note that this does not take

into account the thermal time constant (since the battery is at room temperature at the

start of the test and rises to near steady state a specific time later). We assume that this

thermal time constant is much smaller than the charge time.

A similar experiment was carried out for constant current discharge, where the

tests were terminated once the cell voltage reached 0.9V . The results from the C/2 dis-

charge current (Fig. 3.4) show that the voltage of the battery remains fairly constant

until approximately 80% of discharge, at which point it falls relatively quickly. This

is in contrast to the charging profile, where the battery voltage showed a steady climb

from around 50% charge. Also, we see that during charging, the voltage of the battery

(at the midpoint of charge) was around 1.45V which is only 0.15V from the cutoff volt-

age, whereas during discharge, the midpoint voltage of 1.25V is 0.35V from the cutoff.

Therefore, we can expect higher discharge currents to be possible, or in this case, a higher

cell capacity. Using only the internal resistance, the predicted waveforms for the higher

currents were calculated (shown in Fig. 3.5). The waveforms indicate that even at a 3C

discharge, we should see around 95% of the cell capacity.

The results of the constant current discharge (voltage profiles are plotted in Fig.

3.6) confirm the predicted cell capacity. As with the charging current, a decrease in

capacity is observed as the current increases, but the decrease is not as significant as in

the charging case and we see a loss of only 10% capacity at 3C. Higher currents were

not tried due to the battery exceeding the manufacturer’s recommended temperature at

a 3C charging/discharging rate. The summary of the results for the constant discharge

is given in Table 3.2.

Page 43: Sritharan Thuwaragan 201206 MASc Thesis

Chapter 3. Experimental Results and Discussion 34

Figure 3.4: Cell voltage response for constant current discharge at 0.5C

(a) Percentage of Cell Capacity (b) Time Scale

Figure 3.5: Predicted cell voltage waveforms during discharge using internal battery resistanceto calculate IR voltage drop as function of a) battery capacity and b) time.

Table 3.2: Constant Current Discharge

Current T ime Capacity Capacity Energy Vavg Rint Temperature

(C-rate) (A) (s) (mAh) (%) (kJ) (V) (mΩ) (C)

0.5 -1.164 6830 2208 96.0 9.879 1.243 40 28

1 -2.230 3510 2198 95.5 9.478 1.198 35 39

2 -4.536 1715 2161 94.0 8.812 1.133 30 49

3 -6.860 1077 2052 89.2 7.800 1.056 30 56

Page 44: Sritharan Thuwaragan 201206 MASc Thesis

Chapter 3. Experimental Results and Discussion 35

(a) 0.5C Discharge (b) 1C Discharge

(c) 2C Discharge (d) 3C Discharge

Figure 3.6: Cell voltage response for constant current discharge at 0.5C, 1C, 2C and 3C.

Page 45: Sritharan Thuwaragan 201206 MASc Thesis

Chapter 3. Experimental Results and Discussion 36

3.3 Triangular and Rectified Sinusoidal Currents

To understand the effect of switch mode converters (and in particular the inductor

shaping of the output current) on the cell performance, triangular current waveforms were

applied to the cell. The first set of tests were performed with a fixed ripple current and

the ripple frequency was varied to determine any frequency dependence of the cell. As

seen in the previous section, a charge rate of C/2 had a negative delta V to indicate

a complete charge. However, this negative delta V would be difficult to detect with a

varying current, so a charge rate of 1C was used as this does not contain the negative

delta V while maintaining a high cell capacity. A ripple current of 0.1C (resulting in a

peak to peak of 0.2C) was chosen for the initial tests.

The results (summarized in Table 3.3) show that when the ripple amplitude is kept

constant the cell has a higher capacity with increasing frequency. The main reason for

this can be explained by the decreasing voltage ripple with increasing frequency (shown

in Fig. 3.7). From the double layer discussion from Chapter 2 (and in particular the

Sand’s equation), we saw that when the current is not limited by diffusion, a large current

can be applied for a short period of time. Therefore, if the cell does not have time to

react to the change in concentration gradient, there will be no potential change across

the interface. This is reflected in the voltage ripple caused by the current ripple (or the

effective impedance of the current ripple), which decreases with increasing frequency.

From the constant current experiments, we know that the cell is capable of delivering a

3C constant current and hence is not diffusion limited in this set of tests (which have a

DC current of 1C). As we are not diffusion limited, another way of looking at this is by

considering the EIS of the double layer and noting that at higher frequencies the double

layer capacitor is a short circuit. From the experimental results, we see that that above

a frequency of around 5kHz, the battery characteristics are dominated by the electrolyte

resistance.

Page 46: Sritharan Thuwaragan 201206 MASc Thesis

Chapter 3. Experimental Results and Discussion 37

Table 3.3: 1C Average Charging Current with 10%C Triangular Current Ripple

Frequency ipk−pk vpk−pk Impedance Capacity Energy

(Hz) C-rate (mA) (mV) (mΩ) (%) (kJ)

1 0.2 595 23 39 79.9 9.511

10 0.2 585 18 33 81.6 9.795

100 0.2 567 17 33 82.4 9.714

1000 0.2 572 16 28 84.9 9.967

5000 0.2 588 16 27 85.4 10.01

10000 0.2 555 15 27 86.2 10.12

DC - - - - 91.8 11.30

The commonly seen current waveforms can be broken down into a Fourier series;

higher frequency components decay rapidly. At higher frequencies, the ripple current has

less of an impact on the voltage ripple across the interfacial layer. Therefore only the low-

est frequency component of the ripple, below 5 kHz for the battery under consideration,

needs to be accounted for. The ripple current component introduces an additional rms

heating term which has an impact on temperature and indirectly impacts the electrolyte

resistance (decreases with increasing current) and to some extent decreases the faradaic

current.

The DC current was next increased to 2C to understand it’s effect on the cell

while maintaining the same ripple current. From the results (shown in Table 3.4), the

ripple frequency did not play a major factor. In these set of tests, with the exception of

the 1Hz ripple, the voltage ripple and hence the impedance remained relatively constant

throughout the frequency range. The probable explanation for the constant impedance

is the cell heating caused by the high DC current. As the temperature increases at

higher currents, the mobility of species in the electrolyte increases. This decreases the

Page 47: Sritharan Thuwaragan 201206 MASc Thesis

Chapter 3. Experimental Results and Discussion 38

(a) 1Hz ripple (b) 10Hz ripple

(c) 100Hz ripple (d) 1kHz ripple

Figure 3.7: Cell voltage response for 1C charge with 0.1C ripple current of varying frequencies.

cell electrolyte resistance. Therefore, at these frequencies, the heating of the cell from

the high current had the largest influence on the cell impedance, resulting in virtually no

frequency dependence.

Using a DC current of 2C, the current ripple was increased from 0.1C to 0.2C,

0.3C and 0.5C. As expected, there was only a slight frequency dependence for a fixed

ripple current, but the capacity decreased as the ripple current was increased as shown

in Fig. 3.8. The main reason for this is that the higher ripple current results in a higher

voltage ripple, which leads to the voltage cutoff of 1.6V coming into effect before the cell

is fully charged. Also, similar to the low current tests, the battery waveforms (in Fig.

3.9) show that there is no noticeable phase shift between the current and the voltage.

Page 48: Sritharan Thuwaragan 201206 MASc Thesis

Chapter 3. Experimental Results and Discussion 39

Table 3.4: 2C Average Charging Current with 10%C Triangular Current Ripple

Frequency ipk−pk vpk−pk Impedance Capacity Energy

(Hz) C-rate (mA) (mV) (mΩ) (%) (kJ)

1 0.2 575 15 27 73.2 8.513

10 0.2 566 13 24 73.1 8.472

1000 0.2 569 15 26 75.5 8.642

10000 0.2 590 13 23 71.2 8.300

DC - - - - 76.8 9.818

A summary of the results is presented in Tables 3.5 (for 0.2C ripple), 3.6 (0.3C ripple),

and 3.7 (0.5C ripple).

Figure 3.8: Effect of ripple current on cell capacity (with a DC current of 2C).

Table 3.5: 2C Average Charging Current with 20%C Triangular Current Ripple

Frequency ipk−pk vpk−pk Impedance Capacity Energy

(Hz) C-rate (A) (mV) (mΩ) (%) (kJ)

1 0.4 1.04 28 27 65.2 7.698

10 0.4 1.05 26 25 66.2 7.809

1000 0.4 1.03 23 23 68.6 8.124

Page 49: Sritharan Thuwaragan 201206 MASc Thesis

Chapter 3. Experimental Results and Discussion 40

Table 3.6: 2C Average Charging Current with 30%C Triangular Current Ripple

Frequency ipk−pk vpk−pk Impedance Capacity Energy

(Hz) C-rate (A) (mV) (mΩ) (%) (kJ)

1 0.6 1.47 38 26 60.7 7.290

10 0.6 1.48 38 26 58.3 7.035

100 0.6 1.50 33 22 64.6 7.779

1000 0.6 1.51 34 22 61.6 7.426

Table 3.7: 2C Average Charging Current with 50%C Triangular Current Ripple

Frequency ipk−pk vpk−pk Impedance Capacity Energy

(Hz) C-rate (A) (mV) (mΩ) (%) (kJ)

10 1 2.55 62 24 51.8 6.479

100 1 2.53 58 23 53.3 6.664

1000 1 2.56 58 23 52.7 6.610

Similar experiments were performed with a half-sine waveform to simulate a rec-

tified converter output. The experiments show that they follow a similar pattern to the

triangular waveforms in that the ripple plays the largest role. From the results shown in

Table 3.8, we can see that the battery shows similar impedance values to the triangular

waveforms, as expected. The waveforms (shown in Fig. 3.10) reaffirm that there is no

phase shift between the current and voltage. That is, the interfacial region can be con-

sidered as a near short circuit at theses frequencies and thus the impedance is purely due

to the electrolyte resistance.

Page 50: Sritharan Thuwaragan 201206 MASc Thesis

Chapter 3. Experimental Results and Discussion 41

(a) 10Hz ripple (b) 100Hz ripple

(c) 1kHz ripple

Figure 3.9: Cell voltage response for 2C charge with 0.5C ripple current.

Table 3.8: 2C Average Charging Current with 1kHz Sinusoidal Current Ripple

ipk−pk vpk−pk Impedance Capacity Energy

(C-rate) (A) (mV) (mΩ) (%) (kJ)

0.2C 0.589 14 24 77.2 8.966

0.4C 1.030 24 24 74.3 8.718

0.6C 1.441 35 24 69.4 8.240

1C 2.498 62 25 61.5 7.539

Page 51: Sritharan Thuwaragan 201206 MASc Thesis

Chapter 3. Experimental Results and Discussion 42

(a) 0.1C ripple (b) 0.2C ripple

(c) 0.3C ripple (d) 0.5C ripple

Figure 3.10: Cell voltage response for 2C charge with 1kHz ripple current

Page 52: Sritharan Thuwaragan 201206 MASc Thesis

Chapter 3. Experimental Results and Discussion 43

3.4 Pulsed Currents

Pulsed currents were applied to the battery in order to understand the battery

behaviour under sudden changes in currents. This replicates the case when a battery

is connected across a DC bus and is fed/discharged by a VSI (Voltage Source Inverter)

from the grid. Although square waves are also quite commonly seen in switch mode

converters, we did not exclusively test this waveform. However, the pulse currents give

us information on the battery behaviour during sudden transitions in current and can be

used to extrapolate square wave behaviour. The pulses also give us information about

the effect of sudden changes in the load. Theoretically, the battery should be able to

source (or sink) a large current provided that the pulse is short enough, as seen in the

previous chapter. In order to verify this, the battery’s immediate response to a pulse

application was observed.

During a 0.5C constant current, a pulse of 1C was applied for 100ms and the

resulting waveforms are shown in Fig. 3.11 along with the predicted voltage response.

When the pulse is first applied, there is an immediate jump in the voltage, followed by a

more gradual increase. The initial jump in voltage is due to the internal resistance of the

battery, while the gradual increase can be attributed to the change in the equilibrium

potential across the electrode-electrolyte interfaces. When we zoom in to the rising edge

of the pulse (Fig. 3.12), the initial voltage jump is around 0.04V (1.27V to1.31V ) which

corresponds to the IR drop of the battery’s internal resistance (0.04Ω× 1.15A). Also, at

the edges of the pulse, we see that the settling time for the voltage is around 1.0ms.

The pulse current was then increased to 2C and the waveforms are shown in

Fig. 3.13. The results are similar to the first test, except with the initial jump being

0.14V (1.28V to1.41V ) which agrees with the expected IR drop. The settling time also

increases slightly to about 1.5ms. This increase in the settling time is expected because

Page 53: Sritharan Thuwaragan 201206 MASc Thesis

Chapter 3. Experimental Results and Discussion 44

(a) Experimental Results (b) Predicted Waveform

Figure 3.11: a) Current pulse response for a 0.5C DC current with a 100ms pulse of 1C chargecurrent, and b) predicted cell response from Sand’s equation.

(a) Zoomed in on the rising edge (b) Zoomed in on the falling edge

Figure 3.12: Cell voltage response for a 0.5C DC current with a 100ms pulse of 1C.

a higher pulse leads to a bigger concentration gradient forming at the electrode interface.

More time is needed for the double layer current to create a new equilibrium. The voltage

change during this period also increased from approximately 0.02V to 0.05V . The results

agree with the double layer voltage response predicted by Sand’s equation.

Discharge currents also produced similar results to those of charging currents.

The resulting waveforms for a 1C pulse discharge are shown in Fig. 3.14.

By plotting the pulse response at various states of charge of the battery, we can

see if there are any variations in the response. As the battery voltage varies with the

Page 54: Sritharan Thuwaragan 201206 MASc Thesis

Chapter 3. Experimental Results and Discussion 45

(a) Complete pulse response

(b) Zoomed in on the rising edge (c) Zoomed in on the falling edge

Figure 3.13: Cell voltage response for a 0.5C DC current with a 100ms pulse of 2C.

state of charge, we need to look only at the voltage change that was a direct result of

the pulse. Therefore, for each pulse, the voltage of the battery 1ms before the pulse was

used as a reference to calculate the voltage change. The results of this experiment in

the charging state (Fig. 3.15), show that when the battery is near its depleted state, the

pulse causes a greater change in voltage. Also, once this initial stage is passed, the state

of charge doesn’t appear to be a factor, although the characteristics mentioned above

(the initial jump in voltage due to IR followed by a slower change) are still present. This

indicates that when the battery is nearly discharged, the battery has a higher internal

resistance. As the electrolyte and the current collectors are not affected by the state

of charge of the battery, this indicates that it is the charge transfer resistance which is

Page 55: Sritharan Thuwaragan 201206 MASc Thesis

Chapter 3. Experimental Results and Discussion 46

Figure 3.14: Cell voltage response for a 0.5C DC current with a 10ms pulse of 1C dischargecurrent.

varying and is larger when the battery is nearly at its discharged state. In the case of

fully discharged Ni-MH batteries, the active species in the cathode consists mainly of

Ni(OH)2 which is a poor conductor. This poor conductivity (reflected as an increase in

the resistor RCC cathode in the small signal model of Fig. 2.10) explains the larger IR drop

seen when the battery is nearly depleted.

Charging the battery does cause an increase in the temperature and hence a

decrease in the resistance. However, the charging rate was quite low and no noticeable

temperature change was noted. To confirm temperature was not a factor, a discharge

was performed in a similar manner with the results shown in Fig. 3.16. From the graphs

we can see that again the battery shows higher resistances when the battery is nearly

discharged. This indicates that this phenomenon is caused by the state of charge. As a

battery consists of two electrode-electrolyte interfaces (the anode and cathode), we cannot

conclude if the higher resistance occurs at the anode, the cathode, or a combination of

both. One would need to test each one separately using a reference electrode, which was

beyond the scope of this thesis.

Page 56: Sritharan Thuwaragan 201206 MASc Thesis

Chapter 3. Experimental Results and Discussion 47

Figure 3.15: Battery response to a 0.5C to 1C charge pulse of 10ms at various states ofcharge. Voltage0 corresponds to the pulse response when the battery is depleted, Voltage25 isthe response when the battery is charged to 25%, etc.

Page 57: Sritharan Thuwaragan 201206 MASc Thesis

Chapter 3. Experimental Results and Discussion 48

Figure 3.16: Battery response to a 0.5C to 1C discharge pulse of 10ms at various statesof discharge. Voltage0 corresponds to the pulse response when the battery is fully charged,Voltage25 is the response when the battery is discharged by 25%, etc.

Page 58: Sritharan Thuwaragan 201206 MASc Thesis

Chapter 4

Conclusion

This thesis explored how current waveforms impact the voltage response of a

battery. These results could in future be used to provide improved guidelines as to

how to charge and discharge a battery. Using a rechargeable Energizer NI15-2300 AA

battery, we showed that in the ideal case of a constant current with no ripple, the battery

behaviour can be easily predicted. Given the voltage profile for a low current charge and

discharge rate, the waveform at any other currents could be determined by shifting the

voltage by the IR drop of the battery. However, care must be taken in considering any

internal temperature changes that can affect the internal resistance of the battery. There

are no models currently available that can incorporate the temperature dynamics due to

self heating.

Triangular and sinusoidal waveforms were applied as these are the types of wave-

forms that would exist for a range of switch mode converters. We saw that when the

average current was relatively low (below 1C resulting in minimal heating), the frequency

of the current ripple had the greatest impact in influencing the battery voltage. At rip-

ple frequencies above 5kHz, the battery exhibited a similar capacity to the DC current.

However, at currents over 2C, the impedance of the battery is not as highly affected by

49

Page 59: Sritharan Thuwaragan 201206 MASc Thesis

Chapter 4. Conclusion 50

the frequency, but rather by the higher temperatures. This indicates that the voltage

modulation across the space charge interfacial regions can be neglected and most of the

voltage drop appears across the electrolyte resistance, which is strongly influenced by

temperature. Therefore, when designing a battery charger, the rate of charge plays an

important role in determining the impact of the ripple current and frequency on the bat-

tery. We saw that in slow charging applications where there is a minimal temperature

increase, a low current ripple amplitude and a high ripple frequency will result in a higher

charge capacity of the battery. Also, one can tolerate a higher ripple current amplitude

at higher frequencies without seeing an increase in the ripple voltage. However, in higher

current applications where there is a significant rise in temperature, the ripple frequency

plays a smaller role. This implies that although the impedance of the battery decreased,

the impedance of the interfacial region must decrease further in order to make the elec-

trolyte resistance dominate. This means that the frequency has to be even higher in

order to lower the impedance representing the space charge zone.

At low currents, the small signal impedance of the battery decreased from 40mΩ

at DC to 26mΩ for high frequency currents. This must be taken into account when

deciding on the size of capacitor that will be placed in parallel to the battery. Usually,

the capacitor is chosen such that the resistance of the capacitor is a tenth of the size

of the battery’s resistance, the combined electrolyte and faradaic resistances, as this

allows the high frequency components to be shunted to the capacitor. What we have not

stated is that there may also be package inductance which would increase the battery

impedance even further. One must first determine the current waveforms the battery

will see (to determine the impedance of the battery), then use this impedance to choose

the appropriate estimated series resistance ESR rating of the capacitor.

The battery exhibited the response predicted by the electrode-electrolyte theory

and showed that there is a short time between when the pulse is applied and a new

Page 60: Sritharan Thuwaragan 201206 MASc Thesis

Chapter 4. Conclusion 51

equilibrium is reached in the battery. This indicated that for any given battery, one

could apply large current pulses with amplitudes that are larger than the maximum DC

current. The pulses are possible because under a non-diffusion limiting DC current, there

are an excess of active species in the electrolyte near the electrode surface. The pulse

utilizes the excess species to provide a short burst of current but only as long as the

active species at the surface can be replenished by diffusion. The variation in the voltage

response to the current pulses also shows the need to consider the full operating range

of the battery when determining the battery response and the maximum current pulse

that can be applied. Therefore, it is necessary to know the maximum pulse that can

be applied at different states of charge. Using this data, two possible methods exist to

ensure the battery remains within safe operating voltages: use the smallest of this set, or

use a controller that limits the current pulse based on the state of charge of the battery.

4.1 Contributions

• For the battery that was used, Energizer’s NH15-2300 AA rechargeable, we showed

that the charging current had a large impact on the cell capacity, whereas the

discharging current was not as significant. The thermal effects of the high current

rates on cell impedance were also measured.

• We showed that with a DC current below 1C (where a minimum amount of self

heating occurs), ripple frequency plays the most important role and the ripple

frequency should be increased to maximize the time the battery can be charged

before the instantaneous voltage reaches the limit of the battery. This premature

cutoff of the charging or discharging current occurs due to the peak of the voltage

ripple hitting the voltage limit. By increasing the frequency of the ripple, the

voltage ripple across the interfacial region (and hence the battery) is reduced.

Page 61: Sritharan Thuwaragan 201206 MASc Thesis

Chapter 4. Conclusion 52

• Under high DC currents (where there is a significant temperature increase), we

observed minimal ripple frequency dependence on battery capacity. This implies

that the impedance of the interfacial zone must be decreased further in order to

make the electrolyte resistance lower than the impedance representing the inter-

facial space charge region. This is accomplished by pushing the frequency even

higher to lower the impedance of the space charge region.

• It was confirmed experimentally that pulse currents result in a behaviour predicted

by electrochemical theory.

4.2 Future Work

Further research is needed to understand how current waveforms affect the long-

term performance of the battery including battery degradation and lifetime. Other bat-

teries should also be used to understand their responses to the current waveforms, par-

ticularly the impact of different chemistries, battery sizes, and the differences between

batteries designed for higher energy density vs power density.

Due to circuit constraints, we weren’t able to push the circuit to high frequencies.

Although this may not be needed, it would be interesting to see if any other phenomenon

can be observed if one were to increase the frequency and the amplitude of the current

ripple.

It would also be interesting to try short pulses of high magnitudes to see how high

we can push the current before diffusion limiting effects become evident. Of particular

interest would be to understand the battery behaviour at the very extreme current limits.

The pulses present a unique situation where the high currents would not change the

internal temperature of the battery (given a short duration). As the current collectors

Page 62: Sritharan Thuwaragan 201206 MASc Thesis

Chapter 4. Conclusion 53

are designed to be as small as possible (to increase the volume available for the active

electrodes), the high currents could be destructive to the current collectors (from the

local heating due to the high current density). Therefore, the possible degradation of the

battery must also be studied.

Page 63: Sritharan Thuwaragan 201206 MASc Thesis

Appendix A

Battery Tester Circuit Design

This appendix describes the circuit used for testing the battery by first going

through the circuit design. Simulations were then performed using PSpice in order to

verify the circuit behaviour. Upon building the circuit (on a solder board), testing was

done to characterize the circuit and to validate the proper operation of the circuit.

A.1 Circuit Requirements

• Replicate the waveforms seen at the output of common converter topologies. These

are rectangular, triangular and half-sinusoidal waveforms with varying frequencies

and average DC values.

• Current should be easily controllable, and circuit should be rated at 2-5 times the

nominal battery current in order to understand the effects of pulsed inputs.

• The circuit should be able to perform charging and discharging.

54

Page 64: Sritharan Thuwaragan 201206 MASc Thesis

Appendix A. Battery Tester Circuit Design 55

A.2 Circuit Overview

The circuit designed to charge and discharge the battery is shown in Fig. A.1. The

circuit is controlled using an FPGA (Field Programmable Gate Array) and is connected

to the circuit via a 40-pin connector. The FPGA outputs two 8-bit signals as well as

the timing signals that are connected to a pair of DACs (Digital to Analog Converters).

The upper DAC (DAC N on Fig. A.1) and the op-amp ’DAC OUTB’ is used to set the

charging current. The current signal is then used at the non-inverting input of a BJT

driver, with the inverting input connected to the current sensing resistor. This creates

the current loop consisting of the battery, the power supply used for charging the battery,

the current sensing resistor, and an NPN BJT. Similarly, the DAC labelled DAC P sets

the discharging current and this signal is sent to a BJT driver. This creates a second

loop consisting of the battery and current sensing resistor (which are shared with the

charging loop), as well as a PNP BJT and power supply used for the discharging of the

battery.

Page 65: Sritharan Thuwaragan 201206 MASc Thesis

Appendix A. Battery Tester Circuit Design 56

Figure

A.1:

Com

ple

tesc

hem

atic

ofth

eb

atte

rych

argi

ng

and

dis

char

gin

gci

rcu

it.

Page 66: Sritharan Thuwaragan 201206 MASc Thesis

Appendix A. Battery Tester Circuit Design 57

A.3 Circuit Details

The current controlling scheme is shown in Fig. A.2. The connectors CHR-1 and

CHR-2 are connected to a +5V power supply that is used to charge the battery, while

DIS-1 and DIS-2 connect to the source used for discharging of the battery. BAT-1 and

BAT-2 represent the positive and negative terminals of the battery respectively. R1 is the

current sensing resistor and is 10mΩ. As R1 is rated for 3W (i.e. 17A) and the transistors

rated for 20A, the maximum current allowed for both charging and discharging is 17A.

Figure A.2: Current control loops.

The circuit diagrams for the two DACs (TLC7524) are shown in Fig. A.3 and

Fig. A.4, and their theory of operation is the same. Digital 8-bit signals are sent from

the FPGA to the DAC along with two trigger signals. These signals are used to initiate

the loading of data into internal buffers and the conversion from a digital to an analog

signal. As determined from the datasheet, both DACs are connected to +5V and GND

supplies in order to properly connect with the FPGA.

During the charging stage of operation (Fig. A.3), the voltage on the sensing

resistor will be positive (explained later). In accordance with the DAC operation (Fig.

A.5), the reference voltage is connected to the negative power supply (-5V) to give a

positive output voltage.

Page 67: Sritharan Thuwaragan 201206 MASc Thesis

Appendix A. Battery Tester Circuit Design 58

Figure A.3: DAC Battery charging mode.

Figure A.4: DAC Battery discharging mode.

Resistors R10 (connected to the Vref terminal) and R9 (connected to RFB) are

used to vary the range of the output analog signal swing. Based on the internal structure

of the DAC (Fig. A.6), when all bits are set to 0 (as seen in the figure), the effective

input resistance from the Vref terminal to IOUT2 is R. As IOUT2 is connected to ground

and the value of R is given as 10kΩ in the datasheet, the current flowing through the

resistor ladder is given by:

−5V

R +R10

(A.1)

where R10 is the external resistor. As IOUT1 is connected to the inverting input of an

op-amp whose non-inverting input is connected to ground, IOUT1 is a virtual ground.

Therefore, regardless of the position of the switches S1 to S8 (i.e. the bits of the DAC)

the current flowing through the DAC’s internal resistor ladder remains constant.

Terminal RFB is connected to the output of the op-amp (with resistorR9 in series).

Therefore, the series connection of R9 and the internal resistance R behave as the feedback

Page 68: Sritharan Thuwaragan 201206 MASc Thesis

Appendix A. Battery Tester Circuit Design 59

Figure A.5: DAC Theory of Operation.

Figure A.6: Internal resistor ladder of the DAC.

resistor for an inverting amplifier. The resulting output voltage is given by:

−VrefR +R10

(R +R9) . (A.2)

The negative sign dictates that for the charging signal (for which a positive voltage signal

is required), Vref should be connected to a negative voltage (-5V). Resistors R10 and R9

can be used to vary the range of the signal based on the desired current levels. In order

to get a current output from 0 to 20A, we need a voltage signal from 0 to 200mV; hence

Page 69: Sritharan Thuwaragan 201206 MASc Thesis

Appendix A. Battery Tester Circuit Design 60

R10 should be 240kΩ, while R9 is shorted. During the discharge mode (Fig. A.4), the

charging DAC will be set to 0, while the 8-bit signal is used to drive the discharge DAC.

The circuit for the discharging signal is similar, with the reference voltage connected to

+5V in order to provide negative voltages.

During the charging phase, the output signal from the DAC (Fig. A.3) is sent to

the non-inverting input of the op-amp and sets the desired current level while the voltage

across the sensing resistor R1 is used for feedback. The op-amp is used to drive the NPN

Darlington transistor (MJH11019) to obtain the current requested. The minimum VCE

across the transistor to ensure saturation is not reached is 3.0V at 20A. This is under

the minimum voltage that will be seen during operation (5V power supply minus 1.6V

maximum on the battery). During this charging phase, the output of the discharging

DAC and hence the input to the PNP driver op amp will be at 0V (GND). However, as

the voltage across R1 is positive, this will cause the op-amp to saturate to the positive

power supply. Therefore to ensure the emitter-base voltage of the PNP Darlington does

not exceed the maximum rating of 5V, the power supply of the discharging op-amp is

connected to GND and -5V. The operation of the circuit during discharging is similar to

that of charging, but with the polarity of the sensed current (from R1) being negative.

To prevent both BJTs from turning on simultaneously, a control circuit (Q1 &

Q2 for charging, and Q3 & Q4 for discharging) is used to control the power supply of the

BJT drivers. The driver for the the charging circuit is connected to GND on the negative

terminal, while the positive rail can be connected to either ground or +5V depending on

the signal sent to Q2. A value of 0 turns off Q2 which then turns Q1 off and the result

is a driver that is connected to GND at both terminals. Similarly, the driver for the

the discharging circuit is connected to GND on the positive terminal, while the negative

terminal is connected to either ground or -5V depending on the input signal to Q4. A

value of 1 turns off Q4 which then turns Q3 off and the result is again a driver that is

Page 70: Sritharan Thuwaragan 201206 MASc Thesis

Appendix A. Battery Tester Circuit Design 61

connected to GND at both terminals. The main reason why two MOSFETs are used

is that the voltage levels and the current limit on the signals coming from the FPGA

are not sufficiently high enough to drive the MOSFETs. Hence the first FET acts as a

voltage shifter.

During the discharge operation, the PNP transistor will be operational with the

current as sensed by resistor R1 being negative. However, this is lower than the 0V input

being sent to the charging BJT driver (to indicate no charging). This will activate the

charging circuit and create a short circuit between the two power supplies. The control

circuit ensures that this erroneous activation of the BJTs does not occur.

Page 71: Sritharan Thuwaragan 201206 MASc Thesis

Appendix A. Battery Tester Circuit Design 62

A.4 Simulation

A simplified circuit (Fig. A.7) was simulated using a time domain (transient) anal-

ysis in PSpice. Without adding any stray impedances, a change in the requested current

from 1A to 5A shows the circuit is well behaved as seen in Fig. A.8(a). However, the

circuit behaves quite differently when wire inductances are taken into account, however

small they may be. Using [30], the inductance can be calculated using the equation

L = 2l[2.303 log4l

d− l +

µ

4+d

2l] (A.3)

where l and d are the length and diameter of the wire. The parasitic inductance in the

circuit was estimated to be 46nH. This was calculated using a diameter of 1mm and a

length of 5cm which reflects the dimension of the built circuit. Using this inductance in

the simulation causes the system to be unstable as discussed in the next section. The

op-amp output cannot maintain a constant voltage and this results in the output current

oscillating (Fig. A.8(b)). To prevent the oscillation in the output, a capacitor was added

from the base to the emitter of the BJT. This has the effect of slowing the rate of change

of the op-amp output due to the added load. This in turn stabilizes the circuit as it

prevents any large swings in the output voltage. The trade-off is a reduced speed in the

change in the output current for a given step input. From simulation and experimental

results, a capacitor of 47µF was added across the base and emitter, and the resulting

simulation results are shown in Fig. A.8(c).

To understand the reason for the oscillations in the uncompensated circuit, it’s

necessary to look at the Bode plot of the small signal model. A small signal model is

needed as this is the only method of bringing in frequency dependence to the system.

Although the current changes will be large (potentially from 0A to 15A), the large signal

model can only capture the slew rate and steady state information. As the charging

and discharging circuits operate independently of each other, we can look at each loop

Page 72: Sritharan Thuwaragan 201206 MASc Thesis

Appendix A. Battery Tester Circuit Design 63

Figure A.7: Simplified circuit used for PSpice simulations.

separately. Also, the current command seen on the non-inverting input to the op-amp

can be taken as a fixed voltage source along with the power supply used to charge the

battery. The hybrid-pi model of the BJT was used and the small signal model of the

charging system is shown in Fig. A.9. In order to analyze the stability of this circuit, it

must be first converted into a transfer function form shown in Fig A.10.

In Fig. A.10 the values ′u′ and ′y′ representVsig and VO from Fig. A.9. As the

transfer function for the op-amp is given by

VB = (V+ − V−)AO (A.4)

the transfer function ′G′ is simply the op-amp open loop gain AO.

The transfer function ′H ′ is the ratio of the op-amp output voltage VO to VE.

This can be found from the equation of voltage at the emitter of the BJT (and hence the

sensed current) and is given by

VE = RsenseIc + (VB − VE)Rsense

Zπ(A.5)

where

Ic = gmVBE = gmCπ||rπ

Lπ + (Cπ||rπ)(VO − VE) (A.6a)

VB =Cπ||rπ

Lπ + (Cπ||rπ)(VO − VE) (A.6b)

Page 73: Sritharan Thuwaragan 201206 MASc Thesis

Appendix A. Battery Tester Circuit Design 64

(a) no parasitic inductances

(b) with parasitic inductance

(c) with parasitic inductance and compensation capacitor

Figure A.8: Simulated circuit response of a 1A to 5A pulse.

Page 74: Sritharan Thuwaragan 201206 MASc Thesis

Appendix A. Battery Tester Circuit Design 65

Figure A.9: The small signal model of the op-amp and BJT in the charging loop.

Figure A.10: Transfer function model of a feedback controller.

Zπ = Cπ||rπ (A.6c)

Combining the two sets of equations above, the transfer function ′H ′ is

H =VOVE

=

RsenseLπ+(Cπ ||rπ) + gmRsense

Cπ ||rπLπ+(Cπ ||rπ)

1 + RsenseLπ+(Cπ ||rπ) + gmRsense

Cπ ||rπLπ+(Cπ ||rπ)

(A.7)

To check the stability of the system, one must look at the Bode plot of G(s)·H(s).

Using MATLAB, a Bode plot of the op-amp open loop transfer function AO was created

using the given datasheet. From Fig. A.11 we see that at room temperature the op-amp

provides a good phase margin but this shrinks to 25 at higher temperatures. Looking

at just the transfer function of the feedback loop (H(s)), the bode plot (Fig. A.12(a))

shows that at low frequencies there is a constant magnitude gain with no phase change.

However, there is a resonant frequency at approximately 4MHz, but more importantly

there is a sharp drop in phase. This occurs at approximately at the zero gain frequency

of the op-amp. During the experimental stage, it was seen that there was an oscillation

Page 75: Sritharan Thuwaragan 201206 MASc Thesis

Appendix A. Battery Tester Circuit Design 66

present in the circuit at approximate 100kHz (shown in the next section). In order to

remove this oscillation, a capacitor was added across the base and emitter junction of the

BJT and this had the effect of producing a phase lead. By using a capacitor of 47µF ,

the phase peaks at around 100kHz as shown in Fig. A.12(b).

Page 76: Sritharan Thuwaragan 201206 MASc Thesis

Appendix A. Battery Tester Circuit Design 67

(a) under room temperature

(b) at high temperatures

Figure A.11: Bode plot of the op-amp open loop gain.

Page 77: Sritharan Thuwaragan 201206 MASc Thesis

Appendix A. Battery Tester Circuit Design 68

(a) under room temperature

(b) under room temperature

Figure A.12: Bode plot of the feedback loop (H(s)) for 1A (blue), 5A (green), 10A (red) and14A (teal) currents.

Page 78: Sritharan Thuwaragan 201206 MASc Thesis

Appendix A. Battery Tester Circuit Design 69

A.5 Testing

In the uncompensated circuit (without the added capacitor across the base-emitter),

the experimental results show an oscillatory behaviour which is similar to the simulation.

Fig. A.13 shows the output of the op-amp (centre trace) and the voltage across the

current sensing resistor (bottom trace) for a 1A current set-point request. After adding

the capacitor, the response to a step in current from 1A to 10A (shown in Fig. A.14)

shows that the circuit stabilizes. However, there is a delay of approximately 400µs that

is caused by the capacitor at the output of the op-amp.

Figure A.13: Experimental circuit response of the uncompensated charging loop showingoutput current oscillations. The second trace shows the op-amp output and the third traceshows the resulting current.

From the DAC’s theory of operation mentioned above and using a value of 250kΩ

for R10 with R9 shorted, the expected change in the output current for change in the LSB

of the DAC is 75mA (19.2A/256 bits). The partial experimental results are shown in Fig.

A.15. The results show that the slopes of the graphs are close to the predicted value with

the error resulting mostly due to both the external resistor R10 and the internal DAC

resistors. More importantly, it shows a linear change in the current for a linear change

in input.

Page 79: Sritharan Thuwaragan 201206 MASc Thesis

Appendix A. Battery Tester Circuit Design 70

Figure A.14: Experimental circuit response of the compensated charging loop showing outputcurrent response to a 1A to 10A step. The second trace shows the op-amp output and the thirdtrace shows the resulting current.

Figure A.15: DAC linearity of the input signal and the resulting output current

Page 80: Sritharan Thuwaragan 201206 MASc Thesis

Appendix B

Battery Tester Code

In order to help analyze the data obtained by the data logger, A MATLAB Graph-

ical User Interface GUI was developed by Pawel Chomicki, a 1st year undergraduate stu-

dent. I was responsible for assisting in the management of his workload over the summer.

The document was written by Pawel and parts were rewritten to conform with the format

of the thesis. The GUI makes use of the MATLAB’s GUI Layout Toolbox (version 9).

The following is the MATLAB code and a description of the functions.

B.1 Introduction

This software, developed in the MATLAB environment, interprets information

from a comma separated value (.csv) file created by a high-fidelity, multi-channel data

logger device and imports the information into MATLAB data structures for process-

ing. The data structures are then interpreted into figures which provide a visual and

interactive display of the information captured by the Data Logger. The User Interface

provides an environment that gives the user ultimate control over which information is

displayed and how it is displayed, including: single/multi-channel plots, textual overlays,

71

Page 81: Sritharan Thuwaragan 201206 MASc Thesis

Appendix B. Battery Tester Code 72

and various post-processing functions (integration, multiplication, etc.).

This software, when used in conjunction with the Data Logger hardware, improves

the usability and provides additional functionality as compared to the Data Logger as a

standalone device. The code is structured according to the following m-files:

dataloggerGUI.m

This MATLAB file is a program which provides a GUI for processing .csv files.

The .csv files are of a specific format, based on reference files obtained from the Data

Logger Hardware. The program is able to process the data and display it graphically,

simplifying synthesis and analysis of large data sets. The following paragraphs describe

the program’s main features on a function-by-function basis.

createInterface()

This function builds the majority of the program’s user interface - the buttons

and menus which make up the software’s skeleton are constructed here. After exploring

various alternatives in MATLAB’s GUI design environment (GUIDE), it was decided that

building the GUI programmatically would be advantageous. The main benefit of doing

so is very apparent to anyone reading the program’s source code: a programmatically

developed GUI provides a more readable source, which is particularly beneficial for anyone

unfamiliar with MATLAB libraries and commands associated with GUIs.

A programmatically developed GUI is also able to leverage the libraries available

on MATLAB Central’s File Exchange. One such library was used in the development

of this software: Ben Tordoff’s GUI Layout Toolbox [31]. The toolbox is aptly-named:

it allows for the development of a more intelligent GUI, laid out hierarchically using

vertical and horizontal sections that can either remain fixed-size, or resized along with

the dimensions of the GUI window.

Page 82: Sritharan Thuwaragan 201206 MASc Thesis

Appendix B. Battery Tester Code 73

As previously mentioned, the GUI layout toolbox allows the programmer to divide

GUI components into horizontal and vertical sections, providing a grid-like structure for

the user interface. This is intuitive as each UI component has a parent component (ie:

buttons are part of button groups) and therefore has its own place within the interface.

Fig. B.1 shows how the UI components are related as parents and children (vertically)

and siblings (horizontally). Fig. B.2 below shows how these components are visually

layed out within the program. For a better understanding of the GUI Layout Hierarchy,

handle descriptions are available in Table B.1.

Figure B.1: Layout Hierarchy of GUI in dataloggerGUI.m

onSelectNewFile()

This function is initiated when the selectFile button is pressed. The function opens

up the file operating system’s file browser for a file to be selected . Since the software is

designed to specifically read files from the data logger, only .csv files (as well as folders)

are visible. The function then stores the file name in gui.fileName and gui.statusBox is

updated to let the user know that a new file has been selected. The filename is stored

in the data structure, and will be used to call upon the file for processing later. This

function does not load any of the file data into the program. Since large files take a

Page 83: Sritharan Thuwaragan 201206 MASc Thesis

Appendix B. Battery Tester Code 74

Figure B.2: GUI Layout of dataloggerGUI.m

long time to load, it makes sense to separate file selection and loading into two separate

actions which the user may perform.

onLoadNewFile()

This function is initiated when the loadData pushbutton is pressed. Using the

string from gui.fileName, it opens the file and reads it into memory, unprocessed. From

there, the function reads through the data line by line, processing both the header and

pulse information. For a better understanding of the data structure, Table B.2 provides

a list of handles used to organize the processed data. Since different portions of the .csv

files are structured differently, various helper functions must be used to extract the data

in a useful manner such as convertTime, which processes the timestamp and converts it

into seconds relative to the initial pulse’s timestamp.

Besides the current implementation of onLoadNewFile, additional methods were

considered: primarily csvread and xlsread which were initially used during the develop-

ment of this function. However, such functions posed compatibility issues and offered

Page 84: Sritharan Thuwaragan 201206 MASc Thesis

Appendix B. Battery Tester Code 75

Table B.1: GUI Layout Handles

GUI.[handle] Description

Window The parent figure (or window) containing the data logger GUI

FileMenu Provides new, load, save and exit functionality

mainBox Master parent in GUI layout hierarchy

menuBox Fixed-width column that contains menus and settings

displayBox Variable-width column that contains actions and data

visibilityOptions Checkbox menu that allows for control over channel visibility

plotType Pop-up menu that allows for control over plot type

plotOptions Checkbox menu that allows for control over plot settings

buttonBox Contains various action buttons

viewAxes Contains three tabbed axes for plotting

statusBox Textual information, status updates

plotAxes Axes (graphs) which are plotted on

selectFile Select new File

loadData Load last selected file

updatePlot Update plot with using current plot/visibility Options

clearPlot Clear the current axes

less performance than fgetl. If the performance of fgetl is still an issue, textread and

strread should be explored.

onUpdatePlot()

This function is initiated when the updatePlot button is pressed. It updates the

plot of the currently tabbed axes, in accordance to the visibility and plot options selected

in the menus. There is an irregularity with certain data sets: when a channel’s values

remain almost-constant throughout the data logger file, the data will be presented in an

Page 85: Sritharan Thuwaragan 201206 MASc Thesis

Appendix B. Battery Tester Code 76

Table B.2: Data Structure Handles

data.[handle] Description

CSV Stores the unprocessed CSV file

HeaderTable Stores Header Information (ie: operator, samples per channel, etc.)

Table Stores Pulse data

iLine/jLine Used to iterate through the CSV during processing

masterLine Marks the first line of pulse data

masterTime Timestamp of first pulse, used as reference time

samples Samples per channel (per pulse)

unreadable and rather useless fashion . An example of this can be seen in Fig. B.2 (note

the slight variation in value in the y-column). Thankfully, this should not be the case

with the vast majority of data sets obtained by the data logger. A solution to this may

be to plot a rounded set of data; however the drawback of lower-fidelity detracts from

the implementation.

plotType()

This function is initiated by the updatePlot function. Depending on which option

is selected in plotOptions, this function plots a series of lines to the currently tabbed

plotTabs.

• Concatenated: Each value is plotted against its index; different pulses are tagged

with a marker for differentiation.

• Interval Comparison: Each value is plotted against its index. Pulses are over-

layed to compare subsequent pulses. This plot type is disabled when more than a

single channel is selected, as too many pulses make the data unreadable.

• True Time: Each value is plotted against time, extracted from the pulse’s times-

Page 86: Sritharan Thuwaragan 201206 MASc Thesis

Appendix B. Battery Tester Code 77

tamp and the frequency of the sample. Additionally, there are three plot types that

require multiple channels of data to be processed before a plot can be produced.

Each of these plot types requires exactly two channels of data.

• A vs B: Instead of a plot against time, two channels are plotted against each other.

• B vs A: Similar to the previous option, except the axes are inverted.

• A x B: Two channels are multiplied together and then plotted against their in-

dex/time.

annotatePlot() This function is called exclusively for the Concatenated Plot (see plot-

Type() above). This function provides relevant textual data (timestamp, integral) for

every pulse recorded for a channel by the data logger, as seen in Fig. B.3. This feature

can be disabled in the Plot Options.

onClearPlot() This function is initiated by the clearPlot button. Additionally, it is

also called whenever updatePlot is called. This function clears the figure of the currently

tabbed axes.

changeTab() This function is called whenever the user switched between the tabbed

figures. It changes the current axes in view without clearing any of the figures.

onNew() This function opens a new instance of the program.

onExit() This function deletes the Window, closing the program.

onSave() This function saves the data structure from the workspace, making it possible

for another session at a later time. This is beneficial as large data sets do not need to be

processed more than once. This function does not save the GUI; however the GUI can

be easily reloaded and requires very little resources to do so.

onLoad() This function loads a data structure (a previously processed and saved .csv)

Page 87: Sritharan Thuwaragan 201206 MASc Thesis

Appendix B. Battery Tester Code 78

Figure B.3: Plot Annotations in dataloggerGUI.m

to be used in the current instance of the program.

B.2 Matlab Code

function dataloggerGUI()% Processes .csv files which can be viewed graphically though a GUI.%

Page 88: Sritharan Thuwaragan 201206 MASc Thesis

Appendix B. Battery Tester Code 79

% dataloggerGUI() is an interface which processes specifically formatted% .csv files from a data logger and displays the data graphically ,% allowing for enhanced manipulation and usability of the data.%% Written by: Pawel Chomicki% Last Updated on 08.14.2011data = struct();gui = createInterface() ; % function builds the GUI

%−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−function gui = createInterface()

% Create the user interface for the application &% return structures of handles for global use.

gui = struct() ; % Structure for GUI Elements

% Open a figuregui.Window = figure( ...

’Name’, ’Data Logger GUI’, ...’MenuBar’, ’none’, ...’Toolbar’, ’ figure ’ , ...’ HandleVisibility ’ , ’ off ’ , ...’OuterPosition’, [100 100 600 600], ...’NumberTitle’, ’off ’ ) ;

% Add File menu, with New, Save, Load & Exit Capabilitygui.FileMenu = uimenu( gui.Window, ’Label’, ’File’ );uimenu( gui.FileMenu, ’Label’, ’New’, ’Callback’, @onNew );uimenu( gui.FileMenu, ’Label’, ’Save’, ’Callback’, @onSave );uimenu( gui.FileMenu, ’Label’, ’Load’, ’Callback’, @onLoad );uimenu( gui.FileMenu, ’Label’, ’Exit’, ’Callback’, @onExit );

% Master GUI Parentgui.mainBox = uiextras.HBox( ...

’Parent’, gui.Window, ...’Units’ , ’normalized’, ...’Position’ , [0 0 1 1] ) ;

% Create Left and Right Panelsgui.menuBox = uiextras.VBox( ’Parent’, gui.mainBox );gui.displayBox = uiextras.VBox( ’Parent’, gui.mainBox );% Adjust Panels: 150px fixed menuBox; scalable displayBoxset( gui.mainBox, ’Sizes’ , [150 −1] );

Page 89: Sritharan Thuwaragan 201206 MASc Thesis

Appendix B. Battery Tester Code 80

% Create visibilityOptions subpanel and optionsgui.boxPanel1 = uiextras.BoxPanel( ...

’ Title ’ , ’Channel Select’, ...’Padding’, 0, ...’Parent’, gui.menuBox );

gui. visibilityOptions = uiextras.VButtonGroup( ...’Parent’, gui.boxPanel1, ...’Padding’, 0, ...’ Visible ’ , ’on’ ) ;

% Create plotType subpanel and Optionsgui.boxPanel2 = uiextras.BoxPanel( ...

’ Title ’ , ’Plot Type’, ...’Parent’, gui.menuBox );

gui.plotType = uicontrol( ...’ Style ’ , ’popup’, ...’String’ , ’ Select 1 or more channels’ ,...’Parent’, gui.boxPanel2, ...’ Visible ’ , ’ off ’ ) ;

% Create plotOptions subpanel and Optionsgui.boxPanel3 = uiextras.BoxPanel( ...

’ Title ’ , ’Plot Options’, ...’Parent’, gui.menuBox );

gui.plotOptions(1) = uicontrol( ...’ Style ’ , ’checkbox’, ...’Parent’, gui.boxPanel3, ...’String’ , ’Enable Plot Annotations’, ...’ Visible ’ , ’ off ’ ) ;

% Adjust Panels: Scalable visibility subpanel, fixed plot subpanelsset( gui.menuBox, ’Sizes’, [−1 80 80] ) ;

% Create displayBox subpanelsgui.buttonBox = uiextras.HButtonBox( ’Parent’, gui.displayBox );

% Create Axes Tabsgui.viewAxes = uiextras.TabPanel( ...

’Callback’, @changeTab, ...’Parent’, gui.displayBox, ...’Padding’, 50 ) ;

for plotIndex= 1:3 % 3 Tabs, can be reconfiguredgui.plotAxes(plotIndex) = axes( ...

’Parent’, gui.viewAxes, ...’Position’ , [ 0 0 1 1] ) ;

Page 90: Sritharan Thuwaragan 201206 MASc Thesis

Appendix B. Battery Tester Code 81

endgui.viewAxes.TabNames = ’Fig. 1’, ’Fig. 2’, ’Fig. 3’;gui.viewAxes.SelectedChild = 1; % Defaults to Fig. 1

% Modified by @changeTabgui.currentTab = text( ...

’Parent’, gui.plotAxes(gui.viewAxes.SelectedChild));

% Provides Textual data about programgui.statusBox = uicontrol( ...

’ Style ’ , ’ text ’ , ...’Parent’, gui.displayBox, ...’String’ , ’Welcome to the Data Logger GUI.’ );

% Adjust Panels: 50px buttonBox; scalable axes; 50px statusBox.set( gui.displayBox, ’ Sizes ’ , [50 −1 50] );

% Fill buttonBoxgui. selectFile = uicontrol( ...

’Parent’, gui.buttonBox, ...’String’ , ’ Select File ’ , ...’Callback’, @onSelectNewFile );

gui.loadData = uicontrol( ...’Parent’, gui.buttonBox, ...’String’ , ’Load Data’, ...’Callback’, @onLoadNewFile );

gui.updatePlot = uicontrol( ...’Parent’, gui.buttonBox, ...’String’ , ’Update Plot’, ...’Callback’, @onUpdatePlot);

gui. clearPlot = uicontrol( ...’Parent’, gui.buttonBox, ...’String’ , ’Clear Plot’ , ...’Callback’, @onClearPlot);

end

%−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−function onSelectNewFile( ˜, ˜ )

% User wants to select a new file .% Use GUI, let user browse .csv files .

[gui.fileName, pathname] = uigetfile(’∗.csv’);gui.fullFileName = fullfile (pathname,gui.fileName);

Page 91: Sritharan Thuwaragan 201206 MASc Thesis

Appendix B. Battery Tester Code 82

% Update statusBox with fileName.if gui.fileName == 0

set( gui.statusBox, ’String’ , ...’ File selection failed . Try again.’ ) ;

elseset( gui.statusBox, ’String’ , ...

strcat ( ’You selected file : ”’ , gui.fileName, ’ ”. ’ ) ) ;end

end

%−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−function onLoadNewFile ( ˜, ˜ )

% Structure for Data Elementsdata.CSV = []; % Unprocessed CSV filedata.iLine = 1; % Counter used to process CSVdata.jLine = 1; % Counter used to process CSVdata.HeaderTable = ; % Stores processed header datadata.Table = ; % Stores processed pulse data

% User wants to load .csv data% Update statusBox with loading message.

set( gui.statusBox, ’String’ , ...strcat ( ...

gui.fileName, ...’ is being processed. Please wait. ’ ) ) ;

% Read CSV into memoryfid = fopen(gui.fullFileName);data.CSV = textscan(fid,’%s’,’Delimiter’ , ’\n’, ’whitespace’, ’ ’ ) ;

% Process CSV header, skipping insignificant linesconvertHeaderCells()data.iLine = skipLine(data.iLine,1) ;convertHeaderCells()data.iLine = skipLine(data.iLine,4) ;convertHeaderCells()data.iLine = skipLine(data.iLine,3) ;

% Timestamp from first pulse, used as point of referencedata.masterLine = data.iLine−1;data.masterTime = convertTime(data.iLine−1);

Page 92: Sritharan Thuwaragan 201206 MASc Thesis

Appendix B. Battery Tester Code 83

% Process Channel Titles [ie: CH101, CH204, etc.]currentLine = strread ...

( data.CSV1,1data.iLine,1, ’%s’, ’ delimiter ’ , ’ , ’ ) ;nLengthRow = size(currentLine);for i = 1:nLengthRow(1)

data.Tabledata.jLine, i = currentLinei;enddata.iLine = data.iLine + 1;

% Process Data from PulsesnLengthColumn = size(data.CSV1,1);while data.iLine < nLengthColumn(1)

tempTime = convertTime(data.iLine−2);for iData = 1:str2num(data.HeaderTable5,2);

convertNumRow(tempTime, iData)enddata.iLine = skipLine(data.iLine,3) ;

end

data.samples = str2num(data.HeaderTable5,2); % samples per channel

% Build Channel Select Options &% Process Trapezoidal Integral of PulsesnLengthHeader = size(data.HeaderTable);for iHeader = 13: nLengthHeader(1)

if isequal ( data.HeaderTable iHeader, 2 , ’TRUE’ )n = 1;for headerIndex=1:data.samples:length(data.Table2,iHeader−12)

data.trapz(iHeader−12, n) = ...trapz(data.Table2,iHeader−12(headerIndex: headerIndex

+ data.samples − 1));n = n + 1;

endend

end

updateGUI()end

%−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−function updateGUI()

nLengthHeader = size(data.HeaderTable);for iHeader = 13: nLengthHeader(1)

if isequal ( data.HeaderTable iHeader, 2 , ’TRUE’ )name = getChannelName(iHeader);

Page 93: Sritharan Thuwaragan 201206 MASc Thesis

Appendix B. Battery Tester Code 84

gui.channel(iHeader − 12) = uicontrol( ...’ Style ’ , ’checkbox’, ...’Parent’, gui. visibilityOptions , ...’String’ , name, ...’ Visible ’ , ’on’, ...’Callback’, @countChannels );

endend

gui.numChannels = uicontrol( ...’ Style ’ , ’ text ’ , ...’Parent’, gui. visibilityOptions , ...’String’ , ’Number of Active Channels: 0’, ...’ Visible ’ , ’on’, ...’Value’, 0);

% Build Color Vectors for Interval and Concatenated/True Time Plotsgui.concatColor = hsv(length(gui.channel));gui. intColor = hsv( ...

length(data.Table2,1) / str2num(data.HeaderTable5,2) );

for headerIndex = 1: length(gui.channel)set( gui.channel(headerIndex), ’ForegroundColor’, ...

gui.concatColor(headerIndex,:) );end

% Update GUI Elementsset( gui.plotOptions, ’ Visible ’ , ’On’ );set( gui.plotType, ’Visible ’ , ’On’ );set( gui.statusBox, ’String’ , ...

’Load Complete. Please select 1 or more channels to begin plotting . ’ ) ;

end

%−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−function convertHeaderCells()

% Processes a cell which represents a line from the .csv file% and splits each element into its own cell . Used exclusively% for CSV header data.

while ˜strcmp( data.CSV1,1data.iLine,1, ’’ )% Seperate a line from the .csv into cellscurrentLine = strread ...

( data.CSV1,1data.iLine,1, ’%s’, ’ delimiter ’ , ’ , ’ ) ;nLengthRow = size(currentLine);

Page 94: Sritharan Thuwaragan 201206 MASc Thesis

Appendix B. Battery Tester Code 85

% Insert seperated cells into HeaderTablefor i = 1:nLengthRow(1)

data.HeaderTabledata.iLine, i = currentLinei;enddata.iLine = data.iLine + 1;

endend

%−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−function convertNumRow(tempTime, iData)

% Processes a cell which represents a line from the .csv file% and splits each element into its own cell . Used for pulse data,% including each pulses timestamp.

currentLine = strread ...( data.CSV1,1data.iLine,1, ’%f’, ’ delimiter ’ , ’ , ’ ) ;

nLengthRow = size(currentLine);for i = 1:nLengthRow(1)

% Special Case, converts voltages to absolute value,% as requested (to deal with negative voltage values).if strcmp(data.HeaderTablei + 12 ,6,’V’)

data.Table2, i(data.jLine) = abs(currentLine(i));else

data.Table2, i(data.jLine) = currentLine(i);end

enddata.Table2, nLengthRow(1)+ 1(data.jLine) = ...

(tempTime − data.masterTime) + (iData ∗str2num(data.HeaderTable6,2));

data.jLine = data.jLine + 1;data.iLine = data.iLine + 1;

end

%−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−function [tempTime] = convertTime(cell)

% Processes the timestamp of each pulse, converting the stamp to% seconds. Used for plotting purposes.

splitter = strread( data.CSV1,1cell, ’%s’, ’ delimiter ’ , ’ , ’ ) ;time = strread( splitter 2, ’%d’, ’ delimiter ’ , ’ : ’ ) ;tempTime = time(1)∗3600 + time(2)∗60 + time(3);

end

%−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−function [counter] = skipLine( counter, amount )

Page 95: Sritharan Thuwaragan 201206 MASc Thesis

Appendix B. Battery Tester Code 86

% Used to skip lines when processing the CSV file.% Makes skipping lines more understandable to someone% reading the code.

counter = counter + amount;end

%−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−function [name] = getChannelName(iHeader)

% Processes data from the Header Table, extracting% a channel’s name and descriptions. Used to label each% channel in the visibility options.

if strcmp(data.HeaderTableiHeader,6,’’)name = data.HeaderTable iHeader, 1 ;

elsename = strcat( data.HeaderTable iHeader, 1 , ’ [ ’ , ...

data.HeaderTableiHeader,6, ’]’ ) ;end

end

%−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−function changeTab(˜, ˜)

% User wants to change the current tab.

set( gui.currentTab, ’Parent’, gui.plotAxes(gui.viewAxes.SelectedChild) );end

%−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−function countChannels(˜, ˜)

% Counts the number of channels that have been selected for% plotting and/or processing by the user, and updates the plotting% options accordingly.

counter = 0;for x = 1:length(gui.channel)

if get(gui.channel(x), ’Value’) == get(gui.channel(x), ’Max’)counter = counter + 1;

endend

if counter == 0set(gui.plotType, ’String’ , ’ Select 1 or more channels’);

elseif counter == 1set(gui.plotType, ’String’ , ’Concatenated’, ’ Interval Comparison’,

’True Time’);

Page 96: Sritharan Thuwaragan 201206 MASc Thesis

Appendix B. Battery Tester Code 87

elseif counter == 2set(gui.plotType, ’String’ , ’Concatenated’, ’True Time’, ’A vs B’, ’B

vs A’, ’A x B’);else

set(gui.plotType, ’String’ , ’Concatenated’, ’True Time’);end

% Updates GUI and data structures.set(gui.numChannels, ’Value’, counter);set(gui.numChannels, ’String’, strcat( ...

’Number of Active Channels: ’, ...num2str(counter) ));

end

%−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−function onUpdatePlot( ˜, ˜ )

% User wants to update the plot. Updates the current axes% based on user settings including channels selected , plot type% and plot settings .

% Clear the axes, turn on hold (to plot multiple lines )cla(gui.plotAxes(gui.viewAxes.SelectedChild));hold (gui.plotAxes(gui.viewAxes.SelectedChild), ’on’) ;

% Single Channel Data Plotsfor headerIndex = 1: length(gui.channel)

if gui.channel(headerIndex) ˜= 0checkboxStatus = get(gui.channel(headerIndex),’Value’);if (checkboxStatus)

%if box is checked, plot the channelplotType(headerIndex);

endend

endhold (gui.plotAxes(gui.viewAxes.SelectedChild), ’ off ’ ) ;

end

%−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−function plotType(n)

% Plots in a different format depeding on user plot type selection .

% Currently Tabbed FigureiFig = gui.plotAxes(gui.viewAxes.SelectedChild);

% Determine which element of the plotType popup menu is selected

Page 97: Sritharan Thuwaragan 201206 MASc Thesis

Appendix B. Battery Tester Code 88

str = get(gui.plotType, ’String’) ;val = get(gui.plotType, ’Value’);

samples = str2num(data.HeaderTable5,2); % samples per channelpulse = data.Table2,n;

% Plot depending on the selection madeswitch strval;

case ’Concatenated’% Plot dataplot( iFig , pulse, ’Color’ , gui.concatColor(n,:) ) ;% Plot pulse leaders ( first data point of a pulse)plot( iFig , ...

1:samples:length(pulse), ...pulse(1:samples:end), ...’o’ , ...’MarkerEdgeColor’, ’black’, ...’MarkerSize’, 6, ...’MarkerFaceColor’, gui.concatColor(n,:)) ;

% Update the plot with textual information about every% pulseannotatePlot(n, samples, pulse) ;

case ’ Interval Comparison’iColor = 1;for headerIndex=1:samples:length(pulse)

plot(iFig, pulse(headerIndex: headerIndex + samples − 1), ...’Color’ , gui. intColor(iColor ,:) ) ;

iColor = iColor + 1;end

case ’True Time’for headerIndex=1:samples:length(pulse)

plot(iFig, data.Table2,9(headerIndex: headerIndex+samples−1), ...pulse(headerIndex: headerIndex+ samples−1));

endcase ’A vs B’

m = findOtherChannel(n);if m ˜= 0

plot(gui.plotAxes(gui.viewAxes.SelectedChild), ...data.Table2,n, data.Table2,m);

endcase ’B vs A’

m = findOtherChannel(n);if m ˜= 0

plot(gui.plotAxes(gui.viewAxes.SelectedChild), ...

Page 98: Sritharan Thuwaragan 201206 MASc Thesis

Appendix B. Battery Tester Code 89

data.Table2,m, data.Table2,n);end

case ’A x B’m = findOtherChannel(n);if m ˜= 0

mult = data.Table2,m .∗ data.Table2,n;plot(gui.plotAxes(gui.viewAxes.SelectedChild), ...

data.Table2,9, mult);end

endend

%−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−function [m] = findOtherChannel(n)

% Used for particular plot type cases ( A vs B, B vs A, A x B)% where 2 channels of data are necesarry to plot a line in the% current figure

checkboxStatus = 0;for headerIndex = n+1: length(gui.channel)

while checkboxStatus ˜= 1checkboxStatus = get(gui.channel(headerIndex),’Value’);if (checkboxStatus)

m = headerIndex;end

endendif checkboxStatus == 0

m = 0;end

end

%−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−function annotatePlot(n, samples, pulse)

% When Concatenated data is plotted, the graph can be updated with% relevant textual data depending on user preference (checkbox).

if get(gui.plotOptions(1), ’Value’) == get(gui.plotOptions(1), ’Max’)% Currently Tabbed FigureiFig = gui.plotAxes(gui.viewAxes.SelectedChild);

backColor = brighten(gui.concatColor(n,:),0.9);m = 0;for index = 1:samples:length(pulse)

Page 99: Sritharan Thuwaragan 201206 MASc Thesis

Appendix B. Battery Tester Code 90

time = [ ’Time: ’ ....data.CSV1,1data.masterLine + index − 1 + (m∗3) ];

integral = [ ’ Integral : ’ num2str(data.trapz(n,m+1)) ];textInfo = strvcat(time, integral ) ;m = m + 1;text(index, pulse(index), ...

textInfo , ...’FontSize’ , 11, ...’BackgroundColor’, backColor, ...’HorizontalAlignment’, ’Left ’ , ...’VerticalAlignment’, ’Top’, ...’Rotation’, 30, ...’Parent’, iFig ) ;

endend

end%−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−

function onClearPlot( ˜, ˜ )% User wants to clear the plot .

cla(gui.plotAxes(gui.viewAxes.SelectedChild));end

%−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−function onNew( ˜, ˜ )

% User wants to open a new instance of the application.dataloggerGUI();

end

%−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−function onSave(hObject, eventdata, handles)

% User wants to save the current instance of the application .%allow the user to specify where to save the settings file[filename,pathname] = uiputfile(’untitled’,’Save your GUI settings’);

if pathname == 0 %if the user pressed cancelled, then we exit this callbackreturn

end%construct the path name of the save locationsaveDataName = fullfile(pathname,filename);

%saves the gui datasave(saveDataName, ’data’);

end%−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−

Page 100: Sritharan Thuwaragan 201206 MASc Thesis

Appendix B. Battery Tester Code 91

function onLoad( hObject, eventdata, handles )% User wants to load a previous instance of the application .%allow the user to choose which settings to load[filename, pathname] = uigetfile(’∗.mat’, ’Choose the GUI settings file to

load’) ;

%construct the path name of the file to be loadedloadDataName = fullfile(pathname,filename);

%this is the gui that will be closed once we load the new settingsnewdata = load(loadDataName);set( gui.statusBox, ’String’ , num2str(newdata.data.iLine) );qdata = newdataupdateGUI();

end

%−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−function onExit( ˜, ˜ )

% User wants to quit out of the application .delete( gui.Window );

end

%−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−end

Page 101: Sritharan Thuwaragan 201206 MASc Thesis

References

[1] Y. Saito, “Thermal behaviors of lithium-ion batteries during high-rate pulse cycling,”

Journal of Power Sources, vol. 146, no. 1-2, pp. 770–774, 2005.

[2] K. Onda, T. Ohshima, M. Nakayama, K. Fukuda, and T. Araki, “Thermal behavior

of small lithium-ion battery during rapid charge and discharge cycles,” Journal of

Power Sources, vol. 158, no. 1, pp. 535–542, 2006.

[3] K. Fang, D. Mu, S. Chen, F. Wu, and X. Zeng, “Thermal behavior of nickelmetal

hydride battery during charging at a wide range of ambient temperatures,” Journal

of Thermal Analysis and Calorimetry, vol. 105, no. 1, pp. 383–388, 2011.

[4] C. E. Holland, J. W. Weidner, R. A. Dougal, and R. E. White, “Experimental

characterization of hybrid power systems under pulse current loads,” Journal of

Power Sources, vol. 109, no. 1, pp. 32–37, 2002.

[5] J. P. Zheng, P. L. Moss, R. Fu, Z. Ma, Y. Xin, G. Au, and E. J. Plichta, “Capacity

degradation of lithium rechargeable batteries,” Journal of Power Sources, vol. 146,

no. 1-2, pp. 753–757, 2005.

[6] L. Cai and R. E. White, “Mathematical modeling of a lithium ion battery with

thermal effects in comsol inc. multiphysics (mp) software,” Journal of Power Sources,

vol. 196, pp. 5985–5989, 20110715 2011.

92

Page 102: Sritharan Thuwaragan 201206 MASc Thesis

References 93

[7] C. K. Chan, H. Peng, G. Liu, K. McIlwrath, X. F. Zhang, R. A. Huggins, and

Y. Cui, “High-performance lithium battery anodes using silicon nanowires,” Nat

Nano, vol. 3, pp. 31–35, print 2008.

[8] C. K. Chan, R. Ruffo, S. S. Hong, and Y. Cui, “Surface chemistry and morphology

of the solid electrolyte interphase on silicon nanowire lithium-ion battery anodes,”

Journal of Power Sources, vol. 189, pp. 1132–1140, 20090415 2009.

[9] T. Ohzuku and R. J. Brodd, “An overview of positive-electrode materials for ad-

vanced lithium-ion batteries,” Journal of Power Sources, vol. 174, pp. 449–456,

20071206 2007.

[10] M. Galinski, A. Lewandowski, and I. Stepniak, “Ionic liquids as electrolytes,” Elec-

trochimica Acta, vol. 51, no. 26, pp. 5567–5580, 2006.

[11] http://faculty.kfupm.edu.sa/ME/hussaini/Corrosion%20Engineering/02.05.04.htm.

[12] F. McLennan, Process analytical chemistry. New York: Blackie Academic Profes-

sional, 1st ed., 1995.

[13] M. Datta and D. Landolt, “Experimental investigation of mass transport in pulse

plating,” Surface Technology, vol. 25, pp. 97–110, 198506 1985.

[14] E. Warburg, Ann. Phys. Chem. 67, 493 1899.

[15] B.-Y. Chang and S.-M. Park, “Electrochemical impedance spectroscopy,” Annual

Review of Analytical Chemistry, vol. 3, pp. 207–229, 19 July 2010 2010.

[16] D. D. Macdonald, “Reflections on the history of electrochemical impedance spec-

troscopy,” Electrochimica Acta, vol. 51, no. 8-9, pp. 1376–1388, 2006.

[17] B. E. Conway, “Transition from ”supercapacitor” to ”battery” behavior in electro-

chemical energy storage,” Journal of The Electrochemical Society, vol. 138, no. 6,

pp. 1539–1548, 1991.

Page 103: Sritharan Thuwaragan 201206 MASc Thesis

References 94

[18] A. J. Bard and L. R. Faulkner, Electrochemical methods. John Wiley & Sons, 1980.

[19] E. McAdams and J. Jossinet, “Physical interpretation of schwans limit voltage of lin-

earity,” Medical and Biological Engineering and Computing, vol. 32, no. 2, pp. 126–

130, 1994.

[20] R.C. Cope and Y. Podrazhansky, ”The art of battery charging,” Annual Battery

Conference on Applications and Advances, 233-235, 1999.

[21] F. Feng, M. Geng, and D. O. Northwood, “Electrochemical behaviour of

intermetallic-based metal hydrides used in ni/metal hydride (mh) batteries: a re-

view,” International Journal of Hydrogen Energy, vol. 26, no. 7, pp. 725–734, 2001.

[22] A. A.-H. Hussein and I. Batarseh, “A review of charging algorithms for nickel and

lithium battery chargers,” IEEE Transactions on Vehicular Technology, vol. 60,

pp. 830–838, 2011 MARCH 2011.

[23] T. S. Mundra and A. Kumar, “An innovative battery charger for safe charging

of nimh/nicd batteries,” IEEE Transactions on Consumer Electronics, vol. 53,

pp. 1044–1052, 2007 AUG. 2007.

[24] F. Boico, B. Lehman, and K. Shujaee, “Solar battery chargers for nimh batteries,”

IEEE Transactions on Power Electronics, vol. 22, pp. 1600–1609, 2007 SEPT. 2007.

[25] M. S. Whittingham, “Electrical energy storage and intercalation chemistry,” Science,

vol. 192, no. 4244, pp. pp. 1126–1127, 1976.

[26] H. Maleki, G. Deng, A. Anani, and J. Howard, “Thermal stability studies of li-

ion cells and components,” Journal of The Electrochemical Society, vol. 146, no. 9,

pp. 3224–3229, 1999.

[27] http://batteryuniversity.com/.

Page 104: Sritharan Thuwaragan 201206 MASc Thesis

References 95

[28] Batteries in a portable world: a handbook on rechargeable batteries for non-engineers.

Cadex Electronics, 2001.

[29] B. E. Conway, W. Pell, and T.-C. Liu, “Diagnostic analyses for mechanisms of self-

discharge of electrochemical capacitors and batteries,” Journal of Power Sources,

vol. 65, no. 12, pp. 53 – 59, 1997.

[30] Handbook of Chemistry and Physics, 44th Ed. Chemical Rubber Publishing Co.,

Cleveland, OH, 1962.

[31] T. Ben, “Gui layout toolbox.” http://www.mathworks.com/matlabcentral/fileexchange/27758-

gui-layout-toolbox. Accessed: July 14, 2011.