This is an old revision of the document!
Proiectul va consta intr-un panou solar aflat pe un suport rotativ ce se va adapta la conditiile de mediu si se va orienta spre sursa de lumina astfel incat tensiunea generata va fi maxima.
Scopul proiectului este de a dezvolta un panou solar care este capabil sa utilizeze cantitatea maxima de lumina disponibila, indiferent de mediul in care se afla.
Ideea acestui proiect mi-a venit inca din liceu, cand discutam cu profesorul meu de fizica despre viitorul industriei energetice. De atunci mi-am dorit sa fac acest proiect, iar acum am ocazia de a-l realiza.
Utilitatea proiectului provine din faptul ca se va putea aplica la scara larga si ca modelul matematic dezvoltat pentru calibrare poate fi refolosit si in alte situatii.
Calibrarea panoului se va face fie automat, daca tensiunea generata in acel moment scade sub un anumit prag sau daca a trecut un timp T de la ultima calibrare, fie manual, prin apasarea unui buton.
Modelul matematic folosit este unul relativ simplu, dar eficient. Calibrarea se realizeaza prin scanarea a 5 puncte distincte is apoi ajustarea unghiurilor de rotatie ale celor 2 servomotoare ca sa se obtina pozitia de tensiune maxima.
Modelul are la baza aproximatia ca tensiunea generata de panoul solar pentru o anumita configuratie a servomotoarelor (unghi_motor_fix, unghi_motor_mobil) este egala cu produsul scalar dintre vectorul razei de lumina si vectorul descris de configuratia servomotoarelor. Acest model respecta ideea ca, atunci cand panoul solar se afla perpendicular pe vectorul razei de lumina, tensiunea generata este maxima. De asemenea, cand panoul solar este paralel cu raza de lumina, tensiunea generata este 0.
Asta presupune ca, prin calcularea valorilor din cele 5 configuratii, programul are un sistem de ecuatii pe care trebuie sa il rezolve pentru configuratia vectorului razei de lumina.
Pentru o mai buna modelare a realitatii, voi rezolva sistemul de ecuatii dupa ce scad minimul dintre toate valorile din toate valorile obtinute in faza de scanare. Acest pas se bazeaza pe faptul ca exista lumina ambientala, ce genereaza tensiune indiferent de orientarea panoului.
O alta optimizare o reprezinta calcularea configuratiei folosind doar valorile cele mai mari din combinatiile de 2 ecuatii folosite pentru calcul. Ideea din spate este ca modelul matematic prezice tensiune negativa cand panoul este orientat cumva cu spatele la sursa de lumina (unghiul depaseste 90 de grade), pe cand in realitate am vedea tensiune 0 (sau pozitiva, dar foarte mica, datorata luminII ambientale). In acest caz, ma asigur ca voi calcula unghiurile pentru cadranul corect in care sa incadrez panoul.
Desi programul prevede si o etapa de ajustare iterativa, am observat ca nu este necesara neaparat, deoarece aproximatia matematica este satisfacatoare.
Lista de componente:
Am structurat codul sub forma unui automat finit cu 4 stari:
Flow-ul este acesta:
Init -> ajusteaza dupa model matematic -> asteapta conditie reajustare
Se poate observa ca in solutia finala nu implementez metoda iterativa, deoarece adauga un overhead executabilului si am considerat ca nu adauga imbunatatiri semnificative.