Tabla de contenido:

Proyecto final de Wearable Tech - Casco de DJ: 6 pasos
Proyecto final de Wearable Tech - Casco de DJ: 6 pasos

Video: Proyecto final de Wearable Tech - Casco de DJ: 6 pasos

Video: Proyecto final de Wearable Tech - Casco de DJ: 6 pasos
Video: 8 Momentos Muy Vergonzosos Captados en Cámara 2024, Mes de julio
Anonim
Proyecto final de Wearable Tech - Casco de DJ
Proyecto final de Wearable Tech - Casco de DJ

El objetivo de este proyecto es hacer un casco de DJ con LED reactivos a la música para mostrar y sorprender. Estamos utilizando una tira de LED direccionable de Amazon.com, así como un casco de motocicleta, un Arduino uno y un cable.

Suministros

Los materiales incluyen:

  • Tira de LED direccionable
  • Casco de motocicleta
  • Arduino Uno
  • Alambres y soldador

Paso 1: hacer que los LED reaccionen al sonido

Para el primer paso, vamos a probar la tira de LED para reaccionar al sonido, usamos la placa de sonido de Sparkfun y la conectamos al Arduino usando una placa y un cable. Al probar con el software Arduino, obtenemos dos lecturas que podemos usar. La amplitud del sonido proveniente del puerto "Envelope" y la lectura binaria 1/0 del puerto "gate". Utilice estas variables para mapear a la tira de led direccionable, luego la "puerta" está en uno, los LED muestran cierto color, cuando la envolvente está por encima de cierto nivel, muestra un cierto color. Se proporcionará el código completo.

Paso 2: corte y suelde los LED para darle forma al casco

Corte y suelde los LED para darle forma al casco
Corte y suelde los LED para darle forma al casco
Corte y suelde los LED para darle forma al casco
Corte y suelde los LED para darle forma al casco
Corte y suelde los LED para darle forma al casco
Corte y suelde los LED para darle forma al casco

En mi proyecto, decidí agregar los LED al casco en forma de X con triángulos adicionales en el exterior, planeo hacer que ese diseño funcione mejor con la forma en que se reproduce la música. Entonces, este paso consiste en cortar las tiras de LED a las longitudes deseadas y soldarlas juntas en las marcas de corte para hacer esquinas. Tuve que hacer esto unas 10 veces y lleva mucho tiempo, especialmente cuando se trata de cables pequeños. Este es el progreso en este paso

Paso 3: cablee y pruebe los LED del casco

Conecte y pruebe los LED del casco
Conecte y pruebe los LED del casco
Conecte y pruebe los LED del casco
Conecte y pruebe los LED del casco

En este paso, conecté y probé los LED al arduino, la placa de sonido y los LED de corte para asegurarme de que los cortes y la soldadura funcionaran correctamente.

Paso 4: Electrónica libre de la placa de pruebas

Electrónica gratis de la placa de pruebas
Electrónica gratis de la placa de pruebas
Electrónica gratis de la placa de pruebas
Electrónica gratis de la placa de pruebas
Electrónica gratis de la placa de pruebas
Electrónica gratis de la placa de pruebas

En este paso, me concentré en sacar todos los componentes electrónicos de la placa de pruebas. Soldé todos los cables que debían soldarse y extendí los cables del casco para que fueran largos para que pueda usar el casco mientras está conectado al Arduino. Lo más importante que no pude entender fue la alimentación externa, probé baterías en diferentes configuraciones pero nada me daría el resultado que necesitaba, algunas harían que las luces se volvieran locas y otras las harían de diferentes colores. Desafortunadamente, esto puede deberse a mi conocimiento de los circuitos, pero opté por mantener la energía del Arduino proveniente de la placa de circuito impreso. La placa de sonido funciona con una batería y funciona bien

Paso 5: Configuración final

Configuración final
Configuración final

para este paso final, leí los valores provenientes de la placa de sonido y modifiqué el código para que coincida con los nuevos valores que cambiaron uno, todo se quitó de la placa de pruebas. Pegué las tiras de LED al casco donde antes estaban pegadas con cinta adhesiva y finalmente volví a probar.

Paso 6: Código (Arduino)

// Boceto simple de NeoPixel Ring (c) 2013 Shae Erisson

// Publicado bajo la licencia GPLv3 para que coincida con el resto de

// Biblioteca Adafruit NeoPixel

#incluir

#ifdef _AVR_ #include // Requerido para Adafruit Trinket de 16 MHz #endif

// ¿Qué pin del Arduino está conectado a los NeoPixels?

#define PIN 3 // En Trinket o Gemma, sugiera cambiar esto a 1

// ¿Cuántos NeoPixels están conectados al Arduino?

#define NUMPIXELS 166 // Tamaño popular del anillo NeoPixel

Adafruit_NeoPixel píxeles (NUMPIXELS, PIN, NEO_GRB + NEO_KHZ800);

#define DELAYVAL 500 // Tiempo (en milisegundos) para pausar entre píxeles

configuración vacía () {

#si está definido (_ AVR_ATtiny85_) && (F_CPU == 16000000)

clock_prescale_set (clock_div_1); #endif // FIN del código específico de Trinket.

pixels.begin (); // INICIALIZAR el objeto de tira de NeoPixel (OBLIGATORIO)

Serial.begin (9600); }

bucle vacío () {

int sensorValue = analogRead (A1);

int sensorValue2 = digitalRead (7); Serial.println (sensorValue); // retraso (5); //pixels.clear (); // Establecer todos los colores de píxeles en 'desactivado'

if (sensorValue2 == 1) {

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

}

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

}

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

}

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

}

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

}

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

}

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

}

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

}

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

}

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

}

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

}

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

}

para (int i = 130; i <148; i ++) {pixels.setPixelColor (i, 0, 0, 0);} píxeles.show (); }}

Recomendado: