SlideShare a Scribd company logo
Inseguitore solare
Bartolo Aiuto 5B a.s. 2014/15
IIS 'L. Da Vinci' Trapani
L'obiettivo del progetto è realizzare un controllo
automatico della posizione angolare di un pannello
fotovoltaico in modo da massimizzare la resa energetica
Materiale utilizzato
Scheda Arduino uno
Mini pannello fotovoltaico
Motore passo passo e
4 resistenze e 2 pulsanti
470Ω1KΩ
2 foto resistenze
Regolatore di carica, batteria e
una lampadina
Schema a blocchi: i due sensori, i fine corsa, arduino, il motore.
Il sistema misura la luminosità sui due bordi del pannello, grazie agli ingressi
analogici di Arduino, quindi agisce sul motore in modo da minimizzare la
differenza tra i due valori ….
Schema elettrico
Il sistema è alimentato a 5VDC. Le fotoresitenze attraverso un partitore resistivo
generano un segnale analogico mentre i finecorsa un segnale digitale.
Il motore passo passo richiede un driver di potenza gestito da 4 pin di uscita di
Arduino ed una alimentazione separata.
Start
int Steps2Take;
float RF1 = 0;
float RF2 = 0;
float A = 0;
int val = 0;
float RF1 = analogRead(A0);
float RF2 = analogRed(A1);
RF1 = ((5*RF1)/1023);
RF2 = (5*RF2)/1023);
RF1>RF2
A=RF1 - RF2 A=RF2 – RF1
A>0.06
A
Dichiarazione ed
inizializzazione delle
variabili
DIAGRAMMA DI FLUSSO DEL SW
Lettura analogica dei due
sensori di luminosità e
conversione in un campo
tra 0 e 5....
Si calcola il valore
assoluto della differenza
if ( val == 0)
val= digitalRead(12);
break
RF1>RF2
A>0.06
A
small_stepper.setSpeed(200);
Steps2Take = 6;
small_stepper.step(Steps2Take);
float RF1 = analogRead(A0);
float RF2 = analogRead(A1);
RF1 = ((5*RF1)/1023)-0.10;
RF2 = (5*RF2)/1023;
RF1>RF2
A=RF1-RF2
A=RF2-RF1
B
B
Rotazione oraria.
Si controlla il fine corsa
relativo: se è attivo si ritorna
all'inizio del SW altrimenti si
entra in un ciclo che aziona il
motore in senso orario finchè
RF1 > RF2 oppure si raggiunge
il finecorsa.
if ( val == 0)
val= digitalRead(13);
break
A>0.06
B
small_stepper.setSpeed(200);
Steps2Take = -6;
small_stepper.step(Steps2Take);
float RF1 = analogRead(A0);
float RF2 = analogRead(A1);
RF1 = ((5*RF1)/1023);
RF2 = (5*RF2)/1023;
RF1>RF2
A=RF1-RF2
A=RF2-RF1
END
Rotazione antioraria.
Si controlla il fine corsa
relativo: se è attivo si ritorna
all'inizio del SW altrimenti si
entra in un ciclo che aziona il
motore in senso orario finchè
RF1 > RF2 oppure si raggiunge
il finecorsa.
Dopo avere fatto il diagramma di flusso l’ho tradotto in linguaggio c per il programmatore
Arduino
#include <Stepper.h>
#define STEPS 100
Stepper small_stepper(STEPS, 2, 4, 3, 5);
int Steps2Take;
float RF1 = 0;
float RF2 = 0;
float A = 0;
int val = 0;
void setup() {
Serial.begin(9600);
}
void loop() {
float RF1 = analogRead(A0);
float RF2 = analogRead(A1);
RF1 = ((5*RF1)/1023)-0.10;
RF2 = (5*RF2)/1023;
if ( RF1 > RF2)
A = RF1 - RF2;
else
A = RF2 - RF1;
delay (1000);
if ( A< 0.06)
{
}
else
{
if( RF1 > RF2)
{
while ( A >0.06)
{
val= digitalRead(12);
if ( val == LOW)
{
break;
}
small_stepper.setSpeed(200);
Steps2Take = 6;
small_stepper.step(Steps2Take);
delay(50);
float RF1 = analogRead(A0);
float RF2 = analogRead(A1);
RF1 = ((5*RF1)/1023)-0.10;
RF2 = (5*RF2)/1023;
if ( RF1 > RF2)
A = RF1 - RF2;
else
A = RF2 - RF1;
}
}
else
{
while (A >0.06)
{
val= digitalRead(13);
if( val == LOW)
{
break;
}
small_stepper.setSpeed(50);
Steps2Take = -6;
small_stepper.step(Steps2Take);
delay(55);
float RF1 = analogRead(A0);
float RF2 = analogRead(A1);
RF1 = ((5*RF1)/1023);
RF2 = (5*RF2)/1023;
if ( RF1 > RF2)
A = RF1 - RF2;
else
A = RF2 - RF1;
}
}
}
Molto impegnativa è stata la realizzazione della parte
meccanica; ho dovuto superare problemi di
bilanciamento del pannello e del suo collegamento
all'asse del motore che è risultato leggermente
sottodimensionato.
Conclusioni
E' stato un lavoro molto appassionante e il buon risultato mi
ha gratificato del notevole impegno che ho profuso per
diverse settimane.
Sarebbe interessante applicare questa esperienza ad un
pannello fotovoltaico di maggiori dimensioni: elettricamente
si pone il problema del comando di un motore molto più
performante, mentre il sw sostanzialmente rimarrebbe
immutato.
Un altro aspetto da approfondire è valutare se effettivamente
la resa energetica del pannello orientabile riesce a bilanciare
il consumo e la maggiore complessità di un controllo
continuo

More Related Content

What's hot

Design of a 600 mhz ddipole antenna
Design of a 600 mhz ddipole antennaDesign of a 600 mhz ddipole antenna
Design of a 600 mhz ddipole antenna
Sabrina Chowdhury
 
Integrated Circuit Applications
Integrated Circuit ApplicationsIntegrated Circuit Applications
Integrated Circuit Applications
UMAKANTH22
 
Matrix Telecom Solutions: ETERNITY GE - IP-PBX
 Matrix Telecom Solutions: ETERNITY GE - IP-PBX Matrix Telecom Solutions: ETERNITY GE - IP-PBX
Matrix Telecom Solutions: ETERNITY GE - IP-PBX
Matrix Comsec
 
Ky thuat-chuyen-mach -ky-thuat-chuyen-mach-1
Ky thuat-chuyen-mach -ky-thuat-chuyen-mach-1Ky thuat-chuyen-mach -ky-thuat-chuyen-mach-1
Ky thuat-chuyen-mach -ky-thuat-chuyen-mach-1
Huynh MVT
 
Focusing prbs pseudo random binary sequence
Focusing prbs pseudo random binary sequenceFocusing prbs pseudo random binary sequence
Focusing prbs pseudo random binary sequence
MapYourTech
 
Newton Raphson method for load flow analysis
Newton Raphson method for load flow analysisNewton Raphson method for load flow analysis
Newton Raphson method for load flow analysis
divyanshuprakashrock
 
Hormonics impact and_mitigation
Hormonics impact and_mitigationHormonics impact and_mitigation
Hormonics impact and_mitigation
Panneerselvam Rathinam
 
Solar PV and power electronics
Solar PV and power electronicsSolar PV and power electronics
Solar PV and power electronics
H Janardan Prabhu
 
Steinbeis 1MW Grid Connected System design report
Steinbeis 1MW Grid Connected System design reportSteinbeis 1MW Grid Connected System design report
Steinbeis 1MW Grid Connected System design report
Shrikant Hiremath
 
Power Electronic Converter
Power Electronic ConverterPower Electronic Converter
Power Electronic Converter
Ali
 
Radio Link budget
Radio Link budgetRadio Link budget
Radio Link budget
Spiros Louvros
 
Different Types of Solar Panel Systems
Different Types of Solar Panel SystemsDifferent Types of Solar Panel Systems
Different Types of Solar Panel Systems
wstephanie641
 
Transistors
Transistors Transistors
Transistors
thamil05
 
Solar power integration with grid
Solar power integration with gridSolar power integration with grid
Solar power integration with grid
ashishant
 
Internship feedback form
Internship feedback formInternship feedback form
Internship feedback form
Ashok Kumar Pradhan
 
Solar based multi-tasking_agriculture_ro
Solar based multi-tasking_agriculture_roSolar based multi-tasking_agriculture_ro
Solar based multi-tasking_agriculture_ro
Mohammed Mudasser
 

What's hot (16)

Design of a 600 mhz ddipole antenna
Design of a 600 mhz ddipole antennaDesign of a 600 mhz ddipole antenna
Design of a 600 mhz ddipole antenna
 
Integrated Circuit Applications
Integrated Circuit ApplicationsIntegrated Circuit Applications
Integrated Circuit Applications
 
Matrix Telecom Solutions: ETERNITY GE - IP-PBX
 Matrix Telecom Solutions: ETERNITY GE - IP-PBX Matrix Telecom Solutions: ETERNITY GE - IP-PBX
Matrix Telecom Solutions: ETERNITY GE - IP-PBX
 
Ky thuat-chuyen-mach -ky-thuat-chuyen-mach-1
Ky thuat-chuyen-mach -ky-thuat-chuyen-mach-1Ky thuat-chuyen-mach -ky-thuat-chuyen-mach-1
Ky thuat-chuyen-mach -ky-thuat-chuyen-mach-1
 
Focusing prbs pseudo random binary sequence
Focusing prbs pseudo random binary sequenceFocusing prbs pseudo random binary sequence
Focusing prbs pseudo random binary sequence
 
Newton Raphson method for load flow analysis
Newton Raphson method for load flow analysisNewton Raphson method for load flow analysis
Newton Raphson method for load flow analysis
 
Hormonics impact and_mitigation
Hormonics impact and_mitigationHormonics impact and_mitigation
Hormonics impact and_mitigation
 
Solar PV and power electronics
Solar PV and power electronicsSolar PV and power electronics
Solar PV and power electronics
 
Steinbeis 1MW Grid Connected System design report
Steinbeis 1MW Grid Connected System design reportSteinbeis 1MW Grid Connected System design report
Steinbeis 1MW Grid Connected System design report
 
Power Electronic Converter
Power Electronic ConverterPower Electronic Converter
Power Electronic Converter
 
Radio Link budget
Radio Link budgetRadio Link budget
Radio Link budget
 
Different Types of Solar Panel Systems
Different Types of Solar Panel SystemsDifferent Types of Solar Panel Systems
Different Types of Solar Panel Systems
 
Transistors
Transistors Transistors
Transistors
 
Solar power integration with grid
Solar power integration with gridSolar power integration with grid
Solar power integration with grid
 
Internship feedback form
Internship feedback formInternship feedback form
Internship feedback form
 
Solar based multi-tasking_agriculture_ro
Solar based multi-tasking_agriculture_roSolar based multi-tasking_agriculture_ro
Solar based multi-tasking_agriculture_ro
 

Similar to Inseguitore solare

Presentazione progetto biomeccatronica
Presentazione progetto biomeccatronicaPresentazione progetto biomeccatronica
Presentazione progetto biomeccatronicaAndrea Fais
 
Design of programmable medical devices_Teamwork
Design of programmable medical devices_TeamworkDesign of programmable medical devices_Teamwork
Design of programmable medical devices_TeamworkAntonella Zito
 
Lezione 2 arduino - corso 20 ore
Lezione 2 arduino - corso 20 oreLezione 2 arduino - corso 20 ore
Lezione 2 arduino - corso 20 ore
Mirko Mancin
 
Workshop Arduino by Fiore Basile
Workshop Arduino by Fiore BasileWorkshop Arduino by Fiore Basile
Workshop Arduino by Fiore Basile
Commit University
 
Presentazione
PresentazionePresentazione
Presentazionecesario
 
Car accident detector
Car accident detectorCar accident detector
Car accident detector
VladimirZitoli
 
Arkanoid on Altera DE-1
Arkanoid on Altera DE-1Arkanoid on Altera DE-1
Arkanoid on Altera DE-1
Matteo Gazzin
 
Alfabeto di Arduino - lezione 6
Alfabeto di Arduino - lezione 6Alfabeto di Arduino - lezione 6
Alfabeto di Arduino - lezione 6
Michele Maffucci
 
Robot schiva ostacoli
Robot schiva ostacoliRobot schiva ostacoli
Robot schiva ostacoli
Luigi Capasso
 
Arduino - il mio primo sketch
Arduino - il mio primo sketchArduino - il mio primo sketch
Arduino - il mio primo sketch
eugenio pombi
 
Workshop arduino
Workshop arduinoWorkshop arduino
Workshop arduino
Flaviano Fior
 
Localizzatore GPS satellitare
Localizzatore GPS satellitareLocalizzatore GPS satellitare
Localizzatore GPS satellitare
Francesco Saffioti
 
Radioastronomia amatoriale e radiotelescopi
Radioastronomia amatoriale e radiotelescopiRadioastronomia amatoriale e radiotelescopi
Radioastronomia amatoriale e radiotelescopi
Flavio Falcinelli
 
IrrigaPIC Centralina per irrigazione 8 zone per valvole 24v ac
IrrigaPIC Centralina per irrigazione 8 zone per valvole 24v acIrrigaPIC Centralina per irrigazione 8 zone per valvole 24v ac
IrrigaPIC Centralina per irrigazione 8 zone per valvole 24v ac
Davide Mercanti
 
Workshop su Arduino
Workshop su ArduinoWorkshop su Arduino
Workshop su Arduino
Paolo Aliverti
 
Arduino PLC : Modulo 1 programación Arduino Rev. 2.0
Arduino PLC : Modulo 1 programación Arduino Rev. 2.0Arduino PLC : Modulo 1 programación Arduino Rev. 2.0
Arduino PLC : Modulo 1 programación Arduino Rev. 2.0
SANTIAGO PABLO ALBERTO
 
Arduino & raspberry pi - Un connubio stimolante
Arduino & raspberry pi - Un connubio stimolanteArduino & raspberry pi - Un connubio stimolante
Arduino & raspberry pi - Un connubio stimolante
Mirco Sbrollini
 
EKOSM1230ITA (1).pdf
EKOSM1230ITA (1).pdfEKOSM1230ITA (1).pdf
EKOSM1230ITA (1).pdf
Wajdi Bellil
 

Similar to Inseguitore solare (20)

Presentazione progetto biomeccatronica
Presentazione progetto biomeccatronicaPresentazione progetto biomeccatronica
Presentazione progetto biomeccatronica
 
Design of programmable medical devices_Teamwork
Design of programmable medical devices_TeamworkDesign of programmable medical devices_Teamwork
Design of programmable medical devices_Teamwork
 
Lezione 2 arduino - corso 20 ore
Lezione 2 arduino - corso 20 oreLezione 2 arduino - corso 20 ore
Lezione 2 arduino - corso 20 ore
 
Workshop Arduino by Fiore Basile
Workshop Arduino by Fiore BasileWorkshop Arduino by Fiore Basile
Workshop Arduino by Fiore Basile
 
Presentazione
PresentazionePresentazione
Presentazione
 
Car accident detector
Car accident detectorCar accident detector
Car accident detector
 
Arkanoid on Altera DE-1
Arkanoid on Altera DE-1Arkanoid on Altera DE-1
Arkanoid on Altera DE-1
 
Alfabeto di Arduino - lezione 6
Alfabeto di Arduino - lezione 6Alfabeto di Arduino - lezione 6
Alfabeto di Arduino - lezione 6
 
Robot schiva ostacoli
Robot schiva ostacoliRobot schiva ostacoli
Robot schiva ostacoli
 
Arduino - il mio primo sketch
Arduino - il mio primo sketchArduino - il mio primo sketch
Arduino - il mio primo sketch
 
Workshop arduino
Workshop arduinoWorkshop arduino
Workshop arduino
 
Localizzatore GPS satellitare
Localizzatore GPS satellitareLocalizzatore GPS satellitare
Localizzatore GPS satellitare
 
Il pic 16 f84a
Il pic 16 f84aIl pic 16 f84a
Il pic 16 f84a
 
Radioastronomia amatoriale e radiotelescopi
Radioastronomia amatoriale e radiotelescopiRadioastronomia amatoriale e radiotelescopi
Radioastronomia amatoriale e radiotelescopi
 
IrrigaPIC Centralina per irrigazione 8 zone per valvole 24v ac
IrrigaPIC Centralina per irrigazione 8 zone per valvole 24v acIrrigaPIC Centralina per irrigazione 8 zone per valvole 24v ac
IrrigaPIC Centralina per irrigazione 8 zone per valvole 24v ac
 
Workshop su Arduino
Workshop su ArduinoWorkshop su Arduino
Workshop su Arduino
 
Arduino PLC : Modulo 1 programación Arduino Rev. 2.0
Arduino PLC : Modulo 1 programación Arduino Rev. 2.0Arduino PLC : Modulo 1 programación Arduino Rev. 2.0
Arduino PLC : Modulo 1 programación Arduino Rev. 2.0
 
Arduino & raspberry pi - Un connubio stimolante
Arduino & raspberry pi - Un connubio stimolanteArduino & raspberry pi - Un connubio stimolante
Arduino & raspberry pi - Un connubio stimolante
 
EKOSM1230ITA (1).pdf
EKOSM1230ITA (1).pdfEKOSM1230ITA (1).pdf
EKOSM1230ITA (1).pdf
 
Assembly2
Assembly2Assembly2
Assembly2
 

More from aaa bbbb

Presentazione umi siena
Presentazione umi sienaPresentazione umi siena
Presentazione umi siena
aaa bbbb
 
Progetto ldc
Progetto ldcProgetto ldc
Progetto ldc
aaa bbbb
 
Allarme antifurto gandolfo
Allarme antifurto gandolfoAllarme antifurto gandolfo
Allarme antifurto gandolfo
aaa bbbb
 
metro ad ultrasuoni
metro ad ultrasuonimetro ad ultrasuoni
metro ad ultrasuoni
aaa bbbb
 
Evola
EvolaEvola
Evola
aaa bbbb
 
Presentazione stinco 3
Presentazione stinco 3Presentazione stinco 3
Presentazione stinco 3
aaa bbbb
 
Gsm control
Gsm controlGsm control
Gsm control
aaa bbbb
 
regolazione Pid con robot lego
regolazione Pid  con robot legoregolazione Pid  con robot lego
regolazione Pid con robot lego
aaa bbbb
 
Sofisti
SofistiSofisti
Sofisti
aaa bbbb
 

More from aaa bbbb (9)

Presentazione umi siena
Presentazione umi sienaPresentazione umi siena
Presentazione umi siena
 
Progetto ldc
Progetto ldcProgetto ldc
Progetto ldc
 
Allarme antifurto gandolfo
Allarme antifurto gandolfoAllarme antifurto gandolfo
Allarme antifurto gandolfo
 
metro ad ultrasuoni
metro ad ultrasuonimetro ad ultrasuoni
metro ad ultrasuoni
 
Evola
EvolaEvola
Evola
 
Presentazione stinco 3
Presentazione stinco 3Presentazione stinco 3
Presentazione stinco 3
 
Gsm control
Gsm controlGsm control
Gsm control
 
regolazione Pid con robot lego
regolazione Pid  con robot legoregolazione Pid  con robot lego
regolazione Pid con robot lego
 
Sofisti
SofistiSofisti
Sofisti
 

Inseguitore solare

  • 1. Inseguitore solare Bartolo Aiuto 5B a.s. 2014/15 IIS 'L. Da Vinci' Trapani
  • 2. L'obiettivo del progetto è realizzare un controllo automatico della posizione angolare di un pannello fotovoltaico in modo da massimizzare la resa energetica
  • 3. Materiale utilizzato Scheda Arduino uno Mini pannello fotovoltaico Motore passo passo e 4 resistenze e 2 pulsanti 470Ω1KΩ 2 foto resistenze Regolatore di carica, batteria e una lampadina
  • 4. Schema a blocchi: i due sensori, i fine corsa, arduino, il motore. Il sistema misura la luminosità sui due bordi del pannello, grazie agli ingressi analogici di Arduino, quindi agisce sul motore in modo da minimizzare la differenza tra i due valori ….
  • 5. Schema elettrico Il sistema è alimentato a 5VDC. Le fotoresitenze attraverso un partitore resistivo generano un segnale analogico mentre i finecorsa un segnale digitale. Il motore passo passo richiede un driver di potenza gestito da 4 pin di uscita di Arduino ed una alimentazione separata.
  • 6. Start int Steps2Take; float RF1 = 0; float RF2 = 0; float A = 0; int val = 0; float RF1 = analogRead(A0); float RF2 = analogRed(A1); RF1 = ((5*RF1)/1023); RF2 = (5*RF2)/1023); RF1>RF2 A=RF1 - RF2 A=RF2 – RF1 A>0.06 A Dichiarazione ed inizializzazione delle variabili DIAGRAMMA DI FLUSSO DEL SW Lettura analogica dei due sensori di luminosità e conversione in un campo tra 0 e 5.... Si calcola il valore assoluto della differenza
  • 7. if ( val == 0) val= digitalRead(12); break RF1>RF2 A>0.06 A small_stepper.setSpeed(200); Steps2Take = 6; small_stepper.step(Steps2Take); float RF1 = analogRead(A0); float RF2 = analogRead(A1); RF1 = ((5*RF1)/1023)-0.10; RF2 = (5*RF2)/1023; RF1>RF2 A=RF1-RF2 A=RF2-RF1 B B Rotazione oraria. Si controlla il fine corsa relativo: se è attivo si ritorna all'inizio del SW altrimenti si entra in un ciclo che aziona il motore in senso orario finchè RF1 > RF2 oppure si raggiunge il finecorsa.
  • 8. if ( val == 0) val= digitalRead(13); break A>0.06 B small_stepper.setSpeed(200); Steps2Take = -6; small_stepper.step(Steps2Take); float RF1 = analogRead(A0); float RF2 = analogRead(A1); RF1 = ((5*RF1)/1023); RF2 = (5*RF2)/1023; RF1>RF2 A=RF1-RF2 A=RF2-RF1 END Rotazione antioraria. Si controlla il fine corsa relativo: se è attivo si ritorna all'inizio del SW altrimenti si entra in un ciclo che aziona il motore in senso orario finchè RF1 > RF2 oppure si raggiunge il finecorsa.
  • 9. Dopo avere fatto il diagramma di flusso l’ho tradotto in linguaggio c per il programmatore Arduino #include <Stepper.h> #define STEPS 100 Stepper small_stepper(STEPS, 2, 4, 3, 5); int Steps2Take; float RF1 = 0; float RF2 = 0; float A = 0; int val = 0; void setup() { Serial.begin(9600); } void loop() { float RF1 = analogRead(A0); float RF2 = analogRead(A1); RF1 = ((5*RF1)/1023)-0.10; RF2 = (5*RF2)/1023; if ( RF1 > RF2) A = RF1 - RF2; else A = RF2 - RF1; delay (1000); if ( A< 0.06) { } else { if( RF1 > RF2) { while ( A >0.06) { val= digitalRead(12); if ( val == LOW) { break; } small_stepper.setSpeed(200); Steps2Take = 6; small_stepper.step(Steps2Take); delay(50); float RF1 = analogRead(A0); float RF2 = analogRead(A1); RF1 = ((5*RF1)/1023)-0.10; RF2 = (5*RF2)/1023; if ( RF1 > RF2) A = RF1 - RF2; else A = RF2 - RF1; } } else { while (A >0.06) { val= digitalRead(13); if( val == LOW) { break; } small_stepper.setSpeed(50); Steps2Take = -6; small_stepper.step(Steps2Take); delay(55); float RF1 = analogRead(A0); float RF2 = analogRead(A1); RF1 = ((5*RF1)/1023); RF2 = (5*RF2)/1023; if ( RF1 > RF2) A = RF1 - RF2; else A = RF2 - RF1; } } }
  • 10. Molto impegnativa è stata la realizzazione della parte meccanica; ho dovuto superare problemi di bilanciamento del pannello e del suo collegamento all'asse del motore che è risultato leggermente sottodimensionato.
  • 11. Conclusioni E' stato un lavoro molto appassionante e il buon risultato mi ha gratificato del notevole impegno che ho profuso per diverse settimane. Sarebbe interessante applicare questa esperienza ad un pannello fotovoltaico di maggiori dimensioni: elettricamente si pone il problema del comando di un motore molto più performante, mentre il sw sostanzialmente rimarrebbe immutato. Un altro aspetto da approfondire è valutare se effettivamente la resa energetica del pannello orientabile riesce a bilanciare il consumo e la maggiore complessità di un controllo continuo