Cuprins:

Proiect final Wearable Tech - Cască DJ: 6 pași
Proiect final Wearable Tech - Cască DJ: 6 pași

Video: Proiect final Wearable Tech - Cască DJ: 6 pași

Video: Proiect final Wearable Tech - Cască DJ: 6 pași
Video: Итан Цукерман: Прислушиваясь к глобальным голосам. 2024, Iulie
Anonim
Proiect final Wearable Tech - Cască DJ
Proiect final Wearable Tech - Cască DJ

Scopul acestui proiect este de a face o cască DJ cu LED-uri reactive la muzică pentru spectacol și factorul wow. Folosim o bandă LED adresabilă de la Amazon.com, precum și o cască de motocicletă, un Arduino uno și sârmă.

Provizii

Materialele includ:

  • Benzi LED adresabile
  • Casca de motociclist
  • Arduino Uno
  • Sârme și fier de lipit

Pasul 1: Obținerea LED-urilor să reacționeze la sunet

Pentru primul pas, vom testa banda LED pentru a reacționa la sunet, folosim placa de sunet de la Sparkfun și o conectăm la Arduino folosind o placă de rețea și un fir. Testând cu software-ul Arduino, obținem două citiri pe care le putem folosi. Amplitudinea sunetului care vine de la portul „Plic” și citirea binară 1/0 de la portul „poartă”. Utilizați aceste variabile pentru a face o hartă cu banda LED direcționabilă, apoi „poarta” este la una, LED-urile afișează o anumită culoare, când Plicul este peste un anumit nivel, afișează o anumită culoare. Va fi furnizat codul complet.

Pasul 2: Tăiați și lipiți LED-urile pentru a forma pe cască

Tăiați și lipiți LED-urile pentru a forma pe cască
Tăiați și lipiți LED-urile pentru a forma pe cască
Tăiați și lipiți LED-urile pentru a forma pe cască
Tăiați și lipiți LED-urile pentru a forma pe cască
Tăiați și lipiți LED-urile pentru a forma pe cască
Tăiați și lipiți LED-urile pentru a forma pe cască

La proiectul meu am decis să adaug LED-urile la cască într-o manieră X cu triunghiuri suplimentare la exterior, intenționez să fac acest design să funcționeze mai bine cu modul în care joacă muzica. Deci, acest pas se referă la tăierea benzilor LED la lungimile dorite și lipirea lor împreună pe semnele tăiate pentru a face colțuri. A trebuit să fac acest lucru de aproximativ 10 ori și consumă foarte mult timp, mai ales când mă ocup de fire mici. Acesta este progresul la acest pas

Pasul 3: conectați și testați LED-urile de pe cască

Sârmați și testați LED-urile de pe cască
Sârmați și testați LED-urile de pe cască
Sârmați și testați LED-urile de pe cască
Sârmați și testați LED-urile de pe cască

În acest pas am conectat și testat LED-urile pe arduino, placa de sunet și LED-urile tăiate pentru a mă asigura că tăieturile și lipirea funcționează corect

Pasul 4: Electronice gratuite de la Breadboard

Electronice gratuite de la Breadboard
Electronice gratuite de la Breadboard
Electronice gratuite de la Breadboard
Electronice gratuite de la Breadboard
Electronice gratuite de la Breadboard
Electronice gratuite de la Breadboard

În acest pas m-am concentrat pe obținerea tuturor componentelor electronice de pe panou. Am lipit toate firele care trebuiau lipite și am extins firele căștii pentru a fi lungi, astfel încât să puteți purta coifurile atașate la Arduino. Cel mai important lucru pe care nu l-am putut da seama a fost alimentarea externă, am încercat baterii în diferite configurații, dar nimic nu mi-ar da rezultatul de care aveam nevoie, unii ar face ca luminile să înnebunească, iar altele le-ar face să fie diferite culori. Din păcate, acest lucru se poate datora cunoștințelor mele despre circuite, dar am optat pentru menținerea alimentării cu Arduino provenind de pe placa PC. Placa de sunet este alimentată de un acumulator și funcționează bine

Pasul 5: Configurare finală

Configurare finală
Configurare finală

pentru acest ultim pas, am citit valorile provenite de pe placa de sunet și am modificat codul pentru a se potrivi cu noile valori care au schimbat unul, totul a fost scos de pe panou. Am lipit benzile cu LED-uri de cască, unde înainte fuseseră lipite și în cele din urmă am testat din nou.

Pasul 6: Cod (Arduino)

// NeoPixel Ring schiță simplă (c) 2013 Shae Erisson

// Lansat sub licența GPLv3 pentru a se potrivi cu restul

// Biblioteca Adafruit NeoPixel

#include

#ifdef _AVR_ #include // Necesar pentru 16 MHz Adafruit Trinket #endif

// Care pin de pe Arduino este conectat la NeoPixels?

#define PIN 3 // Pe Trinket sau Gemma, sugerează schimbarea acestuia la 1

// Câți NeoPixeli sunt atașați la Arduino?

#define NUMPIXELS 166 // Dimensiunea populară a inelului NeoPixel

Adafruit_NeoPixel pixeli (NUMPIXELS, PIN, NEO_GRB + NEO_KHZ800);

#define DELAYVAL 500 // Timp (în milisecunde) pentru pauză între pixeli

configurare nulă () {

#if definit (_ AVR_ATtiny85_) && (F_CPU == 16000000)

clock_prescale_set (clock_div_1); #endif // END al codului specific Trinket.

pixeli.begin (); // INIȚIALIZAȚI obiectul cu bandă NeoPixel (NECESAR)

Serial.begin (9600); }

bucla nulă () {

int sensorValue = analogRead (A1);

int sensorValue2 = digitalRead (7); Serial.println (sensorValue); // întârziere (5); //pixels.clear (); // Setați toate culorile pixelilor la „dezactivat”

if (sensorValue2 == 1) {

for (int i = 0; i <28; i ++) {pixels.setPixelColor (i, 15, 0, 50);

}

for (int i = 48; i <81; i ++) {pixels.setPixelColor (i, 15, 0, 50);

}

for (int i = 102; i <129; i ++) {pixels.setPixelColor (i, 15, 0, 50);

}

for (int i = 148; i <166; i ++) {pixels.setPixelColor (i, 15, 0, 50); }} //////////////////////////// else {for (int i = 0; i <28; i ++) {pixels.setPixelColor (i, 0, 0, 0);

}

for (int i = 48; i <81; i ++) {pixels.setPixelColor (i, 0, 0, 0);

}

for (int i = 102; i <129; i ++) {pixels.setPixelColor (i, 0, 0, 0);

}

for (int i = 148; i <166; i ++) {pixels.setPixelColor (i, 0, 0, 0); }} //////////////////////////// if (sensorValue == 3 || sensorValue == 2) {for (int i = 29; i <47; i ++) {pixels.setPixelColor (i, 255, 0, 0);

}

for (int i = 82; i <101; i ++) {pixels.setPixelColor (i, 255, 0, 0);

}

for (int i = 130; i <148; i ++) {pixels.setPixelColor (i, 255, 0, 0);

} pixels.show (); } if (sensorValue> 3) {for (int i = 29; i <47; i ++) {pixels.setPixelColor (i, 0, 155, 155);

}

for (int i = 82; i <101; i ++) {pixels.setPixelColor (i, 0, 155, 155);

}

for (int i = 130; i <148; i ++) {pixels.setPixelColor (i, 0, 155, 155);

}

pixels.show (); } else {for (int i = 29; i <47; i ++) {pixels.setPixelColor (i, 0, 0, 0);

}

for (int i = 82; i <101; i ++) {pixels.setPixelColor (i, 0, 0, 0);

}

for (int i = 130; i <148; i ++) {pixels.setPixelColor (i, 0, 0, 0);} pixels.show (); }}

Recomandat: