0% found this document useful (0 votes)
121 views

Chapter One Controlling The Operation of Wind-Solar Hybrid Power System Using Arduino-Based Hybrid MPPT Controller

The document describes the components and operation of an Arduino-based hybrid MPPT controller for a wind-solar power system. The controller uses an Arduino Uno microcontroller to monitor input voltages and currents from the solar panel and wind turbine, and adjusts the duty cycle of MOSFET switches using PWM signals to efficiently charge the battery bank. Key components include voltage dividers and current sensors to monitor inputs, MOSFETs and drivers to control power flow, and a relay to dump excess power when batteries are fully charged. The goal is to develop a low-cost, efficient hybrid renewable energy system for off-grid applications.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOC, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
121 views

Chapter One Controlling The Operation of Wind-Solar Hybrid Power System Using Arduino-Based Hybrid MPPT Controller

The document describes the components and operation of an Arduino-based hybrid MPPT controller for a wind-solar power system. The controller uses an Arduino Uno microcontroller to monitor input voltages and currents from the solar panel and wind turbine, and adjusts the duty cycle of MOSFET switches using PWM signals to efficiently charge the battery bank. Key components include voltage dividers and current sensors to monitor inputs, MOSFETs and drivers to control power flow, and a relay to dump excess power when batteries are fully charged. The goal is to develop a low-cost, efficient hybrid renewable energy system for off-grid applications.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOC, PDF, TXT or read online on Scribd
You are on page 1/ 48

CHAPTER ONE

CONTROLLING THE OPERATION OF WIND-SOLAR HYBRID POWER SYSTEM USING

ARDUINO-BASED HYBRID MPPT CONTROLLER

The circuit diagram in figure 1.0 gives the principle of operation of the wind-solar hybrid system

being controlled by the hybrid controller through Arduino uno micro processor board. The hybrid

controller must consider both the power being produced and the charging capacity of the battery.

There are two major ways of charging the battery; fristly through a pulse width modulation(PWM)

controller and secondly through a Max Power Point Tracking (MTTP) controller. In a PWM

controller, the voltage is dropped to match the charged voltage of the battery but current from the

input source will remain thesame once the battery is fully charged, the input voltage will be

directed away. Typically, the efficiency of a PWM controller is about 70%. The MPPT controller

gives more Efficient output of about 98% which can implement a buck DC-TO-DC converter to

effectively match the charge voltage and peak current. The topologies are designed based on the

supply voltage and needed output voltage

1
Figure 1.0 wind-solar hybrid control system

2
1.0 SYSTEM COMPONENTS

This section gives a detailed description of the system architecture of the Arduino-based hybrid

MPPT controller. It will describe the integration of various components and sensors in the design

of the controller. Both wind and solar circuits are controlled by the Arduino UNO that uses

ATmega328P. The controller measures the input and output voltages with a voltage divider and

the current with an ASC712 Hall Current Sensor. The Arduino UNO provides a PWM signal of

62.5 kHz and 31.25kHz to drive the MOSFETs; the controller uses the data provided by the

inputs and outputs to adjust the duty cycle for each circuit. When the battery is at maximum

capacity, the controller will activate a relay that will send the excess power to a dump load

resistor.

1.1 SYSTEM LAYOUT

The ATmega328P microcontroller on the Arduino UNO board compares the data from the

voltage dividers and current sensors at the input and output for both wind and solar circuits.

The microcontroller gives a PWM frequency of 62.5 kHz to the wind circuit and 31.25 kHz to

the solar circuit to control the switching states for the MOSFETs. The duty cycle is adjusted

depending on the state of charge of the battery and the input sources.The inputs and outputs are

read at the analog pins.

3
Figure1.1 Block diagram Arduino hybrid controller

The hybrid controller works according to the following procedure:

• Controller setup

• Data processing

Data received from inputs (solar wind) are compared to the output drawn from the battery .

If the current is present, the controller adjust the duty cycle through the PWM to match the

input supply to the battery's charge voltage. If there is no current draw, the MOSFETS for

the solar are turned off and power generated through the wind turbine is switch to a dump

Load through the relay.

1.2 COMPONENTS SELECTION

For future design consideration, the hybrid controller should be constructed to handle the

wind turbine and solar panel system suitable to handle the work at hand.

4
• Arduino UNO

Arduino UNO,shown in Figure 1.2, is an ATmega328P microcontroller designed to be multi-

versatile. For this work, the use of PWM timers to control the MOSFETs are supplied by the

digital pins of the Arduino.The PWM timer has two outputs that compare the registers to

control the duty cycle on the PWM. The Arduino has a system clock of 16MHz, therefore the

timer clock frequency will be the system clock frequency divided by the pre-scale factor. The

PWM modes used for this work were "FastPWM" and "Phase-correct PWM". The timer can

either run from 0 to 255 or from 0 to a fixed value. Each output can also be inverted.

The Timer/Counter Control registers TCCRnA and TCCRnB hold the main control bits for the

timer.These registers can control the clock prescaler by enabling the Clock Select bits(CS).

Also, the registers can enable and disable the outputs of the timer with the Compare Match

Output A and B Mode bits (COMnA and COMnB) .

The microcontroller used in theArduino UNO contains an onboard 6-channel analog-to- digital

(A/D) converter. The converter has 10-bit resolution, returning integers from 0 to 1023. The

main function of the analog pins in this work is to read the voltage divider and ASC71 sensors.

The digital pins are input/output (GPIO) pins used to run the LCD display in addition to the

PWM.

5
Figure1.2 Arduino UNO

• Voltage Divider

Arduino UNO analog inputs can be used to measure DC voltage between 0 and 5V. The range of

which the Arduino can measure voltage is increased by using two resistors to create a voltage

divider. Denote Vin as the voltage to be measured, and Vout as the voltage output of the

divider,which will be connected at the input pin. The voltage divider decreases the voltage being

measured to within the range of the Arduino analog inputs. Following the formula for a voltage

divider, shown in Equation 1.10, dividing the Vout by 1023 and multiplying by 5V will reflect the

actual voltage to be measured by the Arduino.

Vout = Vin x R2 / R1 + R2

