Vatamanu Daniela 334CA
Inca un cub de LEDuri ce demonstreaza “persistence of vision” printr-un cub de 4x4x4 LEDuri comandate cu ATMEGA16 si tranzistoare.
Cele 64 de LEDuri sunt comandate cu ajutorul microcontroller-ului ATMEGA16. Cubul a fost impartit in 4 planuri orizontale a cate 4×4 LEDuri. Pe fiecare plan orizontal LEDurile au in comun catozii(-), iar pe fiecare coloana au in comun anozii(+). Cei 16 anozi sunt legati prin rezistente de 220Ω la 16 din pinii microcontroller-ului, respectiv porturile PORTA si PORTC. Cele 4 planuri comuta intre ele la GND prin 4 tranzistoare NPN BC338, legate la rezistente de 2,2k si sunt legate la pinii PD4-PD7 ai portului PORTD.
Pentru a aprinde un LED se va seta pinul corespunzator coloanei in care se afla pe 1, iar planul va trebui legat la GND. Daca vrem sa luminam 2 LEDuri din acelasi plan orizontal, pinii corespunzatori ambelor coloane vor fi setati pe 1.
Problema apare atunci cand vrem sa aprindem 2 sau mai multe LEDuri apartinand unor planuri diferite. De exemplu, daca vrem sa fie luminate un LED din planul de sus si unul din planul de jos, se vor aprinde cate 2 LEDuri pe fiecare din cele 2 planuri, intrucat se intersecteaza 2 coloane cu 2 planuri conectate.
Solutia problemei consta in aprinderea pe rand a celor 2 LEDuri, dar atat de rapid, incat ochiul sa nu realizeze ca LEDurile nu sunt aprinse simultan. Fenomenul numit “persistence of vision” se bazeaza pe faptul ca o imagine ramane pe retina timp de 0.04s dupa ce aceasta a disparut.
Recomand sa aveti de rezerva vreo 2 tranzistoare si 3-4 LEDuri.
Constructia cubului propriu-zis de LED-uri am realizat-o cu ajutorul unui sablon. Asezarea optima a LEDurilor de 5mm este la 2.5cm unul de celalalt; astfel nu mai trebuie un cadru din sarma, etc. ci se poate construi direct pe terminalii LEDurilor. Un ghid complet se afla la [1].
In urma realizarii proiectului am obtinut ceea ce mi-am propus, un LED CUBE functional; am invatat mai ales sa lipesc, sa fac debug pe placuta si, putin, sa programez un ATMEGA16.
Am intampinat niste probleme cu un tranzistor. Fie l-am ars atunci cand am lipit componentele, fie era stricat de la inceput. Prin urmare, unul din planuri nu se conecta la GND niciodata si nu se aprindea, desi LEDurile nu erau arse, iar restul legaturilor pana la pinii microcontroller-ului erau bune. Am cerut ajutorul asistentului, care a fost mai mult decat binevoitor, si s-a dovedit ca una din componentele BC338 trebuia inlocuita. Inconvenientul a fost ca piciorusele acestui tip de componenta se rup foarte repede si am incercat cu un BC337. Cu aceasta ocazie am observat ca, pentru acest proiect, un tranzistor BC337 este la fel de bun ca un BC338.
Acelasi rezultat se poate obtine cu un circuit ULN2003AN pentru a comuta GND in locul tranzistoarelor. Recomand acest circuit, deoarece este mult mai usor sa lipesti piciorusele unui soclu, fara a arde componenta, decat sa te chinui cu terminalii fragili ai tranzistoarelor BC .