- Components necessaris per a Arduino Solar Tracker:
- Com funciona un rastrejador solar d’un eix?
- Com es construeix un panell solar giratori amb Arduino:
- Diagrama del circuit i explicació:
- Seguidor solar d’un eix que utilitza el codi Arduino:
En aquest article, farem un panell solar de seguiment solar mitjançant Arduino, en el qual utilitzarem dos LDR (resistència dependent de la llum) per detectar la llum i un servomotor per girar automàticament el panell solar en la direcció de la llum solar.. L’avantatge d’aquest projecte és que els panells solars sempre seguiran la llum del sol, sempre enfrontaran al sol per carregar-se tot el temps i poden proporcionar al subministrament la màxima potència. El prototip és molt fàcil de construir. A continuació trobareu la descripció completa de com funciona i com es fa el prototip.
Components necessaris per a Arduino Solar Tracker:
A continuació es detallen els components necessaris per construir un sistema de seguiment solar mitjançant Arduino; la majoria dels components haurien d’estar disponibles a la vostra botiga local.
- Servomotor (sg90)
- Panell solar
- Arduino Uno
- LDR's X 2 (resistència dependent de la llum)
- 10K resistències X 2
- Bateria (6 a 12V)
Com funciona un rastrejador solar d’un eix?
En aquest projecte, els LDR treballen com a detectors de llum. Abans d’entrar en els detalls, haurem d’entendre com funciona el LDR. LDR (Light Dependent Resistor) també conegut com a foto-resistor és el dispositiu sensible a la llum. La seva resistència disminueix quan hi cau la llum i és per això que s'utilitza amb freqüència al circuit del detector de foscor o llum. Consulteu aquí els diferents circuits basats en LDR.
Els dos LDR es col·loquen als dos costats del panell solar i el servomotor s’utilitza per girar el panell solar. El servo mourà el panell solar cap a la LDR la resistència de la qual serà baixa, és a dir, cap a la LDR sobre la qual cau la llum, d'aquesta manera seguirà seguint la llum. I si hi ha una mica de llum que cau sobre el LDR, el servo no girarà. El servo intentarà moure el panell solar en la posició en què tots dos LDR tindran la mateixa resistència, on caurà la mateixa quantitat de llum sobre les dues resistències i si la resistència d'un dels LDR canvia, gira cap a una resistència més baixa. LDR. Consulteu el vídeo de demostració al final d’aquest article.
Com es construeix un panell solar giratori amb Arduino:
Per fer el prototip, haureu de seguir els passos següents:
Pas 1:
Primer de tot, agafeu un petit tros de cartró i feu un forat a un extrem. Inserirem el cargol per fixar-lo amb el servo més endavant.
![]()
Pas 2:
Ara fixeu dos petits trossos de cartró entre si en forma de V amb ajuda de cola o pistola calenta i col·loqueu-hi panell solar.
![]()
Pas 3:
A continuació, fixeu la part inferior de la forma de V a l’altre extrem d’un petit tros de cartró on heu fet un forat al primer pas.
![]()
Pas 4:
Ara introduïu el cargol al forat que heu fet a la cartolina i introduïu-lo a través del forat al servo. El cargol ve amb el servomotor en comprar-lo.
![]()
Pas 5:
Ara col·loqueu el servo en un altre tros de cartró. La mida del cartró hauria de ser prou gran per poder-hi col·locar un Arduino Uno, una placa de pa i una bateria.
![]()
Pas 6:
Connecteu els LDR als dos costats del panell solar amb l'ajuda de cola. Assegureu-vos que heu soldat els cables amb les potes dels LDR. Més endavant haurà de connectar-los amb les resistències.
![]()
Pas 7:
Ara col·loqueu l'Arduino, la bateria i el tauler de suport al cartró i feu la connexió tal com es descriu a la secció de diagrama de circuits i explicació següent. El prototip final es mostra a continuació.
![]()
Diagrama del circuit i explicació:
A continuació es mostra el diagrama de circuits complet del projecte d’arduino de seguiment solar. Com podeu veure, el circuit és molt senzill i es pot construir fàcilment amb l'ajut d'una petita tauleta.
![]()
En aquest Arduino Solar Panel Tracker, Arduino funciona amb la bateria de 9V i totes les altres parts són alimentades per Arduino. El voltatge d'entrada recomanat per Arduino és de 7 a 12 volts, però podeu alimentar-lo dins del rang de 6 a 20 volts, que és el límit. Intenteu alimentar-lo dins del voltatge d'entrada recomanat. Connecteu el cable positiu de la bateria al Vin de l’Arduino i el cable negatiu de la bateria a la terra de l’Arduino.
A continuació, connecteu el servo a l'Arduino. Connecteu el cable positiu del servo al 5V d'Arduino i el cable de terra a la terra de l'Arduino i, a continuació, connecteu el cable de senyal del Servo al pin digital 9 d'Arduino. El servo ajudarà a moure el panell solar.
Ara connecteu els LDR a l'Arduino. Connecteu un extrem del LDR a un extrem de la resistència de 10 k i connecteu-lo també a l'A0 de l'Arduino i connecteu l'altre extrem d'aquesta resistència a terra i connecteu l'altre extrem de LDR al 5V. De la mateixa manera, connecteu un extrem del segon LDR a un extrem de l'altra resistència de 10 k i connecteu també aquest extrem a l'A1 d'Arduino i connecteu l'altre extrem d'aquesta resistència a terra i connecteu l'altre extrem de LDR a 5 V de Arduino.
Seguidor solar d’un eix que utilitza el codi Arduino:
El codi d’aquest seguidor de panells solars basat en Arduino és fàcil i ben explicat pels comentaris. En primer lloc, inclourem la biblioteca per al servomotor. A continuació, inicialitzarem la variable per a la posició inicial del servomotor. Després d'això, inicialitzarem les variables a llegir des dels sensors LDR i Servo.
#incloure
L'ordre sg90.atach (servopin) llegirà Servo des del pin 9 d'Arduino. A continuació, establim els pins LDR com a pins d'entrada perquè puguem llegir els valors dels sensors i moure el panell solar d'acord amb això. A continuació, establim el servo motor a 90 graus, que és la posició inicial del servo.
void setup () {sg90.attach (servopin); // connecta el servo al pin 9 pinMode (LDR1, INPUT); // Fer el pin LDR com pinMode d'entrada (LDR2, INPUT); sg90.write (posició_inicial); // Mou el servo a 90 graus de retard (2000); // donant un retard de 2 segons}
A continuació, llegirem els valors dels LDR i els guardarem a R1 i R2. Després farem la diferència entre els dos LDR per moure el servo en conseqüència. Si la diferència entre ells serà nul·la, significa que cau la mateixa quantitat de llum sobre els dos LDR, de manera que el panell solar no es mourà. Hem utilitzat una variable anomenada error i el seu valor és 5, l’ús d’aquesta variable és que si la diferència entre els dos LDR serà inferior a 5, el servo no es mourà. Si no ho fem, el servo continuarà girant. I si la diferència és superior al valor d'error (5), el servo mourà el panell solar en la direcció de la LDR, sobre la qual cau la llum. Consulteu el codi complet i el vídeo de demostració a continuació.
int R1 = analogRead (LDR1); // valor de lectura de LDR 1 int R2 = analogRead (LDR2); // valor de lectura de LDR 2 int diff1 = abs (R1 - R2); // Càlcul de la diferència entre la diferència int L2 de LDR = abs (R2 - R1); if ((diff1 <= error) - (diff2 <= error)) {// si la diferència és inferior a l'error, no feu res} else {if (R1> R2) {posició_inicial = --posició_inicial; // Mou el servo cap a 0 graus} si (R1 <R2) {posició_inicial = ++ posició_inicial; // Mou el servo cap a 180 graus}}
Així és com podeu construir un simple seguidor de panells solars, que es desplaçarà automàticament cap a la llum com un gira-sol. Aquí hem utilitzat el panell solar de baixa potència per reduir el pes, si teniu previst utilitzar un panell solar d'alta potència o pesat, heu de triar el Servomotor en conseqüència.