Equation 1.10 Voltage divider formula

6
•ASC712 Hall Current Sensor

The ACS712 provides economical and precise solutions for AC or DC current sensing. The

ACS712 has 3 current sensor ratings,5A,20A,and 30A.The device consists of a precise, low off

set ,linear Hall circuit with a copper conduction path located near the surface of the die. Figure

1.2 displays the 5A ASC712 current hall sensor. Applied current flowing through this copper

conduction path generates a magnetic field that the Hall IC converts into a proportional voltage.

Device accuracy is optimized through the proximity of the magnetic signal to the Hall

transducer .

The analog to digital converter (ADC) reads values from 0-1023. To obtain the current flow in a

5A range, the use of Equation 1.10 is needed. The sensor makes adjustments of 185mA in

relation to 1mV ,which is the initial value of the Vout pin2.5 .

Figure 1.3 ASC712 current sensor

7
• IRFZ44NPbF N-Channel MOSFET

The MOSFET used to design the DC-DC converter is the IRFZ44NPbF HEXFET Power

MOSFET. It has advanced processing techniques to achieve extremely low on-resistance per

silicon area. This MOSFET is rated VDSS 55V and 25A ID, which allows 55V from the drain to

source and 49A flow at the drain.Along with fast switching speeds,dynamic dv/dt rating and the

gate to source voltage is +/- 20V, which needs a bridge driver to run more efficiently .

• IR2104 Half Bridge Driver

The IR2104 is high-voltage,high-speed power MOSFET driver with dependent high-and low-

side referenced output channels. The range of gate drive supply is from 10 to 20V, which is

enough to drive the IRFZ44NPdF MOSFET for the bench scale experiment of this project. This

half-bridge driver was used to drive the MOSFETs for the buck DC-DC converters.

• Low ESR Capacitor

My design uses two capacitors, one in the front to minimize any ripple present in the input

voltage and the other to construct the DC-DC converter. The low-equivalent series

resistance(ESR) is a ceramic capacitor that is more capable to hold its capacitance through DC

bias or temperature.

• Shielded Power Inductors –RFS1317

The inductors used for the buck and buck/boost circuits are the RFS1317 shielded power

inductors. They are low-cost, high-current saturation power inductors, capable to operate under

high ambient temperature of up to 125 °C with 85% relative humidity. Since the current saturation

is lower than what is needed, connecting the inductors in parallel will meet the current levels
needed.

• Schottky Diode

VSB2045 PV solar cell protection Schottky diode was implemented in my research for the

power conversion circuits. This component is used in solar cell junction boxes as abypass

diode for protection and uses a low DC forward current without reverse bias .

• 896H-1CH-D1 Automotive Relay

The 896H Relay would eventually be used to control the load from the wind turbine. It is a cost-

effective, high-power 24V relay, allowing up to 50A. Having a constant load on a wind turbine

is necessary to avoid damage. When the battery is at capacity, the relay will switch from the

battery as a load to dump load resistors.

• 125WALEKO Monocrystalline Solar PV Module

The solar panel that would eventually be used in the field test is the 24V, 125WALEKO

monocrystalline solar PV module. Its operational output voltage is 36.6V and produces 3.47A.

• 500W24V Wind Turbine

The wind turbine used at the site, intended for this research, is the Missouri Basic 24V, 500W, 5-

blade wind turbine.It produces a 3-phase alternating current(AC) that is converted to direct

current (DC) using a bridge rectifier. Having 5 blades is optimal for lower wind speeds and uses

a tail fin to help change position to capture winds in all directions.

• Lead Acid Battery


The battery bank targeted for this research at the project site consists of two 12V Dura cell Ultra

lead acid batteries connected in series to increase the voltage of the bank to 24V. The batteries

are designed to allow drainage from a load and to be charged from solar panels or wind turbines.

• Constant Current Electrical Load

This device is used to simulate a battery but is able to control the amount of current that is

drawn. The power rating is 60W, which the device can be set to a maximum 10A of drawland

allows an output voltage of 30V. It is built with a large heat sink and fanto extract the heat from

it. The dial allows changes to the amount of current needed to simulate.

CHAPTER TWO

SYSTEM AND SOFTWARE DESIGN

2.0 Introduction

The design of the hybrid controller uses two synchronous buck converters in parallel. The

controller is designed to control the inputs from both the solar panel and wind turbine to match
the charge voltage of the output.

2.1 Inductor and Capacitor Size Calculations for Hybrid Controller

The MPPT is designed with asynchronous buck converter to control the output from the solar

panel and wind turbine. The solar panel produces 36.6V and 3.76A in optimal conditions; in

cloudy conditions, the rated voltage of 36.6 V is reached though the current is increased with

sun exposure. The wind turbine has a rated power production of 500W, which is met at peak

wind speeds. The voltage produced from the turbine ranges from 0 to 60V. To keep

components from overloading, a maximum voltage of 50V is set. This means the current will

be in the range of 15A. Setting a parameter in the code to send the wind generated power to a

dump load when the wind generator produces more than 50V.

The size of the battery bank used is 24V,meaning the optimal charge voltage for the battery

bank is approximately 27.6V . Since the voltage needs to be dropped to meet the charging

voltage and the current boosted, a buck converter is the logical choice.

When designing a buck converter, several parameters are needed to calculate the power stage:

the input voltage from the solar panel and wind turbine range (V in(min) and Vin(max)) the output

voltage (Vout) needed to charge the batteries, the maximum output current (I out(max)) and the

frequency driving the MOSFETs(fS). These parameters will dictate the size of the inductor and

capacitor to complete the buck circuit. Table 2.1 shows the input and output values needed to

calculate the inductor and capacitor size.


Table 2.1 Input and output design parameters

Solar Wind

Power 125 W 500 W

Vin 36.6 V 50V(*60V)

Iin 3.42 8.33

Vout 27.8 V 27.8 V

fS 31.25 kHz 62.5 kHz

Iout(max) 4.5 A 15.0A(*17.9A)

ΔVout .02 V .02 V


2.2 Controller Design

Figure 2.1 shows the circuit schematic for the hybrid controller. The diode and the capacitor on

