INHOUDSOPGAWE:

Studio tromme: 5 stappe
Studio tromme: 5 stappe

Video: Studio tromme: 5 stappe

Video: Studio tromme: 5 stappe
Video: Dave Brubeck: Take Five 2024, Julie
Anonim
Studio tromme
Studio tromme

Drummers sal ure lank oefen … Maar nie almal kan 'n drom by die huis hê nie: ruimte en geraas is 'n groot probleem!

Om hierdie rede wou ons 'n draagbare en stil trommelstel maak wat u tuis kan speel.

Hierdie drumkit is baie maklik om te gebruik; u hoef net op die pads te slaan, en dit klink soos 'n regte drom! Dit het ook 'n skerm waarop u kan sien op watter pad u slaan. En as u dit in 'n stil modus wil gebruik, moet u net u koptelefoon aan die skootrekenaar koppel!

Stap 1: wat u benodig

MATERIAAL

  • Arduino Uno
  • Broodbord
  • 'N Paar draad
  • 5 x piezos
  • 5x 1M Ohm weerstande
  • 5 potte deksels
  • Eva skuim
  • Skuim bord

PROGRAMME:

  • Arduino IDE
  • Verwerking

*Om die bogenoemde programme op u rekenaar af te laai, volg die onderstaande skakels:

  • https://www.arduino.cc/en/main/software
  • https://www.arduino.cc/en/main/software

Stap 2: Monteer die stroombaan

Monteer stroombaan
Monteer stroombaan
Monteer stroombaan
Monteer stroombaan

Eerstens moet ons aan die piezos soldeer (GND aan die geel deel en die analoog pendraad aan die wit deel van die piezo).

Ons sal 'n broodbord gebruik om alles aan te sluit.

Verbind die weerstand en die drade van die piëzo soos in die diagram hierbo getoon. Koppel dan die GND -draad van die broodbord aan die GND op Arduino. Koppel laastens elke draad van die piëzo aan 'n analoog pen op u Arduino, soos hieronder getoon.

Piezos gekoppel aan analoog penne:

  • Caixa = A0;
  • Charles = A1;
  • Tomtom = A2;
  • Crash = A3;
  • Bombo = A4;

Stap 3: programmeer dit

Programmeer dit
Programmeer dit

Ons het besluit om ons eie skerm vir die drumkit te maak in plaas van 'n vooraf ingestelde program te gebruik. Ons het Verwerking hiervoor gebruik.

Ons het dit so geprogrammeer dat die geluid van die ooreenstemmende trom klink as 'n piëzo getref word. Boonop sal die ooreenstemmende trommelpatroon op die skerm verlig word.

U moet verwerkingsgeluide invoer en reeksbiblioteke verwerk.

Moenie vergeet om die tromgeluide by 'n gegewensgids te voeg nie!

ARDUINO KODE

// PIEZOS IS Koppel aan ANALOGE PINS

const int caixa = A0;

const int charles = A1;

const int tomtom = A2;

const int crash = A3;

const int bombo = A4;

const int drempel = 100; // drempelwaarde om te besluit wanneer die bespeurde klank 'n klop is of nie

// LEES EN STOOR DIE WAARDE LEES UIT SENSORPENE

int caixaReading = 0;

int charlesReading = 0;

int tomtomReading = 0;

int crashReading = 0;

int bomboReading = 0;

ongeldige opstelling () {

Serial.begin (9600); // gebruik die seriële poort

}

leemte -lus () {

// lees die sensor en stoor dit in die veranderlike sensor Lees:

caixaReading = analogRead (caixa);

// as die sensorlesing groter is as die drempel:

if (caixaReading> = drempel) {

// AS U DIE CAIXA SLAAT, STUUR 0 NA VERWERKING

Serial.print ("0,");

Serial.println (caixaReading);

}

charlesReading = analogRead (charles);

if (charlesReading> = drempel) {

// AS JY DIE CHARLES HIT, STUUR 1 NA VERWERKING

Serial.print ("1");

Serial.println (caixaReading);

}

tomtomReading = analogRead (tomtom);

if (tomtomReading> = drempel) {

// AS U DIE CAIXA HIT, STUUR 2 NA VERWERKING

Serial.print ("2");

Serial.println (tomtomReading);

}

crashReading = analogRead (crash);

if (crashReading> = drempel) {

// AS JY DIE CAIXA HIT, STUUR 3 NA VERWERKING

Serial.print ("3");

Serial.println (crashReading);

}

bomboReading = analogRead (bombo);

if (bomboReading> = 15) {

// AS U DIE CAIXA HIT, STUUR 4 NA VERWERKING

Serial.print ("4");

Serial.println (bomboReading);

}

vertraging (10); // vertraging om te voorkom dat die reekspoortbuffer oorlaai word

}

VERWERKINGSKODE

// Voer klank en seriële biblioteke in

invoerverwerking.geluid.*;

invoerverwerking.reeks.*;

Seriële myPort; // Skep voorwerp uit die reeksklas

String val; // Data ontvang vanaf die reekspoort

// DROMGELUID

SoundFile caixa;

SoundFile charles;

SoundFile tomtom;

SoundFile -ongeluk;

SoundFile -bombo;

// DRUMS STUDIO BEELDE

Beeld img0;

Beeld img1;

Beeld img2;

Beeld img3;

PImage img4;

Beeld img5;

Beeld img6;

// DRUMS STUDIO WAVES VARIABLES

dryf n = 0;

dryf n2 = 1;

dryf n3 = 2;

dryf n4 = 3;

dryf n5 = 4;

dryf y = 0;

dryf y2 = 1;

dryf y3 = 2;

dryf y4 = 3;

dryf y5 = 4;

leemte opstelling ()

{

// OOP WAT OOK DIE HAVEL IS, IS DIE EEN WAT U GEBRUIK

String portName = Serial.list () [0]; // verander die 0 na 'n 1 of 2 ens om by u poort te pas

myPort = nuwe reeks (hierdie, poortnaam, 9600);

// DRUMS STUDIO CONSOLA

grootte (720, 680);

agtergrond (15, 15, 15);

beroertegewig (2);

// LAAI DRUM STUDIO BEELDE

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");

// LAAISKLANKE

caixa = nuwe SoundFile (hierdie, "caixa.aiff");

charles = nuwe SoundFile (hierdie, "charles.aiff");

tomtom = nuwe SoundFile (hierdie, "tomtom.aiff");

crash = nuwe SoundFile (hierdie, "crash.aiff");

bombo = nuwe SoundFile (hierdie, "bombo.aiff");

}

leemte trek ()

{

// TITULO DRUMS STUDIO

beeld (img0, 125, 0);

// GOLFTEKENING

as (y> 720) // Begin die golwe weer

{

y = 0;

y2 = 1;

y3 = 2;

y4 = 3;

y5 = 4;

}

vul (0, 10);

reg (0, 0, breedte, hoogte);

// Dejamos vul 'n blanco para

// dibujar la bola

vul (255);

beroerte (250, 255, 3);

punt (y, (hoogte-40) + sin (n) * 30);

n = n + 0,05;

y = y + 1;

beroerte (250, 255, 3);

punt (y2, (hoogte-40) + cos (n2) * 30);

n2 = n2 + 0,05;

y2 = y2 + 1;

beroerte (250, 255, 3);

punt (y3, (hoogte-40) + sin (n3) * 30);

n3 = n3 + 0,05;

y3 = y3 + 1;

beroerte (250, 255, 3);

punt (y4, (hoogte-40) + cos (n4) * 30);

n4 = n4 + 0,05;

y4 = y4 + 1;

beroerte (250, 255, 3);

punt (y5, (hoogte-40) + sin (n5) * 30);

n5 = n5 + 0,05;

y5 = y5 + 1;

// DIBUJO BATERIA SIN NINGUNA PARTE ILUMINADA

beeld (img1, 0, 80);

// MAAK UITSETTE VIR ELKE INSET

as (myPort.available ()> 0)

{// As data beskikbaar is, val = myPort.readStringUntil ('\ n'); // lees dit en stoor dit in waarde

println (val);

String list = split (val, ','); // Maak 'n lys oop om elke invoerwaarde te neem

as (lys! = nul)

{

if (lys [0].gelyk ("0")) {// as u die caixa tref

caixa.play (); // Speel caixa -klank

image (img2, 0, 80); // Die caixa word in die skerm verlig

println ("caixa"); // druk dit uit in die konsole

} anders if (lys [0].gelyk ("1")) {// as jy die charles tref

charles.play (); // Speel charles se klank

image (img3, 0, 80); // Die charles word in die skerm verlig

println ("charles"); // druk dit uit in die konsole

} anders if (lys [0].gelyk ("2")) {// As jy die tomtom tref

tomtom.play (); // Speel tomtom -klank

image (img4, 0, 80); // Tomtom word in die skerm verlig

println ("tomtom"); // druk dit uit in die konsole

} anders if (lys [0].gelyk ("3")) {// As u die ongeluk tref

crash.play (); // Speel crashgeluid

beeld (afb5, 0, 80); // Crash word op die skerm verlig

println ("crash"); // druk dit uit in die konsole

} anders if (lys [0].gelyk ("4")) {// as jy die bombo tref

bombo.play (); // Speel bombo -klank

beeld (afb6, 0, 80); // Bombo word op die skerm verlig

println ("bombo"); // druk dit uit in die konsole

}

}

}

}

