Mood Lamp

Autor

Nume: Andrei-Bogdan Alexandru
Grupă: 336CC

Introducere

Proiectul are ca scop construirea unei lampi de birou cu lumina ambientala. Aceasta lampa are un buton prin care se poate controla modul in care lumineaza led-urile. Prin apasarea butonului se face trecerea intre diverse jocuri de lumini implementate in Arduino, unul dintre moduri fiind un joc de lumini controlat de sunetele receptate de un microfon. La acestea se adauga un potentiometru prin care se poate regla viteza jocului sau culorile led-urilor.

Descriere generală

Pentru realizarea proiectului sunt folosite:

  • 5 matrice de LED-uri (4×4) WS2812B folosite drept sursa de lumina, obiectul principal al proiectului
  • Un buton folosit pentru schimbarea jocurilor de lumini:
    • jocuri de lumini implementate in cod in Arduino
    • jocul de lumini controlat de sunet
  • Un microfon cu ajutorul caruia este implementat un mod in care jocul de lumini este dat se sunetele receptate de acesta
  • Un potentiomatru prin care se poate regla:
    • viteza jocului
    • culoarea led-urilor
Schema Bloc

Hardware Design

Lista de componente

Nume Piesa Cantitate
Arduino UNO 1
Breadboard 1
Matrice de LED-uri (4×4) WS2812B 5
Potentiometru 1
Rezistente 1
Buton 1
Microfon 1
Cabluri Dupont tata-tata
Cabluri Dupont mama-tata

Schema Electrica

Software Design

Pentru dezvoltarea codului am folosit ARDUINO IDE, si am inclus bibliotecile Adafruit_NeoPixel.h si FastLED.h.

Led-urile unei matrice sunt conectate in serie, iar matricele sunt conectate la randul lor, tot in serie, astfel incat am considerat cubul ca fiind un vector continuu de led-uri, fiind posibil astfel controlabil fiecare led in parte.

Datorita inserierii led-urile, am implementat functia convert(i, j, face), care face conversia de la reprezentarea matriceala in cea vectoriala, pentru un control mai facil al led-urilor. Parametrul face a fost introdus pentru a face conversia diferit pentru fata 0, fiind lipita invers datorita pozitiei acesteia.

Cubul are 12 jocuri de lumini care se schimba prin apasarea unui buton:

  • 10 jocuri prestabilite cu anumite forme, de exemplu: snake, vortex, raindrop, arrow.
  • Un joc controlat de sunetul receptat de microfon.
  • Un joc in care culoarea cubului poate fi schimbata cu ajutorul unui potentiometru.

Pentru toate jocurile prestabilite, cu ajutorul potentiometrului se poate seta viteza tranzitiilor

Pentru jocurile prestabilite, la apasarea butonului o sa se termine jocul prima data, iar pentru celelalte 2, se face tranzitia imediat.

Pentru buton am folosit o intrerupere externa

Rezultate Obţinute

Concluzii

A fost un proiect interesant, primul de genul acesta pe care l-am realizat si fizic. Am avut dificultati la lipirea matricelor de led, datorita pozitiei incomode si a dimensiunilor mici, dar asa am invatat sa folosesc letcon-ul. Se pot realiza lucruri interesante folosind un arduino, cateva led-uri si cativa senzori. Cu putina imaginatie se pot crea jocuri de lumini si modele interesante, care pot fi combinate cu diversi senzori sau elemente electronice(ex: microfon, potentiometru) pentru a interactiona cu piesa centrala, led-urile.

Download

Bibliografie/Resurse

pm/prj2022/sgherman/mood_lamp.txt · Last modified: 2022/05/27 19:39 by aalexandru0606
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