the input side filter noise that may be present. The input is read by the voltage divider and then

passes through the ACS712 current sensor on both solar and wind. For this controller, the input

is fed through a MOSFET if the voltage is high enough to meet the enable voltage, then it flows

through the switching node. Pin7 on the wind and pin8 on the solar controls the enabling and

the disabling of the MOSFET.

Figure 2.1 Hybrid MPPT controller circuit diagram


The Arduino begins setting up the hybrid MPPT controller by reading the defined variables and

pins. It sets the digital pins 0, 6, 7, 8, and 11 to outputs. These pins give out a signal whether it

is a PWM or just a High/Low signal. Since pins 0, 7, 8 are used as High/Low, they are initially

given the Low(off) state t o not allow flow from the output.The duty cycle has set limits to not

allow either energy flow from the output and keep the bootstrap gate capacitor charged.

The Arduino UNO sends a 62.5kHz PWM signal from pin6 and a 31.25kHz PWM signal from

pin11 to the IR2104 half bridge drivers.The driver sends the same signal to the

MOSFETs but amplifies the driving voltage to the MOSFET gate. The output voltage and current

are measured and compared to the set values assigned within the program.The duty cycle within

the PWM equates to on/off time for the MOSFET. If the voltage from the output of DC- DC

converter is above the maximum, the duty cycle will decrease until the output voltage matches the

set limit. Conversely, if the DC-DC converter output voltage is less than the minimum limit set,

the duty cycle will increase.

If the input voltage from the solar panel and/or the wind turbine is less than the disable voltage

or the current is less than the minimum, then the DC-DC converter will be disabled. If the

system is disabled, the Arduino will constantly check if it can be enabled. If the input voltages

are greater than the enable voltage,it turns on the DC-DC converters. A flow chart of the

Arduino logic hierarchy can be seen in Figure 2.2


Figure 2.2 Flow diagram of control sequence.

2.3 Software Implementation

Once there is understanding of how the controller is designed to work, the next step is to have the

circuit communicate with the controller.

2.3.1 Arduino IDE

The Arduino Integrated Development Environment (IDE) is the programming environment for

the software code used to design the control parameters for the hybrid MPPT controller. Version

Arduino v1.8.3 is used for this work.


Setting up the IDE involved selecting the“Arduino/Genuino UNO” board under the Tools

Menu and selecting the COMto which the UNO is present. When the controller receives power

from the UNO, it reads the defined conditions of the input and output sources. It begins to step

up the controller by identifying which pins will provide an output and setting the PWM

modes.It displays a welcome screen and then begins the infinite loop after setting up the

controller. The loop contains 3 different parts,the first being to read the values at the input and

output. Then, it begins the solar and wind updates; the Arduino controls the amount of duty

being supplied through each PWM pin to correct the output voltage and input current.

2.3.2 Controller Configurations

Every pin that is used must be defined to a pin in the program: Solar Enable, Solar PWM, Wind

Enable, Wind PWM, Wind Relay, Solar Input Voltage, Solar Input Current, Wind Input

Voltage,Wind Input Current, the Output Voltage, and Output Current.Then set the limits for the

controller: Enable Voltage, Disable Voltage, Target Voltage, Maximum Current, and Minimum

Current for both solar and wind. Lastly, the Maximum and Minimum Output Voltage and

Current are set. This is shown in Figure 4.3.


Figure 2.3 Defining power conditions for hybrid MPPTcontroller

It is necessary to set up a time delay because when operating on Fast PWM, the clock runs 64

times faster than normal. The delay will allow the Arduino to read at a normal pace. The duty

cycle for the controllers needs to have a maximum and minimum level to protect the circuit.

This will be further discussed in the succeeding sections. A voltage divider was used to produce

a measurable voltage for the Arduino. The voltage multipliers in Figure 2.4 are implemented to

reflect the voltages before being reduced.


Figure 2.4 PWM, duty cycle, and voltage multiplier definitions

2.3.3 Global Variables and LCD Library

Using an LCD display to show the values from the input and the output, the library Liquid

Crystal is used to work with LCD screen.The globa variables that are set are for the duty cycle,

input and output voltages, and currents as seen in Figure 2.5

Figure 2.5 LCD library and global variables


2.3.4 Controller Setup

Figure 2.6 shows the initial set up processes the hybrid MPPT controller goes through upon

cyclingon.The function pin Mode sets the Arduino’s pins to produce output.The“enable” pins,

such Solar_Enable and Wind_Enable, are not defined to a PWM frequency but to a LOW or

HIGH (on or off) through the function digital Write. The PWM pins need to be called upon to

produce the fast PWM for pin 6 and the phase shift PWM for pin 11. This is done by setting the

TCCR0A and TCCR2A registers then using the Output Compare (OCR0A and OCR2A) pin for

the duty cycle, which is initially set to 0.

Figure 2.6 Hybrid controller setup

2.3.5 TCCR0A and TCCR0B Registers for Fast PWM

As discussed previously ,there are Timer/Counter Control registers that hold them are in bits for

the timer. Fast PWM outputs a frequency of 62.5 kHz, which is the largest frequency the Arduino

can produce. The TCCR0A is shown in Figure 2.7 Assigning a 1 or 0 to the bit changes the
behavior of the register.

Name: TCCR0A
Offset: 0x44
Reset: 0x00
Property:WhenaddressingasI/0Register:addressoffsetis0x24

Bit 7 6 5 4 3 2 1 0
COM0A COM0A COM0B COM0B WGM0 WGM0
1 0 1 0 1 0
Access R/W R/W R/W R/W R/ R/
W W
Reset 0 0 0 0 0 0

Figure 2.7 TC0 control registerA

These bits control the Output Compare pin (OC0A) behavior. If one or both of the COM0A

[1:0] bits are set, the OC0A output overrides the normal port functionality of the I/O pin it is

connected to. The Data Direction Register (DDR) bit corresponding to the OC0A pin must be

set in order to enable the output driver. When OC0A is connected to the pin, the function of the

COM0A [1:0] bits depends on the WGM0 [2:0] bit setting. Table 2.1 shows the COM0A [1:0]

bit functionality when the WGM0 [2:0] bits are set to fast PWM mode, which was used for my

wind controller design.

Table 2.1 Compare output (OC0A) mode, fast PWM

COM0A1 COM0A0 Description


0 0 Normalportoperation,OC0Adisconnected.
WGM02=0;NormalPortOperation,OC0ADisconnected
0 1
WGM02=1:ToggleOC0AonCompareMatch
1 0 ClearOC0AonCompare Match,setOC0AatBOTTOM(non-invertingmode)
1 1 SetOC0AonCompareMatch,clearOC0AatBOTTOM(invertingmode

Much like the OC0A, bits are used to control the Output Compare pin (OC0B) behavior.

If one or both of the COM0B [1:0] bits are set, the OC0B output overrides the normal port

functionality of the I/O pin to which it is connected. The Data Direction Register (DDR) bit

corresponding to the OC0B pin must be activated to enable the output driver.WhenOC0B is
connected to the pin, the function of the COM0B [1:0] bits depends on the WGM0 [2:0] bit

setting.Table 2.2 shows the COM0B [1:0 ] bit functionality when the WGM [2:0} bits are set to

fast PWM mode.

Table2.2 Compare output (OC0B) mode ,fast PWM.

COM0B1 COM0B0 Description


0 0 Normalportoperation, OC0Bdisconnected.
0 1 Reserved
1 0 ClearOC0BonCompareMatch,setOC0BatBottom,(non-invertingmode)
1 1 SetOC0BonCompareMatch,clearOC0BatBottom,(invertingmode)

Combined with the WGM02 bit found in the TCCR0B Register, these bits control the counting

sequence of the counter, the source for maximum (TOP) counter value, and what type of wave

form generation to be used. Modes of operation supported by theTimer/Counter unit are:

Normal mode (counter), Clear Timer on Compare Match (CTC) mode, and two types of Pulse

Width Modulation (PWM) modes.

Table 2.3 Waveform generation mode bit description.


Mode WGM02 WGM01 WGM00 Time/CounterModeofOperation TOP Update of OCR0xat TOVFlagSeton
0 0 0 0 Normal 0xFF Immediat MAX
e
1 0 0 1 PWM,PhaseCorrec 0xFF TOP BOTTO
t M
2 0 1 0 CTC OCR Immediat MAX
A e
3 0 1 1 FastPWM 0xFF BOTTOM MAX
4 1 0 0 Reserved - - -
5 1 0 1 PWM,PhaseCorrec OCR TOP BOTTO
t A M
6 1 1 0 Reserved - - -
7 1 1 1 FastPWM OCR BOTTOM TOP
A

The construction of TC0 Control Register B is shown in Figure 2.8 .In this research, the register

to control the clock source was used by the Timer/Counter. Setting the Force Output Compare A

(FOC0A) and B (FOC0B) to 0 and the Waveform generation to zero as well.

Selecting the Clock Select CS [2:0] bits enables a prescaler.This is shown inTable2.4
Name: TCCR0B
Offset: 0x45
Reset: 0x00
Property:WhenaddressingasI/0Register:addressoffset is0x25

Bit 7 6 5 4 3 2 1 0
FOC0A FOC0B WGM0 CS0[2:0
2 ]
Access R/ R/ R/ R/ R/ R/
W W W W W W
Reset 0 0 0 0 0 0

Figure 2.8: TC0 control register B.

Table2.4:Clock select bit description.


CA02 CA01 CS00 Description
0 0 0 Noclocksoruce(Timer/Counterstopped).
0 0 1 clkI/0/1(Noprescaling)
0 1 0 clkI/0/8(Fromprescaling)
0 1 1 clkI/0/32(Fromprescaling)
1 0 0 clkI/0/64(Fromprescaling)
1 0 1 clkI/0/128(Fromprescaling)
1 1 0 clkI/0/256(Fromprescaling)
1 1 1 clkI/0/1024(Fromprescaling)

2.3.6 TCCR2A and TCCR2B Registers for Phase Correct PWM

Much like the previous section,TCCR2A is used to control the PWM on pins11and 3 of the

Arduino. For this work, the Phase Correct output mode is used, this gives an output frequency of

31.25 kHz.

Name: TCCR2A
Offset: 0xB0
Reset: 0x00
Property: -

Bit 7 6 5 4 3 2 1 0
COM2A COM2A COM2B COM2B WGM2 WGM2
1 0 1 0 1 0
Access R/ R/ R/ R/ R/ R/
W W W W W W
Reset 0 0 0 0 0 0

Figure2.9:TC2 control registerA


Assigning different bits controls the Output Compare pin (OC2A) behavior. If one or both of the

COM2A[1:0] bits are selected, the OC2A output overrides the normal port functionality of the

I/O pin to which it is connected. The Data Direction Register (DDR) bit corresponding to the

OC2A pin must be set to enable the output driver. When OC2A is connected to the pin,the

function of the COM2A[1:0] bits depend on the WGM2 [2:0] bit setting. Table 2.5 shows the

COM2A[1:0] bit functionality when the WGM2[2:0] bits are set to phase correct PWM mode.

Table2.5 Compare output mode,phase correct PWM Mode

COM2A1 COM2A0 Description


0 0 Normalportoperation,OC2Adisconnected.
WGM22=0;NormalPortOperation,OC2ADisconnected
0 1
WGM22=1:ToggleOC2AonCompareMatch
ClearOC2AonCompareMatch,whenup-counting.SetOC2AonCompareMatch
1 0
whendown-counting.
SetOC2AonCompareMatch,whenup-counting.ClearOC2AonCompareMatch
1 1
whendown-counting.

Much the same for Channel A, bits can be assigned to control the Output Compare pin (OC2B)

for Channel B to change the behavior. If one or both of the COM2B [1:0] bits are set,the OC2B

output overrides the normal port functionality of the I/O pin to which it is connected.

However, note that the Data Direction Register(DDR) bit corresponding to the OC2B pin must

be set in order to enable the output driver. When OC2B is connected to the pin ,the function of

the COM2B [1:0 ] bits depend on the WGM2[2:0] bit setting. Table 2.6 shows the COM2B[1:0]

bit functionality when the WGM2[2:0] bits are set to phase correct PWM mode.Table 2.6

Compare output mode, phase correct PWM mode


COM2B1 COM2B0 Description
0 0 Normalportoperation, OC2Bdisconnected.
0 1 Reserved
ClearOC2BonCompareMatchwhenup-
1 0 counting.SetOC2BonCompareMatchwhen
down-counting.
SetOC2BonCompareMatchwhenup-
1 1 counting.ClearOC2BonCompareMatchwhen
down-counting.

Combined with the WGM22 bit found in the TCCR2B Register, these bits control the counting

sequence of the counter, the source for maximum (TOP) counter value, and what type of wave

form generation to be used.Modes of operation supported by theTimer/Counter unit are: Normal

mode (counter), Clear Timer on Compare Match (CTC) mode, and two types of Pulse Width

Modulation (PWM) modes.

Table 2.7 Waveform generation mode


Mode WGM22 WGM21 WGM20 Time/CounterModeofOperation TOP Update of OCR0xat TOVFlagSeton
0 0 0 0 Normal 0xFF Immediat MAX
e
1 0 0 1 PWM,PhaseCorrec 0xFF TOP BOTTO
t M
2 0 1 0 CTC OCR Immediat MAX
A e
3 0 1 1 FastPWM 0xFF BOTTOM MAX
4 1 0 0 Reserved - - -
5 1 0 1 PWM,PhaseCorrec OCR TOP BOTTO
t A M
6 1 1 0 Reserved - - -
7 1 1 1 FastPWM OCR BOTTOM TOP
A

The construction of TC2 Control Register B is shown in Figure 3.0 For my project, I used this

register to control the clock source used by the Timer/Counter and set the Force Output

Compare A (FOC2A) and B (FOC2B) to zero and the Waveform generation to zero as well.

Selecting the Clock Select CS [2:0] bits enable a prescaler.This is showninTable 2.8

Name: TCCR2B
Offset: 0xB1
Reset: 0x00
Property: -

Bit 7 6 5 4 3 2 1 0
FOC2A FOC2B WGM2 CS2[2:0
2 ]
Access R/W R/W R/ R/ R/ R/
W W W W
Reset 0 0 0 0 0 0

Figure 3.0 TC2 control register B


Table 2.8 Clock select bit description

CA22 CA21 CS20 Description


0 0 0 Noclocksoruce(Timer/Counterstopped).
0 0 1 clkI/0/1(Noprescaling)
0 1 0 clkI/0/8(Fromprescaling)
0 1 1 clkI/0/32(From prescaling)
1 0 0 clkI/0/64 (Fromprescaling)
1 0 1 clkI/0/128(Fromprescaling)
1 1 0 clkI/0/256(Fromprescaling)
1 1 1 clkI/0/1024(Fromprescaling)

2.3.7 Enabling and Disabling

To ensure that the power is being delivered when needed and diverted away when not needed,

disabling and enabling parameters are set in place. The wind and solar are nearly identical, apart

from the use of a relaying the wind MPPT that is used to protect the wind turbine so that it

keeps a constant load. The A Channel registers are used to enable and disable the prescaler in

the clock source shown in Figure 3.1.


Figure 3.1 Solar and wind enabling and disabling

2.3.8 Configuring Duty Cycle for DC-DC Converters

Both buck converters need off time to keep the bootstrap capacitor for the upper

MOSFETcharged,so the dutycycle is set below100% to ensure the capacitor is charged. If the

bootstrap capacitor is not charged, the gate will turn off, creating a partially conducting state.
Figure 3.2 Setting dutycycle under maximum

Asynchronous buck can eliminate the possibility of the voltage from the output to flow to the

input by enforcing the duty cycle above 50%.

Figure3.3 Setting duty cycle above minimum


2.3.9 Measuring and Displaying Input and Output Values

The Arduino’s microcontroller uses an analog to digital converter (ADC) that reads the

voltage and converts it to a number between 0 and 1023.The circuit has a limit of 5V or it will

overload. The voltage divider is used to measure anything above 5V,and the ACS712 converts

the current to a voltage that is read the same way as the voltage divider. Each value is
measured 16 times and then averaged. Once the values are read and averaged, it is then sent to

the LCD screen shown in Figure 3.14


Figure3. 4 :Measuring and displaying measured values

2.4. Updating Solar and Wind DC-DCConverter

The Arduino begins the loop by reading the input and output values and then updating the

controller for the wind and solar DC-DC converters based on the values. The Arduino decides to

enable, disable, or update the duty cycle based on the state that the controller is in and the

input/output values read. Wind and solar are nearly identical in the program design for disabling,

enabling, and updating the duty cycle.The wind DC-DC converter has an additional condition if

the turbine is producing more than 50V.The controller will disable the circuit and send it to the

dump load resistors; this is to protect the components that are sensitive to voltages above 50V.
The Arduino begins by determining that the DC-DC converters are operating. If they are

operating, then it will disable the DC-DC converters if the solar and wind voltages are less than

their respective disable voltages, or the current is below the output’s minimum. If the operating

conditions are met, then the controller checks:

1) if the input voltages are less than the target voltages.

