Gabriel-Ovidiu MIHAI (25539) - Incarcator Solar

Autorul poate fi contactat la adresa: Login pentru adresa

Introducere

Scopul proiectului este de a realiza un incarcator pentru acumulatorul telefonului mobil, folosind ca sursa de energie un panou solar ce se orienteaza dupa cea mai puternica sursa de lumina. Ceea ce isi propune proiectul este sa dezvolte acest model in scop pedagogic, deoarece utilitatea acestuia este redusa, placa de baza fiind ea insasi alimentata la o sursa de tensiune ce putea incarca acumulatorul telefonului.

Descriere generală

Realizarea acestui proiect presupune existeanta unui panou solar, care se va orienta dupa cea mai puternica sursa de lumina. Orientarea panoului este realizata cu ajutorul unui servomotor care va invarti o placa de suport, amplasata la 45 de grade, pe care se va afla panoul solar si doi senzori de intensitate luminoasa. Dupa identificarea sursei de lumina, tensiunea va fi directionata catre incaratorul acumulatorului.

Schema bloc:

Hardware Design

Necesarul de materiale este urmatorul:

1. Panou soalr: 1V 100mA

2. Micro servomotor SG90

3. Modul fotorezistor - 2 bucati

4. Sursa Pololu Step-Up U1V10F5 de 5 V (ridicatoare)

5. Incarcator TP4056 cu MICRO USB pentru Baterie LiPo (1A)

Servomotorul va fi actionat de catre microcontroller, iar alimentarea se va face de la placa de baza. Microcontrollerul va colecta de asemenea si datele oferite de senzori. Iesirea panoului solar va fi conectata la sursa ridicatoare si stabilizatoare de tensiune, care va genera un curent ce va avea tensiunea de 5V. Acest curent va fi redirectat catre incarcatorul specificat, iar din acela catre telefon.

Software Design

Valorile oferite de senzorii de intensitate luminoasa vor fi colectati de pe pinii portului A. Pentru acest lucru voi folosi urmatoarele functii:

void ADC_init(void){ #ifndef ADC_USE_IRQ

// enable ADC with:
// *reference AVCC with external capacitor at AREF pin
// *without left adjust of conversion result
// *no auto-trigger
// *no interrupt
// *prescaler at 128
ADMUX = (1 << REFS0);
ADCSRA = (1 << ADEN) | (7 << ADPS0);

#else

// enable ADC with interrupt
ADMUX = (1 << REFS0) | (1 << ADC_INIT_CHANNEL);
ADCSRA = (1 << ADEN) | (1 << ADSC) | (1 << ADIE) | (7 << ADPS0);

#endif }

int ADC_get(uint8_t channel){ #ifndef ADC_USE_IRQ

// start ADC conversion on "channel"
// wait for completion
// return the result
ADMUX = (ADMUX & ~(0x1f << MUX0)) | channel;
ADCSRA |= (1 << ADSC);
while(ADCSRA & (1 << ADSC));
return ADC;

#else

return ADC_value[channel];

#endif }

Servomotorul va fi rotit 180 de grade, timp in care se va identifica valoarea cea mai mare a intensitatii. Dupa aceea, panoul va fi adus in acea pozitie.

Rezultate Obţinute

Rezultatul este unul multumitor, cea mai puternica sursa de lumina putand fi determinata cu o precizie destul de ridicata! Un mic neasjuns il constituie partea de incarcare efectiva, panoul generand un curent foarte mic pentru a putea realiza incarcarea intr-un timp optim. Aspectul este unul dragut. Echipamentul poate fi usor de transportat.

Concluzii

In urma realizarii proiectului am ramas cu cunostinte tehnice considerabile. Proiectul a fost unul inedit, nemaifacand asta pana acum. Indeplinirea obiectivului mi-a adus multa satisfactie. Sper ca in viitor sa pot dezvolata si alte proiecte de acest fel.

Download

Arhiva atasata contine resursele folosite, documente utile si un fisier de cod provizoriu.

incarcatorsolar_resurse.zip

Bibliografie/Resurse

Datasheet ATmega324A - http://cs.curs.pub.ro/wiki/pm/_media/doc8272.pdf

Descriere Micro Servo SG90 - http://www.micropik.com/PDF/SG90Servo.pdf

Descriere Sursa Pololu Step-Up - https://www.pololu.com/product/2564

pm/prj2016/avoinescu/gabrielm.txt · Last modified: 2021/04/14 17:07 (external edit)
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