Multimode Illuminated Rhombus with Music Reactivity

Introducere

Prezentarea pe scurt a proiectului:

  • Proiectul consta in realizarea unei structuri geometrice, un romb, care va servi ca un dispozitiv de iluminare versatil si reactiv la muzica. Ideea principala este de a crea o experienta vizuala si auditiva captivanta prin combinarea iluminarii LED si a reactivitatii la sunet.
  • Scopul acestui proiect este de a oferi utilizatorilor posibilitatea de a personaliza si controla modurile de iluminare in functie de preferintele lor care poate fi utilizata in diverse medii, precum un decor interior.
  • Ideea initiala a proiectului a fost inspirata de dorinta de a avea un dispozitiv ce poate crea o experienta estetica si interactiva.

Descriere generală

  • Arduino Nano: Va fi creierul sistemului, gestionand functiile si interactiunile.
  • Modul de coborare tensiune LM2596 si modul coborare tensiune DC-DC MP1584EN: Vor fi utilizate pentru a asigura alimentarea stabila a componentelor.
  • Amplificator Microfon MAX9814: Va fi utilizat pentru a detecta si amplifica semnalele audio de la microfonul integrat.
  • Ecran OLED: Va afisa modurile de iluminare si alte informatii relevante pentru utilizator.
  • Placa dezvoltare cu 8 canale (cu LED RGB) W281: Va controla iluminarea LED-urilor in moduri variate si va primte reactivitatea la muzica.
  • Placa prototipare PCB: Va facilita conexiunile intre componentele hardware.

Hardware Design

Aici puneţi tot ce ţine de hardware design:

  • Arduino Nano
  • Modul coborare tensiune LM2596
  • Modul coborare tensiune DC-DC MP1584EN
  • Amplificator Microfon MAX9814
  • Ecran OLED
  • Placa dezvoltare cu 8 canale (cu led RGB) W281
  • Placa prototipare PCB
  • Baterii
  • Butoane + fire, etc.


Scheme

In cadrul proiectului am avut doua implementari diferite (din cauza unui defect in cazul primei implementari). Rezultatele pot fi vizualizate in secitunea de mai jos “Rezultate Obtinute”.

Important de mentionat este ca am renuntat la ecran din cauza unor probleme intampinate.

Poze cu circuitul corespunzator primei implementari

Poze cu circuitul corespunzator celei de a doua implementari

Software Design

Descrierea codului aplicaţiei (firmware):

  • Mediu de dezvoltare: Arduino IDE
  • Librării şi surse 3rd-party: FastLED, Adafruit_NeoPixel
  • Algoritmi şi structuri: Voi implementa algoritmi pentru controlul iluminarii LED in diferite moduri si pentru a detecta si a reactiona la semnale audio provenite de la microfon.

Am dezvoltat acest proiect utilizând Arduino IDE

Codul de mai jos nu reprezinta intreaga implementare ci bucati de cod ce evidentiaza functionalitati din cod.

UART

Serial.begin(9600);
Serial.println(hue);
Serial.println(volts);

Intreruperi Aici se poate observa cum verific mereu starea butonului si iau masuri in functie de de schimbare

buttonState = digitalRead(buttonPin);
if (buttonState != lastButtonState) {
  if (buttonState == HIGH) {
    buttonPushCounter++;
    if (buttonPushCounter >= 5) {
      buttonPushCounter = 0;
    }
    delay(250);
  }
  lastButtonState = buttonState;
}

Timere

unsigned long startMillis = millis();
while (millis() - startMillis < sampleWindow) {
}
delay(30);

ADC

int sample = analogRead(AUDIO_PIN);
knob = analogRead(KNOB_PIN);

PWM

strip.setBrightness(100);

Rezultate Obţinute

Rezultate obtinute sunt urmatoarele in functie de implementare:

Implementarea 1

* Link youtube: https://www.youtube.com/watch?v=pLrDUeChm04

Implementarea 2 (finala)

* Link1 youtube: https://youtube.com/shorts/yx2WD6AKRCo

* Link2 youtube: https://youtube.com/shorts/dRrpx5xThEM

Concluzii

In acest proiect am reusit cu succes sa integrez mai multe concepte fundamentale invatate la laborator. Pe langa partea teoretica, cel mai important mi s-a parut partea hardware, acolo am invatat cele mai bine teoria experimetand pe partea de hardware m(

Download

Lupu Grigorie, 333CB → lupugrigoriecod.zip

Jurnal

Saptamana Sarcina Descriere
21 Apr – 5 Mai Documentare inițială Cautare componente sau solutii similare
21 Apr – 5 Mai Achizitionare componente Achizitionare componente + testarea lor
21 Apr – 5 Mai Prototipare Hardware Asamblarea si lipirea componentelor pe PCB
13 Mai – 17 Mai Incepere scriere cod Am inceput sa scriu cod incepand sa integrez notiuni de la laborator
13 Mai – 17 Mai Testare Am inceput sa testez functionalitatea codului, facand modificarile necesare pt functionare
20 Mai – 24 Mai Ansamblarea finala + problemeLa finalul asamblarii cand am dat cheie la proiect led-urile nu mai functionau
24 Mai - 26 Mai Problema Aparent led-urile aveau pinii inversati? si mergeau prost placutele
24 Mai - 26 Mai Rezolvare problema Cu ajutorul lui Victor am depistat problema si am inlocuit placutele cu o banda LED ce functioneaza tot cu ajutorul librariei Adafruit
24 Mai - 26 Mai Finalizare proiect + pagina Finalizarea paginii de proiect si finalizare proiect cu toate finisajele

Bibliografie/Resurse

pm/prj2024/vstoica/grigorie.lupu.txt · Last modified: 2024/05/26 17:36 by grigorie.lupu
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