2) if the output is greater than the output limit.

3) if the input current is greater than the input maximum.

4) if the output current is greater than the output maximum.

If one or more of these conditions are met, it will reduce the duty cycle by one until the desired

output is met. If the voltages are greater than the target voltages and the output voltage is less than

the minimum limit, then it will increase the duty cycle by one until the desired output is met.

The Arduino will enable the DC-DC converters if previously disabled and the input is greater

than the enable voltage. When in the enable state, it will measure and update the duty cycle by

multiplying 255 by the output voltages over the input voltages.This is shown in Figures 3.5 and

3.6
Figure3.5 Solar DC-DC converter update

Figure3.6 Wind DC-DC converter update.


CHAPTER 3

TESTING AND ANALYSIS

3.0 Introduction

The testing methods and results will be discussed in this chapter. A bench test was performed to

ensure the hybrid MPPT design and logic performs correctly.To simulate the solar panel and

wind turbine, two bench power supplies were used to feed each part of the circuit.The battery is

simulated by a constant current electronic load Which allows the current to be drawn from the

power supplies, simulating a battery accepting charge.

Efficiency is calculated to judge how well the hybrid MPPT controller is performing.To

calculate for efficiency (η), the output power (W) is compared to the input power (W) as is

shown in Equation 3.1

𝑃𝑜𝑢𝑡
𝜂=100% ×
𝑃𝑖𝑛

Equation 3.1 Power efficiency equation

The test equipment used has a limit of 60W, therefore, a down sized circuit was used to test the

design and logic of the controller. The components and design are the same except for the

inductors and capacitors for the DC-DC converters. Calculating the minimum capacitance and

inductance needed to construct the down sized hybrid controller, a 100µH inductor and

capacitor 680µF was used for both the solar and wind circuits. The output and input voltage

conditions changed to fit the limits of the test equipment.

The 13.8 output voltage reflects a 12V battery’s charge voltage.The 5A maximum limit is the

maximum amount of current the power supplies can produce. A 12V rated solar panel produces

18V when exposed to light. The same conditions were used for the wind turbine.
Figure 3.1 Changed limits for controller

To capture the signal generated from the controller, the RIGOLDS1054 oscilloscope was used.

In addition to the oscilloscope, the FLIR DM93 digital multi-meter (DMM) was implemented to

calibrate the exact voltage and current readings reflected on the LCD display shown in Figure

3.3. Figure 3.2 shows how the test was instrumented.

The circuit on the left of the Arduino, seen in Figure 3.2 ,is the solar MPPT circuit. The solar

MPPT is connected to the power supply to the left of the oscilloscope. The output of the solar

circuit is connected in parallel to the wind circuit, which is then read from the junction where

the wind and solar circuit meets through the output ACS712 current sensor and voltage divider.

The wind MPPT circuit is located below to the right of the Arduino board, which is connected

to the power supply on the right of the oscilloscope.The constant current load device is

connected to the output of the hybrid MPPT.

The LCD screen in Figure 3.3 displays the input and output values. The solar input voltage and

current are displayed on the left side of the first two rows, and the wind input is displayed to the

right on the first two rows.The output voltage and current are displayed at the bottom row of the

LCD.
Figure 3.2 Testing Setup

Figure 3.3 LCD display

3.1 Solar MPPT Controller Test

Three tests were taken to assess the efficiency of the solar only, wind only, and hybrid MPPTs in

this section, just the solar MPPT was tested ,meaning no input voltage to the wind MPPT. When

voltage is not present at the wind MPPT and solar MPPT is operating, there is voltage sensed at

the input of the wind MPPT.

Figure 3.4 shows the signal generation from both the upper gate and lower gate on the MOSFETs,

input voltage, and output voltage. As set in the code, the switching frequency of the PWM is
31.25kHz, the input voltage is at 18.3V, and output is at a steady 13.8V. The upper and lower

gates are working in synchrony as designed.

Figure 3.4 Solar MPPT only wave forms

To test efficiency ,measurements were taken between 1 to 3A in 0.5A increments to find the

range of efficiency at which the solar MPPT operates. The efficiency for solar MPPT is shown

in Table 3.1. The best the solar MPPT operated was at 18V 2A, producing an efficiency of

97.1%. The least efficient was 95.4%, resulting in power loss of 1.98W.
Table 3.1 Efficiency of solar MPPT only

Output Solar Input Efficiency


Load Current Current %

13.8V@1A [email protected] 95.8%

[email protected] [email protected] 96.6%

13.8V@2A [email protected] 97.1%

[email protected] [email protected] 96.8%

13.8V@3A [email protected] 95.4%

3.2 Wind Controller Test

The wind MPPT was tested with no voltage present on the solar MPPT side. When testing for

efficiency, the wind MPPT dropped when compared to the solar MPPT.This is likely due to

change in the voltage supplied during the wind MPPT test.

Increasing the voltage of the wind input, with the addition of increasing the current demand,

best reflects production from a wind turbine. As the voltage increases in the turbine ,the current

also increases.To simulate the wind turbine power curve, the current draw was increased by

0.5A along with a voltage increase of 1V per test.

Figure5.5 shows the signal generation from the wind MPPT. The synchronous buck is operating

as designed, the upper and lower gates are operating in synchrony, and the output voltage of

13.8V is a step down from the input voltage of 20.3V.

The controller operated at maximum efficiency of 96.5%.The lowest the controller performed in

this test was 94.7%. The largest power loss was 1.94W operating at 95.5% efficiency.
Table 3.2 Efficiency of wind MPPT only

13.8V Output Wind Input Efficiency%


Load Current Current
13.8V@1A [email protected] 94.7%

[email protected] [email protected] 95.6%

13.8V@2A [email protected] 96.5%

[email protected] [email protected] 96.1%

13.8V@3A [email protected] 95.5%


Figure 3.5: Wind MPPT only waveforms

3.3 Hybrid Controller Test

When running the test on the hybrid MPPT controller, more current was drawn from the

windpower supply input than the solar powers upply. This is sufficient for simulation purposes,

as long as there is a draw from both power supplies. The waveforms in Figure 5.6 demonstrate

the solar MPPT and wind MPPT are operating at the same time.

The signal generated from the solar MPPT controller is half of the frequency of the wind

MPPT controller. Therefore, the oscilloscope captured the signal from solar MPPT more

clearly than the wind MPPT. The bottom line shows the output voltage, which is at 13.8V as

designed.

Table 3.3 shows the output load voltage and current ranging from 1A to 3A in .5A

increments.The solar power supply is kept at a constant 18V while the wind power supply is

increased 1V each test to 22V. When comparing the results to the solar and wind controllers

individually, the overall efficiency of the controller drops.This is expected due to power loss

over two circuits.

The system performed above 91.3% efficiency.The hybrid MPPT performance peaked at a 2.5A

drain at 93.6% efficiency. The most power loss in the controller is 3.14W.

Table3.3:Efficiency of hybrid controller

Output Load WindInput Solar Input Efficiency%


Current Current Current
13.8V@1A [email protected] [email protected] 91.3%