Stap 4: Bou dit

Bou dit
Bou dit
Bou dit
Bou dit
Bou dit
Bou dit
Bou dit
Bou dit

Vir die verwesenliking van die prototipe het ons

gebruik alledaagse elemente om die proses te vereenvoudig, maar soek altyd funksionaliteit en 'n goeie afwerking.

Die eerste stap was om die kabels aan die piëzo -elektriese stelsel te sweis, om dit voldoende te sny om vryheid te hê wanneer die battery op die tafel geplaas word of waar ons gaan oefen.

Na 'n bietjie navorsing het ons opgemerk dat dit belangrik was dat die kussing die vibrasie van elke impak optimaal na die piëzo -elektriese stelsel oorgedra het, sodat materiale soos hout of plastiek weggegooi word. Uiteindelik het ons besluit om metaaldeksels te gebruik vir blikkieskos, wat voldoen aan hul funksie en 'n geskikte voorkoms vir hul doel het.

As u met die trommelstokkies probeer, en soos verwag, was die impak te raserig en het dit wegbeweeg van die oplossing van 'n stil trommel. Om dit op te los, bedek ons die oppervlak met 'n Eva -skuim, gesny tot die afmetings van die sentrale omtrek van die deksel. Dit word met dubbelzijdige band dun genoeg vasgeplak, sodat die verligting nie merkbaar is tydens die speel nie. Aangesien die rand van die deksels nog steeds 'n irriterende geluid maak wat ons verhinder het om gemaklik te speel, het ons 'n paar druppels warmsmeltgom op die rand gesit om te voorkom dat die kussing elke impak soveel as moontlik versag.

Om te verhoed dat die vier pads versprei terwyl hulle aan mekaar raak, het ons dit in pare saamgevoeg deur middel van 'n skroefdraadstaaf wat van die kant af ingekom het, van binne met 'n klein moer vasgemaak. Die probleem toe ons begin speel, was dat dit 'n metaalmateriaal is, omdat dit die trillings van die een pad na die ander oordra, so toe ons een speel, klink sy maat terselfdertyd.

Uiteindelik het ons die stawe verwyder en gesien dat dit genoeg en nog meer prakties is om die piëzo -kabel self as 'n vakbond te gebruik.

Wat die pedaal betref, het ons die aanvanklike idee gehad om die piëzo tussen 'n toebroodjie te hou; om die direkte impak van die piezo teen die grond te vermy. Om dit te doen, plak ons die piëzo op 'n houtplaat vas en plak 'n ander PVC -plaat van dieselfde grootte, waarna ons 'n klein skeurtjie maak wat die piëzo en die kabel vergemaklik.

Eers het ons PVC vir albei plate gebruik, maar na verskeie toetse het ons besef dat hierdie materiaal te veel impak absorbeer en dit na die piëzo oorgedra het.

Om te verhoed dat 'n pedaal los en beweeg terwyl u stap, het ons besluit om 'n rekkie tussen die toebroodjie te plaas om die pedaal aan ons voet te hou en elke slag op die trommel te verseker.

Ten slotte, om 'n beter afwerking te verkry, het ons self 'n klein boksie gebou wat die protobord en die arduino bevat. Dit is waar die 5 kabels deur die een kant ingaan en die USB -kabel deur die ander kan verbind. Dit is gemonteer in swart veerkarton, vir sy maklike hantering en om voort te gaan met die swart en wit estetika van die hele prototipe.

Aanbeveel: