This is an old revision of the document!


Solar-Powered Solar Tracker

Introducere

Proiectul presupune crearea unui brat dotat cu un panou solar si baterie, care urmareste cea mai puternica sursa de lumina pentru a genera energie. Ar trebui sa fie complet autonom, si chiar sa produca (ideal) un exces de energie ce este stocata in baterie si poate fi folosita pentru a incarca alte lucruri, spre exemplu un telefon (in cel mai bun caz) sau alti senzori/alte microcontrollere pentru alte scopuri.

Descriere generală

Ne vom folosi de niste piese relativ comune pentru partea de tracking efectiv. Patru fotorezistoare (cuplate cu rezistente) indica directia celei mai apropiate surse de lumina. Semnalele acestora ajuta microcontroller-ul sa stie in ce directie sa miste servo-urile, astfel incat sa potriveasca senzorii (si deci si panoul) in directia luminii.

Pe partea de baterie, output-ul de la panoul solar este dus printr-un convertor step-down pentru a incarca o baterie, apoi din aceasta baterie se sustrage curent printr-un alt convertor step-up pentru a alimenta partea de tracker.

Un alt step-up este folosit pentru a pune la dispozitie energia din baterie pentru un USB la care se pot conecta alte dispozitive pentru alimentare.

Hardware Design

Pentru lista de piese electrice avem urmatoarele:

Pini folositi Arduino UNO:

  • PB1 (PWM) - Controleaza servo-ul vertical pentru a asigura prima axa de miscare
  • PB2 (PWM) - Controleaza servo-ul orizontal pentru a asigura a doua axa de miscare
  • PC0 (Analog) - Citeste tensiunea de la LDR-ul Bottom-Left
  • PC1 (Analog) - Citeste tensiunea de la LDR-ul Top-Left
  • PC2 (Analog) - Citeste tensiunea de la LDR-ul Top-Right
  • PC3 (Analog) - Citeste tensiunea de la LDR-ul Bottom-Right
  • 5V - Asigura alimentarea placii de la si pentru restul sistemului
  • GND - Asigura un ground comun pentru placa si restul sistemului

Capacitate / Consum:

Dat fiind faptul ca sistemul ar trebui sa functioneze in mod autonom, preferam ca si consumul sistemului sa fie unul minim. In acest moment, cei mai mari consumatori sunt cele doua servo-uri, care impreuna pot consuma pana la 1.6A la un moment-dat.

Pentru a pastra o autonomie maxima si spike-uri reduse, servo-urile vor fi folosite alternativ. Acest comportament va fi descris in partea de software.

Presupunem ca dorim o autonomie de aproximativ 8 ore de utilizare (cam cat este soarele afara). Avand in vedere ca soarele nu se misca atat de rapid, putem limita perioada de reglaj o data la aproximativ 10 secunde, unde servo-urile se vor regla cate 1 secunda fiecare.

\begin{align*} \text{8 ore} &= 8 \times 60 \times 60 = 28,800 \text{ secunde} \\ \text{Numar cicluri de reglaj} &= \frac{28,800}{10} = 2,880 \text{ cicluri} \\ \text{Durata totala activare servo-uri} &= 2,880 \times 2\text{s} = 5,760 \text{ secunde} = 1,6 \text{ ore} \\ \text{Consum total intr-o zi} &= 1,6 \text{ ore} \times 0,8 \text{ A} = \boxed{1,28 \text{ Ah/zi}} \end{align*}

Pe partea de generare, panoul solar genereaza 0.6A @ 18V, adica ~2A @ 5V ce acopera consumul sistemului (si reincarca bateria dupa ce se descarca peste noapte) si mentine un exces de energie ce poate fi livrat catre USB si folosit pentru incarcarea altor dispozitive.

Functionare:

Vertical Tracking: https://youtube.com/shorts/u4yYX83uTCU

Dual Axis Tracking: https://youtube.com/shorts/HjnJQubxL1o

Functionarea de mai sus este intr-un mod low-power deoarece Arduino Uno poate trimite doar 400mA prin pinul de 5V si nu alimenteaza corespunzator servo-urile.

Din nefericire daca se misca prea repede pe acest suport provizoriu, este posibil sa sara putin. Voi avea un alt suport pentru stabilitate, iar pentru miscarea panoului solar (care e mult mai mare) miscarea orizontala va fii limitata la ~15 grade.

Stadiul actual (neincluzand panoul solar):

Software Design

Mediul de dezvoltare: Arduino IDE v2

Biblioteci folosite:

  • Servo.h - Folosit initial pentru controlarea servo-urilor

Descriere algorithm:

Partea de software a tracker-ului este relativ simpla. Aceasta este impartita in doua lucruri principale: senzorii de lumina (light-dependent rezistors) si servo-urile ce modifica pozitia senzorilor (si deci a panoului) pe cele doua axe.

Intr-un ciclu de reglare tensiunile de la senzori sunt masurate cu ADC de catre microcontroller pentru a observa nivelele de lumina detectate de fiecare. In cazul in care vreunul din senzori are o lumina mai puternica, semnalul acestuia creste, indicand faptul ca ar trebui mutat panoul in acea directie. Aceasta mutare se face in doi pasi, mai intai orizontal, apoi vertical (sau invers).

Dat fiind ca soarele nu se misca foarte rapid, putem regla frecventa acestor cicluri de reglare, sensitivitatea senzorilor (adica cat de mare trebuie sa fie diferenta intre senzori pentru a se face vreo miscare) si pasul servo-urilor, intrucat cu o frecventa mai joasa am dori un pas mai mare.

Rezultate Obţinute

Care au fost rezultatele obţinute în urma realizării proiectului vostru.

Concluzii

Download

O arhivă (sau mai multe dacă este cazul) cu fişierele obţinute în urma realizării proiectului: surse, scheme, etc. Un fişier README, un ChangeLog, un script de compilare şi copiere automată pe uC crează întotdeauna o impresie bună ;-).

Fişierele se încarcă pe wiki folosind facilitatea Add Images or other files. Namespace-ul în care se încarcă fişierele este de tipul :pm:prj20??:c? sau :pm:prj20??:c?:nume_student (dacă este cazul). Exemplu: Dumitru Alin, 331CC → :pm:prj2009:cc:dumitru_alin.

Jurnal

Puteți avea și o secțiune de jurnal în care să poată urmări asistentul de proiect progresul proiectului.

Bibliografie/Resurse

Listă cu documente, datasheet-uri, resurse Internet folosite, eventual grupate pe Resurse Software şi Resurse Hardware.

Export to PDF

pm/prj2025/avaduva/robert_andrei.tache.1747938349.txt.gz · Last modified: 2025/05/22 21:25 by robert_andrei.tache
CC Attribution-Share Alike 3.0 Unported
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0