[email protected] [email protected] [email protected] 92.4%


A
13.8V@2A [email protected] [email protected] 93.4%
[email protected] [email protected] [email protected] 93.6%
A
13.8V@3A [email protected] [email protected] 93.0%

3.4 Final Design of Hybrid Controller

The final design of the hybrid controller is in early stages of development. The circuit is shown in

FigureThe design is stepped up from the testing circuits to handle the loads of the 500W wind

turbine and 125W solar panel.


Figure 3.6 Final design concept

The minimum inductance values calculated in Section 4.2 requires an inductor size of 158µH for

the solar MPPT and 44µH for the wind MPPT. Inductors have a rated current level before they

become over saturated. If the inductor becomes over saturated, the inductor value decreases,

resulting in reduced efficiency in DC-DC converter. The largest saturation current available in the

RFS1317 power inductor is 7.2A for 27µH inductor.

When building the final design for thewind MPPT, the inductor size required was too large to

allow 15A. The largest amount of current achieved was 10.2A by connecting the inductors

inparallel, dropping the inductance value to 33µH. Connecting an additional row of inductors in

series increased the inductance value to 66µH. When the current increases over 10.2A, the

inductors will become over saturated.

An effective way to reduce the inductor size needed for the hybrid MPPT is to increase the

amount of frequency supplied to the circuit. TheArduino’s maximum frequencyis 62.5 kHz,

which is too low for the final design. The PIC16C63A is a controller that can produce a signal

up to 208 kHz, which will reduce the inductor needed to 13.2µH for the wind MPPT.
3.5 Prototype Component Cost

This section is a breakdown of the cost of each individual part and amount of parts used to

design the bench test hybrid MPPT controller.

Table 3.4 Component cost for prototype

ArduinoUno #3,700 x1 #3,700

IRFZ44NPbFMOSFET #400 x4 #1,600

LCDModuleforArduino #3,700 x1 #3,700

ACS712 #1,600 x3 #4,900

RFS1317Inductor #1,160 x2 #2,300

LowESRCapacitors #500 x4 #1,800

Resistors #90 x6 #550

IR2104MOSFETDriver #1,120 x2 #2,250


Total: #20,800

3.6 Current Consumption Analysis

The current consumption analysis was conducted by connecting a DMM in series to the input

port, Vcc, of the Arduino UNO, LCD Display, IR2104 MOSFET driver, and ACS712 current

sensors. The largest consumer of current is the Arduino UNO taking 54.32mA to operate, while

the 3 current sensors collectively drain 36.75mA. The overall consumption is 105.94mA, which

is shown in Table 3.5

Table5.5:Current consumption analysis on prototype

ArduinoNO 54.32mA 54.32mA

LCDDisplaywith Backlight 9.14mA 9.14mA

MOSFETDriver(on)x2 2.83 mA 5.66mA

ACS712CurrentSensorx3 12.24mA 36.75mA


Total: 105.94mA
CHAPTER 4

CONCLUSION AND FUTURE WORK

Renewable systems are becoming more affordable with better options than fuel generation in

micro-systems, not only for the environment, but also the cost of operation. Fuel generators

need to be replenished with fuel and oil, while renewable systems take advantage of the energy

provided by the wind and sun.

Developing a hybrid MPPT controller takes the advantage of solar and wind energy sources.The

ability to control two systems with one controller is better for an overall production of energy,

cost, and manageability at a slight expense to the efficiency. The hybrid MPPT performed at a

maximum of 93.6%, while the individual controller operated at a maximum 97.1% efficiency.

The overall cost of the bench test controller is #20,800 consuming only 105.94mA.

When implementing the controller to manage the 500W wind turbine and 125W solar panel, the

inductor size is too large due to the frequency provided by the Arduino. Using a different

microcontroller like the PIC16C63A produces a much faster frequency, which will reduce the

inductor size needed and allow more current before saturation.

Wind turbines do not operate at optimal power production consistently, i.e., the wind speed can

change at any given moment.Developing a buck-boost converter for the wind MPPT controller

would take advantage of both the lower and higher wind speeds. Though the overall efficiency

is less than that of a concentrated buck or boost controller, it would have more potential to

produce power.
REFERENCES

[1] IRENA,“ThePowertoChange:SolarandWindCostReductionPotentialto2025”,June 2016.

[2] F.Kreith,Principlesofsustainableenergysystems,2ndEdition.BocaRaton,FL:CRCPress,

2014.

[3] G.Masters,“PhotovoltaicMaterialsandElectricalCharacteristics”RenewableandEfficient

Electric Power Systems, 2ndEdition. IEEE Press, 2013, cp. 5, pp 253-308.

[4] J.Duffie,W.Beckman,SolarEngineeringofThermalProcesses,4thEdition.Hoboken,NJ: John

Wiley & Sons, Inc., 2013.

[5] “HowtoDesignBatteryChargerApplicationsthatRequireExternalMicrocontrollersand

Related System-Level Issues”, Maxim Integrated. Available:

https://www.maximintegrated.com/en/app-notes/index.mvp/id/680[Accessed 15 July 2017].

[6] S.Maniktala,SwitchingPowerSuppliesA-Z,2ndEdition.Waltham,MA:Elsvier,Ltd.2012, ch.2,

pp. 61-120.

[7] R.Severns,G.Bloom,ModernDC-to-DCSwitchModePowerConverterCircuits.Van

Nostrand Reinhold Company Inc., 1985, cp. 5 & 6 , pp.112-150.

[8] “Step Down Buck Regulator / Converter”, Radio-Electronics [Online]. Available:

http://www.radio-electronics.com/info/power-management/switching-mode-power-supply/step-

down-buck-regulator-converter-basics.php[Accessed17July2017].

[9] “Step Up Boost Regulator / Converter”, Radio-Electronics [Online]. Available:

http://www.radio-electronics.com/info/power-management/switching-mode-power-supply/step-

up-boost-regulator-converter-basics.php[Accessed17July2017].
[10] “Buck-Boost Regulator or DC-DC Converter”, Radio-Electronics [Online]. Available:

http://www.radio-electronics.com/info/power-management/switching-mode-power-supply/dc-dc-

