Constantin-Alin UNGUREANU - Fan controller

Autorul poate fi contactat la adresa: Login pentru adresa

Introducere

Proiectul reprezinta un sistem de ventilatie ce este influentat de 3 senzori (temperatura, umiditate, luminozitate).

Acest sistem poate fi folosit de exemplu la baie sau la hota din bucatarie: ventilatorul porneste automat cand detecteaza lumina aprinsa, apoi dupa ce nu mai este lumina mai ramane o perioada pornit la turatie joasa. De asemenea, turatia ventilatorului este influentata de temperatura sau umiditate. Senzorii nu depind unii de altii, turatia ventilatorului reprezinta MAX (temp, light_on, humidity).

Am ales acest proiect deoarece eu personal uit mereu ventilatorul pornit la baie, fapt ce m-a determinat sa gasesc o solutie automata pentru aceasta problema.

Acest proiect este util atat mie cat si celor care uita ventilatorul pornit la baie, reducand astfel costurile la factura electrica. }

Descriere generală

Schema Bloc

Senzorii detecteaza modificarea temperaturii/umiditatii/luminozitatii si transmit datele microcontrollerului. Atmega citeste de pe ADC, pe rand valorile senzorilor de umiditate, lumina si temperatura, pentru fiecare din acestea seteaza o turatie a ventilatorului, dupa care alege turatia maxima dintre cele 3. Apoi, utilizand PWM, seteaza o anumita valoare pentru turatie (timer pe 8 biti, intre 0 si 255). Turatia ventilatorului variaza pe masura ce creste/scade valoarea pe cel putin unul din senzori peste un anumit prag.

Hardware Design

Lista de piese:

  • 1 potentiometru 250 ohmi, tine loc de senzor de umiditate, care este mai greu de procurat
  • 1 senzor de temperatura LM35
  • 1 tranzistor 2N3094<br>
  • 1 rezistenta de 100 de ohmi in baza tranzistorului
  • 1 ventilator de 12 V, 100mA, brushless
  • 1 fotorezistor
  • 1 rezistente de 1K
  • 1 banda de fire + fire din cablu UTP
  • 4 conectori (2 pentru banda de fire, 2 pentru firul de la PD5)
  • 1 incarcator de 16v/32V de la o imprimanta HP inkjet

Software Design

  • Mediu de dezvoltare: Sublime Text 2, Eagle, Atmel Studio 6.1 Command Prompt
  • Biblioteci: avr\io.h, avr\interrupt.h, util/delay.h
  • Surse: proj.c:
  • - ADC_init()
  • - ADC_get()
  • - PWM_init()
  • - keep_speed(speed) - mentine viteza data ca parametru timp de 200ms
  • - lights_on() - returneaza True daca senzorul detecteaza lumina
  • - maintain_humidity() - pastreaza nivelul scazut al umiditatii prin modificarea turatiei ventilatorului
  • - maintain_temperature() - pastreaza temperatura normala prin modificarea turatiei ventilatorului
  • - reset_speeds() - reseteaza turatiile setate pentru temperatura, umiditate, luminozitate
  • - control_fan() - controleaza turatia ventilatorului in functie de cei 3 senzori

Rezultate Obţinute

Proiectul este functional

Se observa conexiunile facute

Ventilatorul functioneaza deoarece senzorul de temperatura a detectat lumina

Placuta auxiliara, cu senzorii

Incarcatorul de 16 V de la o imprimanta HP inkjet

Ventilatorul de 12 V de la o sursa de calculator ATX

Demo

Concluzii

  • Proiect a fost unul interesant, ce m-a pus la incercare, si din care am invatat multe, printre care multe bug-fixuri hardware, cum sa abordez un asemenea proiect (sa determin ce piese imi trebuie mai din timp, fara a face multe drumuri pe str Maica Domnului, cum sa-mi impart timpul pe un asemenea proiect cu acces limitat la unelte) si ca tot ce-mi trebuie e pe web (cum se foloseste LM35, PWM fan controller, etc).
  • In ceea ce priveste codul, pot sa zic ca m-a ajutat foarte mult activitatea de laborator, laborantul m-a invatat cum sa caut intr-un datasheet si cum sa gandesc logic o schema.

Download

Jurnal

  • 1 zi: cumparat piese
  • 1 zi: m-am intors pe str Maica Domnului pentru conectorii de banda de fire, tranzistor si potentiometru in loc de senzor de umiditate deoarece era mai dificil de demonstrat ca acesta merge, necesita un mediu umed la prezentare proiect.
  • 1 zi: lipit + testare placuta
  • 1 zi: cod + wiki

Bibliografie/Resurse

pm/prj2013/amocanu/24.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