Autorul poate fi contactat la adresa: Login pentru adresa
Proiectul propus presupune construirea unui cub de 4 x 4 x 4 led-uri care să se aprindă după mai multe modele prestabilite. Atât schimbul între două modele, cât și funcțiile de aprindere/stingere a led-urilor vor fi controlate prin intermediul unui senzor infraroșu, utilizând o telecomandă. Scopul proiectului este obținerea unui obiect de iluminare ambientală, care să aducă o notă specială camerei în care va fi expus. Alegerea acestui proiect a fost inspirată de vizualizarea unui video prezent în secțiunea de Resurse.
Ideea de bază a proiectului este descrisă de schema bloc de mai jos. Ea sugerează faptul că în momentul în care utilizatorul folosește telecomanda, senzorul IR conectat la plăcuță îi va transmite acesteia semnalul corespunzător, urmând ca o funcție să prelucreze acest semnal și să modifice starea cubului.
Lista de piese necesare:
Pentru alimentarea cubului, am folosit puntea de 5V a plăcuței.
Deoarece anodul fiecărui led este conectat la câte un pin digital(prin barele verticale), atunci când pinul este setat pe HIGH, anodul primește 5V. Catodul fiecărui led este legat la unul dintre cei 4 tranzistori (prin barele orizontale). Baza tranzistorilor este conectată la câte un pin digital, care atunci când este setat pe LOW face ca GROUND-ul să fie legat la catodul led-ului.
Proiectul final arată în felul următor:
Consider că el funcționează conform cu ceea ce mi-am propus atunci când l-am ales. Ceea ce aș putea să fac pentru a-l îmbunătăți ar fi adăugarea mai multor animații și realizarea decodificării semnalului de la telecomandă pentru a putea să folosesc mai multe butoane ale acesteia.
Pentru partea de programare am folosit Atmel Studio.
Am creat 5 animații, așa cum se poate vedea și în demo-ul de mai jos. Fiecare animație aprinde fiecare led alegând indicii nivelului și led-ului după un anumit model.
Cea mai mare dificultate pentru această parte a fost folosirea receptorului IR. După o lungă căutare, am înțeles că este foarte dificil de decodat semnaulul trimis de telecomandă, astfel că am ales ca doar să detectez când telecomanda trimite ceva și în acel moment să schimb animația. Am realizat acest lucru prin realizarea unei rutine de întreruperi, setând întreruperea pe pinul corespunzător receptorului IR.
Aceasta este o demonstrație a animațiilor pe care le are implementate cubul: https://drive.google.com/file/d/1qOXOlVz9YWAPQcm6nAii30O144Tp_2gj/view
Mă bucur că am ales acest proiect deoarece realizarea lui a fost nu numai migăloasă, ci în special foarte plăcută și interesantă. Cred că aceasta este una dintre temele care aduc o mulțumire foarte mare la final, mai ales că pentru majoritatea dintre noi este o experiență complet nouă.
Consider că am realizat toate funcționalitățile pe care mi le propusesem și că datorită lui mi-am îmbunătățit aptitudinile hardware în special.