buck-boost-regulator-converter-basics.php [Accessed 17 July 2017].

[11] Azevedo, J., Mendoca. F., "Small scale wind energy harvesting with maximum power

tracking,"AIMSEnergy,Vol.3no.3pp.297-315.DOI:10.3934/energy.2015.3.297,July2015.

[12] Choudhary,D.,Sexana,A.R.”DC-DCBuck-ConverterforMPPTofPVSystem,”

InternationalJournalofEmergingTechnologyandAdvancedEngineering,2014.

[13] Mittal,A,Arora,K.,”ControlofWindEnergybyUsingBuck-BoostConverter,”

InternationalJournalofEmergingTechnologyandAdvancedEngineering,2015.

[14] Ambia,M.N.,Islam,M.K.,Shoeb,M.A.,Maruf,M.N.I.,Mohsin,A.S.M."Ananalysis&design on

micro generation of a domestic solar-wind hybrid energy system for rural & remote areas -

perspective Bangladesh," 2nd International Conference on Mechanical and Electronics Engineering

(ICMEE), 2010, vol.2, pp.V2-107-V2-110, 1-3 Aug. 2010.

[15] Dali,M.,Belhadj,J.,Roboam,X.,Blaquiere,J.M."Controlandenergymanagementofawind-

photovoltaic hybrid system," 2007 European Conference on Power Electronics and Applications,

pp.1-10, 2-5 Sept. 2007.

[16] Fontes,N.,Roque,A.,Maia,J."Microgeneration —Solarandwindhybridsystem," 5th

International Conference on European Electricity Market, 2008, pp.1-5, 28-30 May 2008.

[17] Yang,H.,Zhou,W.,Lu,L.,Fang.Z.“Optimalsizingmethodforstand-alonehybridsolar-wind with

LPSP technology by using genetic algorithm,” Solar Energy 2007, pp. 354-367, 2008.

[18] “Secrets of PWM”, Arduino [Online]. Available:

https://www.arduino.cc/en/Tutorial/SecretsOfArduinoPWM[Accessed15August2017].

[19] “ArduinoUnoR3”,Robomart[Online].Available:https://www.robomart.com/arduino-uno-

online-india [Accessed 16 August 2017].


[20]“Analog Input Pins”, Arduino [Online]. Available:

https://www.arduino.cc/en/Tutorial/AnalogInputPins[Accessed16August2017].

[21] “VoltageDividers”,Sparkfun[Online].Available

https://learn.sparkfun.com/tutorials/voltage-dividers[Accessed12October2017].

[22] AllegroMicroSystems,“FullyIntegrated,HallEffect-BasedLinearCurrentSensorICwith

2.1kVRMSIsolationandaLow-ResistanceCurrentConductor,”ACS712datasheet,Nov.2015 [Revised

June 2017].

[23] “ACS712 Current Detection Sensor”, Lynx.2105.wordpress [Online]. Available:

https://lynx2015.wordpress.com/2016/08/15/sensing-current-with-asc712-connected-to-

arduino/asc712-current-detection-sensor/ [Accessed 16 August 2017].

[24]InternationalRectifier,“IRFZ44NPdfHEXFETPowerMOSFET,”IRFZ44NPbFdatasheet,

Aug. 2010.

[25] InternationalRectifier,“IR2104(S)&(PbF)HalfBridgeDrive,”IR2104datasheet,Apr.

2004.

[26] “Understanding ESR in Electrolytic Capacitor”, AVNET [Online]. Available:

https://www.avnet.com/wps/portal/abacus/resources/engineers-insight/article/understanding-esr-

in-electrolytic-capacitors [Accessed 17 August 2017]

[27] Coilcraft,“ShieldPowerInductors–RFS1317Series,”RFS1317datasheet,Aug.2017.

[28] VishayGeneralSemiconductor,“PhotovoltaicSolarCellProtectionSchottkyRectifier”

VSB2045 datasheet, Nov. 2013.

[29] “896”,Mouser[Online].Available:http://www.mouser.com/ds/2/378/896-1886.pdf

[Accessed13October2017]
[30] “Solar Panel - Monocrystalline - 24 - 125W”, Alekoproducts.com. Available:

http://www.alekoproducts.com/ALEKO-Solar-Panel-125-Watt-24-Volt-Monocrystallin-

p/sp125w24v-ap.htm%20,- [Accessed 13 October 2017].

[31] “Missouri Basic 500 Watt 5 Blade Wind Turbine,” Mwands [Online] Available:

http://mwands.com/store/wind-turbine-products/wind-turbine-generators/500-watt-5-blade-

basic[Accessed 14 October 2017].

[32] “60W Constant Current Electronic Load Batter Capacity Tester,” Land-Boards [Online]

Available: http://land-boards.com/blwiki/index.php?

title=60W_Constant_Current_Electronic_Load_Battery_Capacity_ Tester [Accessed 14 October

2017].

[33] “WindTurbineDumpandDiversionLoads:WhatTheyDoandHowtoChoosetheRight

System”, Windynation.com. Available: https://www.windynation.com/jzv/inf/wind-turbine-

dump-and-diversion-loads-what-they-do-and-how-choose-right-s[Accessed13October2017]

[34] ONSemiconductor,“LCselectionGuidefortheDC-DCsynchronousBuckConverter,” Apr.

2013.

[35] “Calculation Current Ratings of Photovolatic Modules”, ECMWeb.com. Available:

http://www.ecmweb.com/green-building/calculating-current-ratings-photovoltaic-

modules[Accessed 18 October 2017].

[36] Hauke,B.“BasicCalculationsofaBuckConverter’sPowerStage,”TexasInstruments,

Dec.2011[RevisedAug. 2015]

[37] Atmel,“ATMega328/P”ATMega328/Pdatasheet,Nov.2016.

[38] MICROCHIP,“8-BitCMOSMicrocontrollerswithA/DConverter”

PIC16C63A/65B/73B/74B datasheet, Nov. 2012.


[39] “Electric Power Efficiency”, RapidTables [Online]. Available:

http://www.rapidtables.com/electric/efficiency.htm[Accessed11/1/2017].

You might also like