This is an old revision of the document!


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

Listă de piese:

  • Arduino Nano
  • Breadboard
  • Matrice de LED-uri (4×4) WS2812B (6 buc)
  • Potentiometru
  • Rezistente
  • Buton
  • Microfon

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

Care au fost rezultatele obţinute în urma realizării proiectului vostru.

Concluzii

Download

O arhivă (sau mai multe dacă este cazul) cu fişierele obţinute în urma realizării proiectului: surse, scheme, etc. Un fişier README, un ChangeLog, un script de compilare şi copiere automată pe uC crează întotdeauna o impresie bună ;-).

Fişierele se încarcă pe wiki folosind facilitatea Add Images or other files. Namespace-ul în care se încarcă fişierele este de tipul :pm:prj20??:c? sau :pm:prj20??:c?:nume_student (dacă este cazul). Exemplu: Dumitru Alin, 331CC → :pm:prj2009:cc:dumitru_alin.

Jurnal

Puteți avea și o secțiune de jurnal în care să poată urmări asistentul de proiect progresul proiectului.

Bibliografie/Resurse

Listă cu documente, datasheet-uri, resurse Internet folosite, eventual grupate pe Resurse Software şi Resurse Hardware.

Export to PDF

pm/prj2022/sgherman/mood_lamp.1653665798.txt.gz · Last modified: 2022/05/27 18:36 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