advanced artificial intelligence algorithms for microcontrollerbased maximum power point tracking of...

25
Advanced Artificial Intelligence Algorithms for Microcontroller based Maximum Power Point Tracking of Photovoltaic Group 1 T.D.Motkar : 37

Upload: kedarunipune

Post on 17-Jan-2023

0 views

Category:

Documents


0 download

TRANSCRIPT

Advanced Artificial Intelligence

Algorithms for Microcontroller

based Maximum Power Point Tracking of

PhotovoltaicGroup 1T.D.Motkar : 37

Introduction• Among renewable energy sources, solar energy has proved to be most useful. Usually solar panel efficiency is not high.

• MPPT actually reduces the deficit between electrical power supplying capability of PV array and power supplied by PV array to electrical load.

PV Panel Characteristics

• A PV cell can be modeled as a current source and a diode

• Maximum power is delivered near the “knee” of the curve

Traditional Algorithms• Perturb & Observation(P&O)

1. Move the operating point2. Observe the change in power3. Keep moving towards higher power

• Hill Climbing 1. Pick a random point in the search space 2. Consider all the neighbours of the current state 3. Choose the neighbour with the best quality and move to that state 4. Repeat 2 thru 4 until all the neighbouring states are of lower quality 5. Return the current state as the solution state

• Many others

Proposed Algorithms• Stimulated Annealing(SA)• Fuzzy Logic• Particle Swarm Optimization(PSO)

Stimulated Annealing(SA)

startingpoint

descenddirection

local minima

global minima

barrier to local search

Difficulty in Searching Global Optima

Animation

SA Algorithm• Step 1: Generate random duty cycle, Di.• Step 2: Measure corresponding PV current, Ii and voltage, Vi.• Step 3: Calculate input Power, Pi=Ii*Vi .• Step 4: Generate random duty cycle, Dk.• Step 5: Measure corresponding PV current, Ik and voltage, Vk.• Step 6: Calculate input Power, Pk=Ik*Vk .• Step 7: Cost function, ζi=offset-Pi .• Step 8: Cost function, ζk=offset-Pk .• Step 9: If ζk<ζi then Di =Dk .• Step 10: Else if ζk>ζi compute ƒ=Exp (ζi-ζk)/T.• Step 10.1: If ƒ>tolerance, Di=Dk .• Step 10.2: Else if ƒ<tolerance, Di=Di .• Step 11: T=T-tolerance*T/sensitivity.• Step 12: jump to step (4) for finite number of iterations.

Advantages of SASettling time may differ but all the results show conformitywith the fact than finally SA algorithm successfully tracks MPP with null steady state error.

Fuzzy Logic• Step 1: Define sensitivity, step size and step number.

Define function for fuzzying crisp value. In this paperlinear function with a step number of nine is used.

• Step 2: Generate random duty cycle (D2).• Step 3: Generate random duty cycle (D1).• Step 4: Measure corresponding current and voltage.• Step 5: Calculate power using measured value of voltage and

current.• Step 6: Find Fuzzy value of current, voltage and power.• Step 7: P_low_low_fuzzy=

min(I_high_high_fuzzyV_low_low_fuzzy )P_high_low_fuzzy=min(I_high_high_fuzzyV_medium_low_fuzzy )P_low_medium_fuzzy=max(min(I_high_high_fuzzyV_high_low_fuzzy)min(I_low_low_fuzzyV_high_high_fuzzy ))

• P_medium_medium_fuzzy=max(min(I_high_highfuzzy,V_low_medium_fuzzy)min(I_medium_low_fuzzyV_high_high_fuzzy ))

• P_high_medium_fuzzy=max(min(I_high_high_fuzzy,V_medium_medium_fuzzy)min(I_low_medium_fuzzy.V_high_high_fuzzy)min(I_high_low_fuzzyV_high_high_fuzzy ))

• P_low_high_fuzzy=max(min(I_high_high_fuzzyV_high_medium_fuzzy) min(I_medium_medium_fuzzy V_high_high_fuzzy ))

• P_medium_high_fuzzy=max(min(I_high_high_fuzzy,V_low_high_fuzzy)min(I_low_high_fuzzyV_high_high_fuzzy)min(I_high_medium_fuzzy V_high_high_fuzzy ))

• P_high_high_fuzzy=min(I_medium_high_fuzzyV_medium_medium_fuzzy )

• Step 8: If P_high_high_fuzzy> resolution 1 and P_medium_high_fuzzy> resolution 2, Then D2=D1.

• Step 9: Else jump to step 3.• Step 10: D2 contains desired duty cycle.

Advantages of fuzzy logic

In fuzzy logic algorithm by controlling step size and

step number, convergence time and steady state error

can be controlled effectively.

Particle Swarm Optimization

• P_medium_medium_fuzzy=max(min(I_high_highfuzzy,V_low_medium_fuzzy)min(I_medium_low_fuzzyV_high_high_fuzzy ))

• P_high_medium_fuzzy=max(min(I_high_high_fuzzy,V_medium_medium_fuzzy)min(I_low_medium_fuzzy.V_high_high_fuzzy)min(I_high_low_fuzzyV_high_high_fuzzy ))

• P_low_high_fuzzy=max(min(I_high_high_fuzzyV_high_medium_fuzzy)min(I_medium_medium_fuzzy V_high_high_fuzzy ))

• P_medium_high_fuzzy=max(min(I_high_high_fuzzy,V_low_high_fuzzy)min(I_low_high_fuzzyV_high_high_fuzzy)min(I_high_medium_fuzzy V_high_high_fuzzy ))

• P_high_high_fuzzy=min(I_medium_high_fuzzyV_medium_medium_fuz• zy )• Step 8: If P_high_high_fuzzy> resolution 1 and• P_medium_high_fuzzy> resolution 2, Then D2=D1.• Step 9: Else jump to step 3.• Step 10: D2 contains desired duty cycle.

16

• Particles fly around in a multidimensional search space. During flight, each particle adjusts its position according to its own experience, and according to the experience of a neighboring particle, making use of the best position encountered by itself and its neighbor.

Diagrammatic Representation

Here I am!

The best perf. of my neighbours

My best perf.

x pg

pi

v

18

1. Initialize population in hyperspace

2. Evaluate fitness of individual particles

3. Modify velocities based on previous best and global (or neighborhood) best positions

4. Terminate on some condition5. Go to step 2

Particle Swarm Optimization (PSO)

Process

PSO Algorithms• Step 1:

Initialize own learning rate, Lo=0.Initialize learning rate from neighbors, Ln=1Initialize number of iterations, Ite=15

• Step 2:Generate 4 random duty cycles[SWRM] i

• Step 3:Calculate [P] i corresponding to [SWRM] i

• Step 4:Duty cycle corresponding to P max is consideredglobal variable.

• Step 5:

[SWRM] i+1=Lo*[SWRM] i +Ln*[global-[SWRM] i]– Ln*i*[global-[SWRM] i] / Ite.

• Step 6:i=i+1Ln = Ln- sensitivityLo=Lo+ sensitivity

• Step 7:Jump to step 3 until i=Ite

• Step 8:[SWRM] contains the desired duty cycletracked by 4 intelligent swarms.

• Step 9:[P] Corresponding to [SWRM] is the desiredMPP.

Advantage of PSOPSO algorithm is very simple yet it offers a great deal

of flexibility to suit changing weather conditions by

adjusting few parameters.

References