Table of Contents

Set de lumanari electronice pentru aniversari

Fãinãrea Maria-Mihaela

Introducere

Acest sistem are rolul de a inlocui lumanarile clasice cu un sistem electronic. Este un produs potrivit mai ales copiilor dar si adultilor care vor sa schimbe registrul unei aniversari obisnuite. Am imbunatatit acest sistem (pe care il gasesti si in supermarketuri) adaugand cantecul “Happy Birthday” atunci cand sarbatoritul a stins toate lumanarile si si-a pus o dorinta. Mai mult cu ajutorul unui buton de pe placuta se poate alege de asemenea varsta si aceasta va fi afisata pe matricea de LED-uri. Pentru ca produsul se adreseaza in special copiilor am ales pentru acest proiect ca varsta sa poata fi selectata intre 1 si 9 ani. Cum? Tinand apasat pe buton se va schimba in timp real numarul de pe matricea de led-uri. “Tortul” va avea pe el 64 de leduri dar vom lega la placuta doar 30. Led-urile nu se vor aprinde toate in acelasi timp ci vor avea un joc, asemeni unor lumanari obisnuite.

Descriere generala

Sistemul nu va face nimic la inceput. Va astepta comanda utilizatorului. El va trebui sa tina apasat pe PB2 pana obtine pe matricea de LED-uri varsta dorita. Modul de functionare al proiectului se bazeaza pe existenta unui senzor de temperatura care simte atunci cand cineva sufla aer rece(mai rece decat in incapere).Cand cineva sufla, “lumanarile se sting” iar difuzorul va reda cunoscutul cantec “Happy Birthday”.

Schema bloc

Hardware Design

Lista componentelor:

Software Design

Biblioteci:

     dht.h -> biblioteca ma ajuta sa utilizez senzorul de temperatura si umiditate.
     usarc.c / usart.h -> biblioteca de verificare -> ma ajuta sa vad exact ce temperatura este si cum se modifica in timp
     

Functii:

     play_note -> ma ajuta sa pot reda o nota muzicala pe baza unei frecvente si a unei durate.
      main -> aici implementez la inceput preluarea datelor de la termistor in prima secunda de
         la pornire a sistemului. Mai tarziu voi compara fiecare next_temperature cu temperatura initiala 
         pentru a vedea daca cineva "sufla in lumanari" sau nu.
         -> astept ca utilizatorul sa apese pe butonul PB2 pentru a seta varsta. Varsta poate fi 
         redata intre 1 si 9 ani.
         -> dupa ce utilizatorul a ales o varsta anume, astept preluarea temperaturii 
         -> daca senzorul a simtit aerul rece al suflului atunci sistemul va canta sarbatoritului
         "Happy Birthday"

Schema electrica

Schema a fost realizata in Eagle.

Rezultat:

Video al proiectului la adresa:

https://youtu.be/XgNaAraLRiE

Concluzii

Proiectul este adresat in special copiilor datorita sigurantei sistemului electronic in detrimentul lumanarilor cu flacara. El poate fi continuat prin inlocuirea matricei de led-uri cu un set de leduri in forma de lumanare de exemplu. Acestea pot fi asezate pe un suport din plastic pentru a putea fi puse pe tort. Design-ul poate fi substantial imbunatatit pentru comercializare.
Am intalnit cateva probleme pe parcursul proiectului. In primul rand, am avut probleme cu matricea de led-uri care nu are pinii logici in aceasi ordine si acelasi loc cu pinii fizici. Mai departe am avut dificultati in a programa difuzorul care este activ, in laborator noi lucrand pe un difuzor pasiv. De asemenea senzorul de temperatura avea o specificatie de care nu am tinut cont la inceput. El trebuie sa realizeze masuratori la intervale de 2 secunde. Altfel el se supraincalzeste si genereaza informatii eronate. Se pot face teste si intr-un interval de 350 ms dar cu riscul ca pot fi gresite.
A fost un proiect foarte interesant, mi-a placut foarte mult ca am realizat un dispozitiv fizic, electronic de una singura si mi-a dat increderea ca si in viitor pot face altele daca voi avea nevoie.

Jurnal al proiectului

Resurse/bibliografie

https://www.optimusdigital.ro/ro/ → pentru datasheet-uri
http://www.ermicro.com/blog/?p=580 → pentru generarea melodiei
https://catchcoder.blogspot.com/2009/12/arduino-code-happy-birthday-melody-with.html → pentru generarea melodiei
PDF format