Daftar Isi:

Proyek Akhir Teknologi Wearable - Helm DJ: 6 Langkah
Proyek Akhir Teknologi Wearable - Helm DJ: 6 Langkah

Video: Proyek Akhir Teknologi Wearable - Helm DJ: 6 Langkah

Video: Proyek Akhir Teknologi Wearable - Helm DJ: 6 Langkah
Video: Waspadalah kalau ketemu orang yang pake kacamata ini. 2024, November
Anonim
Proyek Akhir Teknologi Wearable - Helm DJ
Proyek Akhir Teknologi Wearable - Helm DJ

Tujuan dari proyek ini adalah untuk membuat helm DJ dengan LED reaktif terhadap musik untuk pertunjukan dan faktor wow. Kami menggunakan strip LED yang dapat dialamatkan dari Amazon.com serta helm sepeda motor, Arduino uno, dan kawat.

Perlengkapan

Bahan Termasuk:

  • Strip LED yang dapat dialamatkan
  • Helm motor
  • Arduino Uno
  • Kabel dan besi solder

Langkah 1: Membuat LED Bereaksi terhadap Suara

Untuk langkah pertama kita akan menguji strip LED untuk bereaksi terhadap suara, kita menggunakan papan suara dari Sparkfun dan menghubungkannya ke Arduino menggunakan papan tempat memotong roti dan kawat. Menguji dengan perangkat lunak Arduino, kami mendapatkan dua bacaan yang dapat kami gunakan. Amplitudo suara berasal dari port "Envelope" dan pembacaan 1 / 0 biner dari port "gate". Gunakan variabel ini untuk memetakan ke strip led yang dapat dialamatkan, lalu "gerbang" berada di satu, LED menampilkan warna tertentu, ketika Amplop berada di atas level tertentu, menampilkan warna tertentu. Kode lengkap akan diberikan.

Langkah 2: Potong dan Solder LED menjadi Bentuk di Helm

Potong dan Solder LED untuk Dibentuk pada Helm
Potong dan Solder LED untuk Dibentuk pada Helm
Potong dan Solder LED untuk Dibentuk pada Helm
Potong dan Solder LED untuk Dibentuk pada Helm
Potong dan Solder LED untuk Dibentuk pada Helm
Potong dan Solder LED untuk Dibentuk pada Helm

Pada proyek saya, saya memutuskan untuk menambahkan LED ke helm dengan cara X dengan segitiga ekstra di bagian luar, saya berencana untuk membuat desain itu bekerja lebih baik dengan cara musik diputar. Jadi langkah ini adalah tentang memotong strip LED dengan panjang yang diinginkan dan menyoldernya bersama-sama pada tanda potong untuk membuat sudut. Saya harus melakukan ini sekitar 10 kali dan sangat memakan waktu terutama ketika berhadapan dengan kabel kecil. Ini adalah kemajuan pada langkah ini

Langkah 3: Kawat dan Uji LED pada Helm

Kawat dan Uji LED pada Helm
Kawat dan Uji LED pada Helm
Kawat dan Uji LED pada Helm
Kawat dan Uji LED pada Helm

Pada langkah ini saya menghubungkan dan menguji LED ke arduino, papan suara dan LED yang dipotong untuk memastikan pemotongan dan penyolderan berfungsi dengan benar

Langkah 4: Elektronik Gratis Dari Breadboard

Elektronik Gratis Dari Breadboard
Elektronik Gratis Dari Breadboard
Elektronik Gratis Dari Breadboard
Elektronik Gratis Dari Breadboard
Elektronik Gratis Dari Breadboard
Elektronik Gratis Dari Breadboard

Dalam langkah ini saya fokus untuk mengeluarkan semua elektronik dari papan tempat memotong roti. Saya menyolder semua kabel yang perlu disolder dan memperpanjang kabel helm agar panjang sehingga Anda bisa memakai helm yang terpasang di Arduino. Hal terpenting yang tidak dapat saya pahami adalah daya eksternal, saya mencoba baterai dalam konfigurasi yang berbeda tetapi tidak ada yang memberi saya hasil yang saya butuhkan, beberapa akan membuat lampu menjadi gila dan beberapa akan membuatnya menjadi warna yang berbeda. Sayangnya ini mungkin karena pengetahuan saya tentang sirkuit, tetapi saya memilih untuk menyimpan daya ke Arduino yang berasal dari papan pc. Papan suara ditenagai oleh baterai dan berfungsi dengan baik

Langkah 5: Konfigurasi Akhir

Konfigurasi Akhir
Konfigurasi Akhir

untuk langkah terakhir ini, saya membaca nilai yang berasal dari papan suara dan memodifikasi kode agar sesuai dengan nilai baru yang mengubah satu semuanya diambil dari papan tempat memotong roti. Strip LED saya rekatkan ke helm yang sebelumnya direkatkan dan akhirnya saya tes lagi.

Langkah 6: Kode (Arduino)

// Sketsa sederhana NeoPixel Ring (c) 2013 Shae Erisson

// Dirilis di bawah lisensi GPLv3 untuk mencocokkan sisanya

// Pustaka Adafruit NeoPixel

#termasuk

#ifdef _AVR_ #include // Diperlukan untuk Adafruit Trinket 16 MHz #endif

// Pin mana di Arduino yang terhubung ke NeoPixels?

#define PIN 3 // Pada Trinket atau Gemma, sarankan untuk mengubahnya menjadi 1

// Berapa banyak NeoPixels yang terpasang ke Arduino?

#define NUMPIXELS 166 // Ukuran cincin NeoPixel yang populer

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

#define DELAYVAL 500 // Waktu (dalam milidetik) untuk menjeda antar piksel

batalkan pengaturan() {

#jika ditentukan(_AVR_ATtiny85_) && (F_CPU == 16000000)

clock_prescale_set(clock_div_1); #endif // END dari kode khusus Trinket.

piksel.mulai(); // INISIALISASI objek strip NeoPixel (DIPERLUKAN)

Serial.begin(9600); }

lingkaran kosong() {

int sensorValue = analogRead(A1);

int sensorValue2 = digitalRead(7); Serial.println(Nilai sensor); //tunda(5); //pixels.clear(); // Setel semua warna piksel ke 'mati'

jika (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(saya, 0, 0, 0);

}

for(int i=48; i<81; i++) { piksel.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++) { piksel.setPixelColor(i, 255, 0, 0);

}

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

}

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

} piksel.tampilkan(); } if (nilai sensor > 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);

}

piksel.tampilkan(); } else{ untuk(int i=29; i<47; i++) { piksel.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++) { piksel.setPixelColor(i, 0, 0, 0);} piksel.tampilan(); } }

Direkomendasikan: