Съдържание:

Окончателен технически проект за носене - DJ каска: 6 стъпки
Окончателен технически проект за носене - DJ каска: 6 стъпки

Видео: Окончателен технически проект за носене - DJ каска: 6 стъпки

Видео: Окончателен технически проект за носене - DJ каска: 6 стъпки
Видео: Детето ми се храни само със зеленчуци 2024, Ноември
Anonim
Носим Технически финален проект - DJ каска
Носим Технически финален проект - DJ каска

Целта на този проект е да направи DJ каска със светодиоди, реагираща на музика за шоу и уау фактор. Използваме адресируема LED лента от Amazon.com, както и каска за мотоциклет, Arduino uno и тел.

Консумативи

Материалите включват:

  • Адресируема LED лента
  • Каска за мотор
  • Arduino Uno
  • Проводници и поялник

Стъпка 1: Привеждане на светодиодите в реакция на звук

За първата стъпка ще тестваме LED лентата, за да реагира на звук, използваме звуковата платка от Sparkfun и я свързваме към Arduino с помощта на макет и проводник. Тествайки със софтуера Arduino, получаваме две показания, които можем да използваме. Амплитудата на звука, идващ от порта "Envelope" и двоичното 1 /0 отчитане от порта "gate". Използвайте тези променливи, за да картографирате към адресируемата LED лента, тогава „портата“е на едно място, светодиодите показват определен цвят, когато пликът е над определено ниво, показва определен цвят. Ще бъде предоставен пълният код.

Стъпка 2: Изрежете и запойте светодиодите, за да оформите каската

Изрязване и запояване на светодиоди за оформяне на каската
Изрязване и запояване на светодиоди за оформяне на каската
Изрязване и запояване на светодиоди за оформяне на каската
Изрязване и запояване на светодиоди за оформяне на каската
Изрязване и запояване на светодиоди за оформяне на каската
Изрязване и запояване на светодиоди за оформяне на каската

В моя проект реших да добавя светодиодите към шлема по X начин с допълнителни триъгълници отвън, смятам да направя този дизайн да работи по -добре с начина, по който свири музиката. Така че тази стъпка е свързана с изрязване на LED лентите до желаната дължина и запояване заедно върху маркировките за изрязване, за да се направят ъгли. Трябваше да направя това около 10 пъти и отнема много време, особено когато се занимаваме с малки проводници. Това е напредъкът на тази стъпка

Стъпка 3: Проверете и тествайте светодиодите на шлема

Свържете и тествайте светодиодите на каската
Свържете и тествайте светодиодите на каската
Свържете и тествайте светодиодите на каската
Свържете и тествайте светодиодите на каската

В тази стъпка свързах и тествах светодиодите към arduino, звуковата платка и изрязаните светодиоди, за да се уверя, че разрезите и запояването работят правилно

Стъпка 4: Безплатна електроника от табло

Безплатна електроника от платката
Безплатна електроника от платката
Безплатна електроника от платката
Безплатна електроника от платката
Безплатна електроника от платката
Безплатна електроника от платката

В тази стъпка се съсредоточих върху изваждането на цялата електроника от макета. Запоявах всички проводници, които трябваше да бъдат запоени, и удължих проводниците на шлема, за да бъдат дълги, за да можете да носите каската на каската, прикрепена към Arduino. Най -важното нещо, което не можах да разбера, беше външното захранване, опитах батерии в различни конфигурации, но нищо нямаше да ми даде нужния резултат, някои щеше да накара лампите да полудеят, а други да ги накарат да бъдат в различни цветове. За съжаление това може да се дължи на моите познания за схемите, но реших да запазя силата на Arduino, идваща от платката на компютъра. Звуковата платка се захранва от батерия и работи добре

Стъпка 5: Окончателна конфигурация

Окончателна конфигурация
Окончателна конфигурация

за тази последна стъпка прочетох стойностите, идващи от звуковата платка и промених кода, за да съответства на новите стойности, които промениха, когато всичко беше свалено от макета. Залепих светодиодните ленти към шлема, където преди бяха залепени и накрая тествах отново.

Стъпка 6: Код (Arduino)

// Проста скица на NeoPixel Ring (c) 2013 Shae Erisson

// Издаден под лиценз GPLv3, за да съответства на останалата част от

// Библиотека Adafruit NeoPixel

#включва

#ifdef _AVR_ #include // Изисква се за 16 MHz Adafruit Trinket #endif

// Кой щифт на Arduino е свързан с NeoPixels?

#define PIN 3 // На Trinket или Gemma, предлагайте да промените това на 1

// Колко NeoPixels са свързани към Arduino?

#define NUMPIXELS 166 // Популярен размер на пръстена NeoPixel

Adafruit_NeoPixel пиксели (NUMPIXELS, PIN, NEO_GRB + NEO_KHZ800);

#define DELAYVAL 500 // Време (в милисекунди) за пауза между пикселите

void setup () {

#ако е дефинирано (_ AVR_ATtiny85_) && (F_CPU == 16000000)

clock_prescale_set (clock_div_1); #endif // КРАЙ на специфичния за Trinket код.

pixels.begin (); // ИНИЦИАЛИЗИРАЙ обект на лента NeoPixel (ЗАДЪЛЖИТЕЛНО)

Serial.begin (9600); }

void loop () {

int sensorValue = analogRead (A1);

int sensorValue2 = digitalRead (7); Serial.println (sensorValue); // забавяне (5); //пиксели.clear (); // Задайте всички цветове на пикселите на „изключено“

if (sensorValue2 == 1) {

за (int i = 0; i <28; i ++) {пиксели.setPixelColor (i, 15, 0, 50);

}

за (int i = 48; i <81; i ++) {пиксели.setPixelColor (i, 15, 0, 50);

}

за (int i = 102; i <129; i ++) {пиксели.setPixelColor (i, 15, 0, 50);

}

за (int i = 148; i <166; i ++) {пиксели.setPixelColor (i, 15, 0, 50); }} ////////////////////////////// else {for (int i = 0; i <28; i ++) {pixels.setPixelColor (i, 0, 0, 0);

}

за (int i = 48; i <81; i ++) {пиксели.setPixelColor (i, 0, 0, 0);

}

за (int i = 102; i <129; i ++) {пиксели.setPixelColor (i, 0, 0, 0);

}

за (int i = 148; i <166; i ++) {пиксели.setPixelColor (i, 0, 0, 0); }} ////////////////////////////// if (sensorValue == 3 || sensorValue == 2) {for (int i = 29; i <47; i ++) {pixels.setPixelColor (i, 255, 0, 0);

}

за (int i = 82; i <101; i ++) {пиксели.setPixelColor (i, 255, 0, 0);

}

за (int i = 130; i <148; i ++) {пиксели.setPixelColor (i, 255, 0, 0);

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

}

за (int i = 82; i <101; i ++) {пиксели.setPixelColor (i, 0, 155, 155);

}

за (int i = 130; i <148; i ++) {пиксели.setPixelColor (i, 0, 155, 155);

}

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

}

за (int i = 82; i <101; i ++) {пиксели.setPixelColor (i, 0, 0, 0);

}

за (int i = 130; i <148; i ++) {пиксели.setPixelColor (i, 0, 0, 0);} пиксели.show (); }}

Препоръчано: