Talaan ng mga Nilalaman:
- Hakbang 1: Ano ang Kakailanganin Mo
- Hakbang 2: Magtipon ng Circuit
- Hakbang 3: Program Ito
- Hakbang 4: Buuin Ito
- Hakbang 5: Patugtugin ang mga Drum
Video: Studio Drums: 5 Hakbang
2024 May -akda: John Day | [email protected]. Huling binago: 2024-01-30 13:13
Ang mga drummer ay gugugol ng oras at oras sa pagsasanay … Ngunit hindi lahat ay maaaring magkaroon ng tambol sa bahay: ang puwang at ingay ay isang malaking problema!
Para sa kadahilanang ito, nais naming lumikha ng isang portable at manahimik na drumkit na maaari mong i-play sa bahay.
Ang drumkit na ito ay napakadaling gamitin, kailangan mo lamang pindutin ang mga pad at ito ay magiging tunog tulad ng isang tunay na drum! Mayroon din itong isang display kung saan maaari mong makita kung aling pad ang iyong na-hit. At kung nais mong gamitin ito sa isang mode na katahimikan, ikunekta lamang ang iyong mga headphone sa laptop!
Hakbang 1: Ano ang Kakailanganin Mo
MATERIAL
- Arduino Uno
- Breadboard
- Ang ilang mga kawad
- 5x piezos
- 5x 1M Ohm resistors
- 5 mga takip ng garapon
- Eva foam
- Board ng foam
Mga PROGRAMA:
- Arduino IDE
- Pinoproseso
* Upang mai-download ang mga program sa itaas sa iyong computer, sundin ang mga link sa ibaba:
- https://www.arduino.cc/en/main/software
- https://www.arduino.cc/en/main/software
Hakbang 2: Magtipon ng Circuit
Una sa lahat kailangan naming maghinang sa mga piezos (GND sa dilaw na bahagi at ang analog pin wire sa puting bahagi ng piezo).
Gumagamit kami ng isang breadboard upang ikonekta ang lahat.
Ikonekta ang risistor at ang mga wire ng piezo tulad ng ipinakita sa diagram sa itaas. Pagkatapos ay ikonekta ang GND wire ng breadboard sa GND sa Arduino. Sa wakas, ikonekta ang bawat kawad ng piezo sa isang analog pin sa iyong Arduino tulad ng ipinakita sa ibaba.
Ang mga piezos ay konektado sa mga analog na pin:
- Caixa = A0;
- Charles = A1;
- Tomtom = A2;
- Pag-crash = A3;
- Bombo = A4;
Hakbang 3: Program Ito
Nagpasya kaming lumikha ng aming sariling display para sa drumkit sa halip na gumamit ng isang preset na programa. Ginamit namin ang Pagproseso para dito.
Na-program namin ito upang kapag ang isang piezo ay na-hit, ang tunog ng kaukulang drum ay tunog. Bilang karagdagan, ang kaukulang pattern ng drum ay mag-iilaw sa screen.
Kakailanganin mong i-import ang tunog ng pagpoproseso, at pagproseso ng mga serial library.
Huwag kalimutang idagdag ang mga tunog ng drum sa isang folder ng data!
CODE NG ARDUINO
// PIEZOS AY KONEKTO SA ANALOG PINS
Const int caixa = A0;
Const int charles = A1;
const int tomtom = A2;
Const int crash = A3;
Const int bombo = A4;
Const int threshold = 100; // halaga ng threshold upang magpasya kung ang napansin na tunog ay isang katok o hindi
// READ AND STORE THE VALUE READ MULA SA SENSOR PINS
int caixaReading = 0;
int charlesReading = 0;
int tomtomReading = 0;
int crashReading = 0;
int bomboReading = 0;
walang bisa ang pag-setup () {
Serial.begin (9600); // gamitin ang serial port
}
void loop () {
// basahin ang sensor at iimbak ito sa variable sensorReading:
caixaReading = analogRead (caixa);
// kung ang pagbabasa ng sensor ay mas malaki kaysa sa threshold:
kung (caixaReading> = threshold) {
// KUNG PATAYIN MO ANG CAIXA, MAGPADALA 0 SA PAMPROSESO
Serial.print ("0,");
Serial.println (caixaReading);
}
charlesReading = analogRead (charles);
kung (charlesReading> = threshold) {
// KUNG PATAYIN MO ANG CHARLES, MAGPADALA NG 1 SA PAMPROSESO
Serial.print ("1,");
Serial.println (caixaReading);
}
tomtomReading = analogRead (tomtom);
kung (tomtomReading> = threshold) {
// KUNG PATAYIN MO ANG CAIXA, MAGPADALA NG 2 SA PAMPROSESO
Serial.print ("2,");
Serial.println (tomtomReading);
}
crashReading = analogRead (crash);
kung (crashReading> = threshold) {
// KUNG PATAYIN MO ANG CAIXA, MAGPADALA NG 3 SA PAMPROSESO
Serial.print ("3,");
Serial.println (crashReading);
}
bomboReading = analogRead (bombo);
kung (bomboReading> = 15) {
// KUNG PATAYIN MO ANG CAIXA, MAGPADALA NG 4 SA PAMPROSESO
Serial.print ("4,");
Serial.println (bomboReading);
}
antala (10); // antala upang maiwasan ang labis na pag-load ng serial port buffer
}
KODONG PAMPROSESO
// IMPORT SOUND AND SERIAL LIBRARIES
pagproseso ng pag-import. tunog. *;
pagproseso ng pag-import.serial. *;
Serial myPort; // Lumikha ng bagay mula sa Serial class
String val; // Data na natanggap mula sa serial port
// DRUM SOUNDS
SoundFile caixa;
SoundFile charles;
SoundFile tomtom;
Pag-crash ng SoundFile;
SoundFile bombo;
// DRUMS STUDIO IMAGES
PImage img0;
PImage img1;
PImage img2;
PImage img3;
PImage img4;
PImage img5;
PImage img6;
// DRUMS STUDIO WAVES VARIABLES
lumutang n = 0;
lumutang n2 = 1;
lumutang n3 = 2;
lumutang n4 = 3;
lumutang n5 = 4;
float y = 0;
lumutang y2 = 1;
lumutang y3 = 2;
lumutang y4 = 3;
lumutang y5 = 4;
walang bisa ang pag-setup ()
{
// OPEN WHATEVER PORT ANG IYONG GINAGAMIT
String portName = Serial.list () [0]; // baguhin ang 0 sa isang 1 o 2 atbp upang tumugma sa iyong port
myPort = bagong Serial (ito, portName, 9600);
// DRUMS STUDIO CONSOLA
laki (720, 680);
background (15, 15, 15);
strokeWeight (2);
// LOAD DRUM STUDIO IMAGES
img0 = loadImage ("drumsstudio.png");
img1 = loadImage ("res.png");
img2 = loadImage ("caixa.png");
img3 = loadImage ("charles.png");
img4 = loadImage ("tomtom.png");
img5 = loadImage ("crash.png");
img6 = loadImage ("bombo.png");
// LOAD SOUNDS
caixa = bagong SoundFile (ito, "caixa.aiff");
charles = bagong SoundFile (ito, "charles.aiff");
tomtom = bagong SoundFile (ito, "tomtom.aiff");
crash = bagong SoundFile (ito, "crash.aiff");
bombo = bagong SoundFile (ito, "bombo.aiff");
}
walang bisa draw ()
{
// TITULO DRUMS STUDIO
imahe (img0, 125, 0);
// WAVES DRAWING
kung (y> 720) // Simulan muli ang mga alon
{
y = 0;
y2 = 1;
y3 = 2;
y4 = 3;
y5 = 4;
}
punan (0, 10);
tuwid (0, 0, lapad, taas);
// Dejamos punan ang isang blanco para
// dibujar la bola
punan (255);
stroke (250, 255, 3);
point (y, (taas-40) + kasalanan (n) * 30);
n = n + 0.05;
y = y + 1;
stroke (250, 255, 3);
point (y2, (taas-40) + cos (n2) * 30);
n2 = n2 + 0.05;
y2 = y2 + 1;
stroke (250, 255, 3);
point (y3, (taas-40) + kasalanan (n3) * 30);
n3 = n3 + 0.05;
y3 = y3 + 1;
stroke (250, 255, 3);
point (y4, (taas-40) + cos (n4) * 30);
n4 = n4 + 0.05;
y4 = y4 + 1;
stroke (250, 255, 3);
point (y5, (taas-40) + kasalanan (n5) * 30);
n5 = n5 + 0.05;
y5 = y5 + 1;
// DIBUJO BATERIA SIN NINGUNA PARTE ILUMINADA
imahe (img1, 0, 80);
// MAKE OUTPUTS PARA SA BAWAT INPUT
kung (myPort.available ()> 0)
{// Kung magagamit ang data, val = myPort.readStringUntil ('\ n'); // basahin ito at iimbak ito sa val
println (val);
Listahan ng String = split (val, ','); // Magbukas ng isang listahan para sa pagkuha ng bawat halaga ng pag-input
kung (listahan! = null)
{
kung (listahan [0].equals ("0")) {// kung na-hit mo ang caixa
caixa.play (); // Play caixa sound
imahe (img2, 0, 80); // Ang caixa ay iluminado sa screen
println ("caixa"); // i-print ito sa console
} iba pa kung (ilista ang [0].equals ("1")) {// kung na-hit mo ang charles
charles.play (); // Patugtugin ang tunog ng charles
imahe (img3, 0, 80); // Ang charles ay iluminado sa screen
println ("charles"); // i-print ito sa console
} iba pa kung (ilista ang [0].equals ("2")) {// Kung na-hit mo ang tomtom
tomtom.play (); // Patugtugin ang tunog ng tomtom
imahe (img4, 0, 80); // Ang Tomtom ay iluminado sa screen
println ("tomtom"); // i-print ito sa console
} iba pa kung (ilista ang [0].equals ("3")) {// Kung na-hit mo ang pag-crash
crash.play (); // Patugtugin ang tunog ng pag-crash
imahe (img5, 0, 80); // Crash ay iluminado sa screen
println ("pag-crash"); // i-print ito sa console
} iba pa kung (ilista ang [0].equals ("4")) {// kung na-hit mo ang bombo
bombo.play (); // Patugtugin ang tunog ng bombo
imahe (img6, 0, 80); // Bombo ay iluminado sa screen
println ("bombo"); // i-print ito sa console
}
}
}
}
Hakbang 4: Buuin Ito
Para sa pagsasakatuparan ng prototype, mayroon kaming
ginamit ang mga pang-araw-araw na elemento upang gawing simple ang proseso, ngunit palaging naghahanap ng pag-andar at isang magandang tapusin.
Ang unang hakbang ay upang hinangin ang mga kable sa piezoelectric, pinuputol ang mga ito sa isang sapat na haba upang magkaroon ng kalayaan kapag inaayos ang baterya sa mesa o kung saan kami pupunta sa pagsasanay.
Matapos ang ilang pagsasaliksik, napagmasdan naming mahalaga na maipasa ng pad ang panginginig ng bawat epekto sa piezoelectric, upang ang mga materyales tulad ng kahoy o plastik ay itinapon. Panghuli, pinili namin na gumamit ng mga takip ng metal para sa de-latang pagkain, na sumusunod sa kanilang pagpapaandar at may angkop na hitsura para sa kanilang hangarin.
Sinusubukan ang mga drumstick at tulad ng inaasahan, ang mga epekto ay masyadong maingay at lumayo mula sa solusyon ng isang tahimik na drum. Upang malutas ito, takpan namin ang ibabaw ng isang foam na Eva, gupitin sa mga sukat ng gitnang paligid ng takip. Ito ay nakadikit ng dobleng panig na tape na sapat na manipis upang ang kaluwagan ay hindi kapansin-pansin kapag nagpe-play. Bilang karagdagan, habang ang gilid ng mga takip ay nakagawa pa rin ng isang nakakainis na ingay na pumipigil sa amin na maglaro nang kumportable, naglalagay kami ng ilang maliliit na patak ng mainit na natunaw na pandikit sa gilid upang maiwasan ang pad mula sa pagdulas at paglambot ng bawat epekto hangga't maaari.
Upang maiwasan ang pagpapakalat ng apat na pad habang hinahawakan, isinama namin sila sa mga pares sa pamamagitan ng isang sinulid na bar na pumasok mula sa gilid, naayos mula sa loob ng isang maliit na kulay ng nuwes. Ang problema noong nagsimula kaming maglaro ay dahil ito ay isang materyal na metal, inilipat nito ang mga panginginig mula sa isang pad patungo sa isa pa, kaya kapag nagpatugtog kami ng isa, sabay na tumunog ang kanyang kapareha.
Sa wakas ay tinanggal namin ang mga tungkod at nakita na sapat na at mas praktikal na gamitin ang piezo cable mismo bilang isang unyon.
Tulad ng para sa pedal, mayroon kaming paunang ideya na hawakan ang piezo sa pagitan ng isang sandwich; upang maiwasan ang direktang epekto ng piezo laban sa lupa. Upang magawa ito, idinikit namin ang piezo sa isang kahoy na plato at nakadikit ng isa pang plato ng PVC na may parehong sukat, kung saan gumawa kami ng isang maliit na bitak na nagpapadali at tumatanggap ng parehong piezo at cable.
Noong una ginamit namin ang PVC para sa parehong mga plato, ngunit pagkatapos ng maraming mga pagsubok nalaman namin na ang materyal na ito ay sumipsip ng labis na epekto at nailipat ito sa piezo.
Upang maiwasan ang pagkakaroon ng isang pedal na maluwag at gumagalaw sa iyong hakbang, nagpasya kaming maglagay ng isang goma sa pagitan ng sandwich upang hawakan ang pedal sa aming paa at matiyak ang bawat stroke sa drum.
Sa wakas, upang makamit ang isang mas mahusay na tapusin, gumawa kami ng isang maliit na kahon sa aming sarili na matatagpuan ang protoboard at ang arduino. Dito pumapasok ang 5 mga kable sa isang gilid at pinapayagan ang USB cable na konektado sa kabilang panig. Naka-mount ito sa itim na karton ng balahibo, para sa madaling paghawak nito at upang magpatuloy sa itim at puting estetika ng buong prototype.
Inirerekumendang:
Arduino MIDI Drums: 6 Hakbang
Arduino MIDI Drums: Kailanman nagtaka upang malaman ang mga drum ngunit hindi mo kayang bayaran ang isang drum set o walang sapat na puwang upang maiimbak ang drum set. Madaling gumawa ng isang set ng drum ng MIDI sa bahay gamit ang Arduino sa ilalim ng ₹ 800 ($ 10)
Lumiko ang X-box Rock Band Drums Sa isang Midi Stand Alone Electronic Drums .: 4 Mga Hakbang (na may Mga Larawan)
Lumiko ang X-box Rock Band Drums Sa isang Midi Stand Alone Electronic Drums .: Masuwerte akong makakuha ng isang ginamit na set ng drum na x-box, ito ay nasa isang medyo magaspang na hugis, at walang sagwan, ngunit wala nang maitatama. gawing isang standalone electric drum set. Binabasa ang halagang analog mula sa sensor ng piezo at ginawang MIDI comman
Makey Makey Electric Drums / Drum Machine: 8 Hakbang
Makey Makey Electric Drums / Drum Machine: Ang tutorial na ito sa kung paano bumuo ng isang hanay ng mga electric drums, ay isang pagpasok sa kumpetisyon ng Makey Makey. Materyal, mag-iiba sa kakayahang magamit at mga personal na pagpipilian. Ang Cardboard ay maaaring mapalitan ng mas matibay na mga materyales, at may layered may foam / iba pa para sa tex
Light Up Drums Sa Metronome: 4 na Hakbang
Light Up Drums With Metronome: Gumagamit ang proyektong ito ng isang drum mula sa isang video game. Ang Circuit Playground Express ay na-program upang gumana bilang isang metronom, at ang mga LED stripe ay tumutugon sa tunog ng mga drum na tinamaan
Arduino MIDI Drums (Wii Band Hero) + DAW + VST: 6 na Hakbang (na may Mga Larawan)
Arduino MIDI Drums (Wii Band Hero) + DAW + VST: Kumusta! Ang tutorial na ito ay tungkol sa kung paano baguhin ang isang Wii console drum kit, ang bida ng banda, na nagtatampok ng isang silo, 2 toms, 2 cymbals at kick pedal. Gayundin, kung paano makukuha ang tunog mula sa drum kit, na may sunud-sunod na gabay, gamit ang isang magagamit na DAW at VST nang libre. Jus