Sisukord:

Kantava tehnika lõplik projekt - DJ -kiiver: 6 sammu
Kantava tehnika lõplik projekt - DJ -kiiver: 6 sammu

Video: Kantava tehnika lõplik projekt - DJ -kiiver: 6 sammu

Video: Kantava tehnika lõplik projekt - DJ -kiiver: 6 sammu
Video: Часть 4 - Трипланетная аудиокнига Э. Э. Смита (глы 13–17) 2024, November
Anonim
Wearable Tech Final Project - DJ kiiver
Wearable Tech Final Project - DJ kiiver

Selle projekti eesmärk on muuta DJ -kiiver koos LED -idega muusikale reageerivaks show- ja wow -teguriks. Kasutame aadressilt Amazon.com adresseeritavat LED -riba, samuti mootorrattakiivrit, Arduino uno ja traati.

Tarvikud

Materjalide hulka kuuluvad:

  • Aadressitav LED -riba
  • Mootorratta kiiver
  • Arduino Uno
  • Juhtmed ja jootekolb

Samm: LED -ide reageerimine helile

Esimese sammuna katsetame LED -riba reageerimist helile, kasutame Sparkfuni heliplaati ja ühendame selle leivaplaadi ja juhtme abil Arduinoga. Arduino tarkvara abil testides saame kaks näitu, mida saame kasutada. "Ümbriku" pordist tuleva heli amplituud ja "värava" pordi binaarne 1 /0 näit. Kasutage neid muutujaid, et kaardistada adresseeritav LED -riba, siis on "värav" üks, LED -id näitavad teatud värvi, kui ümbrik on teatud tasemest kõrgemal, kuvatakse teatud värv. Esitatakse täielik kood.

Samm: lõigake ja jootke LED -id kiivri kujule

Lõika ja jootke LED -id kiivri kujule
Lõika ja jootke LED -id kiivri kujule
Lõika ja jootke LED -id kiivri kujule
Lõika ja jootke LED -id kiivri kujule
Lõika ja jootke LED -id kiivri kujule
Lõika ja jootke LED -id kiivri kujule

Oma projekti puhul otsustasin lisada kiivrile LED -id X -moodi, lisakolmnurgad väljastpoolt, kavatsen selle disaini paremini toimida koos muusika esitamisega. Nii et see samm seisneb LED -ribade lõikamises soovitud pikkuseks ja nende jootmiseks lõikejälgedele, et teha nurki. Pidin seda tegema umbes 10 korda ja see on väga aeganõudev, eriti väikeste juhtmetega tegelemisel. See on selle sammu edusammud

3. samm: ühendage kiivri LED -id ja katsetage neid

Juhtke ja katsetage kiivri valgusdioode
Juhtke ja katsetage kiivri valgusdioode
Juhtke ja katsetage kiivri valgusdioode
Juhtke ja katsetage kiivri valgusdioode

Selles etapis ühendasin ja testisin LED -e arduino, heliplaadi ja lõigatud LED -idega, et veenduda, et lõiked ja jootmine toimivad õigesti

Samm: tasuta elektroonika leivaplaadilt

Tasuta elektroonika leivaplaadilt
Tasuta elektroonika leivaplaadilt
Tasuta elektroonika leivaplaadilt
Tasuta elektroonika leivaplaadilt
Tasuta elektroonika leivaplaadilt
Tasuta elektroonika leivaplaadilt

Selles etapis keskendusin kogu elektroonika eemaldamisele leivaplaadilt. Jootsin kõik jootmiseks vajalikud juhtmed ja pikendasin kiivritraadid pikaks, nii et saate kanda Arduino külge kinnitatud kiivrit. Kõige olulisem asi, millest ma aru ei saanud, oli väline toide, proovisin erineva konfiguratsiooniga patareisid, kuid miski ei andnud mulle vajalikku tulemust, mõni ajab tuled hulluks ja mõni muud värvi. Kahjuks võib see olla tingitud minu teadmistest vooluringidest, kuid otsustasin Arduino toite hoida PC -plaadilt. Heliplaati toidab aku ja see töötab hästi

Samm: lõplik konfigureerimine

Lõplik konfiguratsioon
Lõplik konfiguratsioon

Selle viimase sammu jaoks lugesin heliplaadilt pärinevaid väärtusi ja muutsin koodi, et see vastaks uutele väärtustele, mis muutsid ühte, kõik eemaldati leivaplaadilt. Liimisin LED -ribad kiivri külge, kus need olid enne kinni teibitud ja lõpuks katsetasin uuesti.

6. samm: kood (Arduino)

// NeoPixel Ring lihtne eskiis (c) 2013 Shae Erisson

// Välja antud GPLv3 litsentsi alusel, et see vastaks ülejäänud

// Adafruit NeoPixeli raamatukogu

#kaasake

#ifdef _AVR_ #include // Nõutav 16 MHz Adafruit nipsasja jaoks #endif

// Milline Arduino tihvt on NeoPixelitega ühendatud?

#define PIN 3 // Trinketis või Gemmas soovitage see muuta 1 -ks

// Mitu NeoPikslit on Arduino külge kinnitatud?

#define NUMPIXELS 166 // Populaarne NeoPixeli rõngaste suurus

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

#define DELAYVAL 500 // Pikslite vahel peatamiseks kuluv aeg (millisekundites)

tühine seadistus () {

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

clock_prescale_set (clock_div_1); #endif // END Trinket-spetsiifilisest koodist.

pixels.begin (); // ALGATUS NeoPixel riba objekt (VAJALIK)

Seriaalne algus (9600); }

void loop () {

int sensorValue = analogRead (A1);

int sensorValue2 = digitalRead (7); Serial.println (sensorValue); // viivitus (5); //pikslit.selge (); // Lülita kõik pikslivärvid välja

if (sensorValue2 == 1) {

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

}

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

}

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

}

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

}

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

}

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

}

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

}

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

}

jaoks (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);

}

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

}

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

}

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

}

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

}

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

Soovitan: