Mundarija:

Wearable Tech Final loyihasi - DJ dubulg'asi: 6 qadam
Wearable Tech Final loyihasi - DJ dubulg'asi: 6 qadam

Video: Wearable Tech Final loyihasi - DJ dubulg'asi: 6 qadam

Video: Wearable Tech Final loyihasi - DJ dubulg'asi: 6 qadam
Video: 川普读兵法认输退选哀兵计忽悠拜登,印度禁抖音美国禁识脸北京疫情诡异 Trump's art of losing war to fool Biden, India bans Tiktok, etc. 2024, Iyul
Anonim
Wearable Tech Final loyihasi - DJ dubulg'asi
Wearable Tech Final loyihasi - DJ dubulg'asi

Loyihaning maqsadi shou va voy faktor uchun musiqaga reaktiv svetodiodli DJ dubulg'asini yasashdir. Biz Amazon.com saytidan adresli LED tasmasini, shuningdek mototsikl dubulg'asini, Arduino uno va simini ishlatamiz.

Ta'minotlar

Materiallar o'z ichiga oladi:

  • Manzil uchun LED tasmasi
  • Mototsikl dubulg'asi
  • Arduino Uno
  • Simlar va lehimlanadigan temir

1 -qadam: LEDlarning tovushga reaktsiyasini olish

Birinchi bosqichda biz LED tasmasini ovozga javob berish uchun sinab ko'rmoqchimiz, biz Sparkfun ovoz kartasidan foydalanamiz va uni taxta va sim yordamida Arduino -ga ulaymiz. Arduino dasturiy ta'minoti yordamida biz ikkita o'qishni olamiz. "Zarf" portidan keladigan ovoz amplitudasi va "darvoza" portidan ikkilik 1/0 o'qish. Bu o'zgaruvchilardan manzilga yo'naltirilgan chiziqli chiziqni xaritaga solish uchun foydalaning, shunda "darvoza" bitta, LEDlar ma'lum rangni ko'rsatadi, konvert ma'lum darajadan yuqori bo'lsa, ma'lum rangni ko'rsatadi. To'liq kod taqdim etiladi.

2 -qadam: dubulg'a shaklidagi LEDlarni kesib, lehimlang

LEDni dubulg'a shaklida kesish va lehimlash
LEDni dubulg'a shaklida kesish va lehimlash
LEDni dubulg'a shaklida kesish va lehimlash
LEDni dubulg'a shaklida kesish va lehimlash
LEDni dubulg'a shaklida kesish va lehimlash
LEDni dubulg'a shaklida kesish va lehimlash

Loyihamda men LEDlarni dubulg'aga X uslubida, tashqi tomondan qo'shimcha uchburchaklar bilan qo'shishga qaror qildim, men bu dizaynni musiqa ijro etish uslubi bilan yaxshiroq ishlashini rejalashtirganman. Shunday qilib, bu qadam LED chiziqlarini kerakli uzunliklarga kesish va burchaklarni kesish uchun kesilgan joylarga lehimlashdan iborat. Men buni taxminan 10 marta bajarishim kerak edi va bu juda ko'p vaqt talab etadi, ayniqsa kichik simlar bilan ishlashda. Bu bosqichdagi taraqqiyot

3 -qadam: dubulg'adagi LEDlarni sim bilan ulang va tekshiring

Dubulg'adagi LEDlarni simi va sinovdan o'tkazing
Dubulg'adagi LEDlarni simi va sinovdan o'tkazing
Dubulg'adagi LEDlarni simi va sinovdan o'tkazing
Dubulg'adagi LEDlarni simi va sinovdan o'tkazing

Bu bosqichda men kesish va lehimning to'g'ri ishlashiga ishonch hosil qilish uchun LEDlarni arduino, ovoz kartasi va kesilgan LEDlarga uladim va sinab ko'rdim.

4 -qadam: Breadboard -dan bepul elektronika

Breadboard -dan bepul elektronika
Breadboard -dan bepul elektronika
Breadboard -dan bepul elektronika
Breadboard -dan bepul elektronika
Breadboard -dan bepul elektronika
Breadboard -dan bepul elektronika

Bu qadamda men barcha elektronikani taxtadan olib tashlashga e'tibor qaratdim. Men lehimlashi kerak bo'lgan barcha simlarni lehimladim va dubulg'a simlarini uzunroq qilib uzaytirdim, shunda siz Arduino -ga mahkamlangan dubulg'a kiyishingiz mumkin. Men tushunolmagan eng muhim narsa tashqi quvvat edi, men batareyalarni turli xil konfiguratsiyalarda sinab ko'rdim, lekin hech narsa menga kerakli natijani bermadi, ba'zilari chiroqlarni aqldan ozdirdi, ba'zilari esa ularni boshqa rangga aylantirdi. Afsuski, bu mening mikrosxemalar haqidagi bilimlarimga bog'liq bo'lishi mumkin, lekin men Arduino quvvatini kompyuter kartasidan ushlab turishni tanladim. Ovoz kartasi batareya to'plami bilan ishlaydi va u yaxshi ishlaydi

5 -qadam: Yakuniy konfiguratsiya

Yakuniy konfiguratsiya
Yakuniy konfiguratsiya

Bu oxirgi qadam uchun men ovoz kartasidan keladigan qiymatlarni o'qib chiqdim va kodni yangi qiymatlarga mos ravishda o'zgartirdim, hamma narsa taxtadan olib tashlandi. Men LED tasmasini dubulg'aga yopishtirdim, u erda ular ilgari yopishtirilgan edi va nihoyat men yana sinovdan o'tkazdim.

6 -qadam: Kod (Arduino)

// NeoPixel Ring oddiy eskiz (c) 2013 Shae Erisson

// GPLv3 litsenziyasi ostida qolganlarga mos kelishi uchun chiqarilgan

// Adafruit NeoPixel kutubxonasi

#qo'shing

#ifdef _AVR_ #include // 16 MGtsli Adafruit Trinket uchun zarur #endif

// Arduino -dagi qaysi pin NeoPixel -ga ulangan?

#define PIN 3 // Trinket yoki Gemma -da buni 1 ga o'zgartirishni taklif qiling

// Arduino -ga nechta NeoPixel biriktirilgan?

#define NUMPIXELS 166 // Mashhur NeoPixel uzuk o'lchami

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

#define DELAYVAL 500 // Piksellar orasidagi pauza vaqti (millisekundlarda)

bo'sh o'rnatish () {

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

clock_prescale_set (clock_div_1); #endif // Trinket-ga xos kodning oxiri.

piksel.begin (); // NeoPixel tasma ob'ektini INITIALIZE (talab qilinadi)

Serial.begin (9600); }

void loop () {

int sensorValue = analogRead (A1);

int sensorValue2 = digitalRead (7); Serial.println (sensorValue); // kechikish (5); // piksellar aniq (); // Barcha piksel ranglarini "o'chirilgan" qilib qo'ying

agar (sensorValue2 == 1) {

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

}

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

}

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

}

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

}

uchun (int i = 48; i <81; i ++) {piksel.setPixelColor (i, 0, 0, 0);

}

uchun (int i = 102; i <129; i ++) {piksel.setPixelColor (i, 0, 0, 0);

}

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

}

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

}

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

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

}

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

}

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

}

piksel.show (); } boshqa {uchun (int i = 29; i <47; i ++) {piksel.setPixelColor (i, 0, 0, 0);

}

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

}

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

Tavsiya: