İçindekiler:

Stüdyo Davulları: 5 Adım
Stüdyo Davulları: 5 Adım

Video: Stüdyo Davulları: 5 Adım

Video: Stüdyo Davulları: 5 Adım
Video: Müzik Aletleri Düğüne Gitmiş - Kıpır Kıpır Dans Şarkısı! 2024, Temmuz
Anonim
Stüdyo Davulları
Stüdyo Davulları

Davulcular saatlerce pratik yaparlardı… Ama herkesin evinde davul olamaz: alan ve gürültü büyük bir problemdir!

Bu nedenle evde çalabileceğiniz portatif ve sessiz bir bateri seti oluşturmak istedik.

Bu bateri setinin kullanımı çok kolaydır, sadece pedlere vurmanız yeterlidir ve gerçek bir davul gibi ses çıkaracaktır! Ayrıca, hangi pede vurduğunuzu görebileceğiniz bir ekran ile birlikte gelir. Sessiz modda kullanmak istiyorsanız, kulaklığınızı dizüstü bilgisayara bağlamanız yeterli!

Adım 1: İhtiyacınız Olan Şeyler

MALZEME

  • Arduino Uno
  • ekmek tahtası
  • biraz tel
  • 5x piezo
  • 5x 1M Ohm dirençler
  • 5 kavanoz kapağı
  • Eva köpük
  • Köpük tahta

PROGRAMLAR:

  • Arduino IDE'si
  • İşleme

*Yukarıdaki programları bilgisayarınıza indirmek için aşağıdaki bağlantıları takip edin:

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

Adım 2: Devreyi Birleştirin

Montaj Devresi
Montaj Devresi
Montaj Devresi
Montaj Devresi

Her şeyden önce piezolara lehimlememiz gerekiyor (GND sarı kısma ve analog pin teli piezonun beyaz kısmına).

Her şeyi bağlamak için bir breadboard kullanacağız.

Piezonun direncini ve tellerini yukarıdaki şemada gösterildiği gibi bağlayın. Ardından breadboard'un GND kablosunu Arduino'daki GND'ye bağlayın. Son olarak, piezo'nun her bir telini aşağıda gösterildiği gibi Arduino'nuzdaki bir analog pime bağlayın.

Analog pinlere bağlı Piezolar:

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

Adım 3: Programlayın

Programla
Programla

Önceden ayarlanmış bir program kullanmak yerine bateri seti için kendi ekranımızı yaratmaya karar verdik. Bunun için İşleme kullandık.

Bunu, bir piezoya vurulduğunda karşılık gelen davulun sesi duyulacak şekilde programladık. Ayrıca ekranda ilgili bateri ritmi yanacaktır.

İşleme sesini ve işleme seri kitaplıklarını içe aktarmanız gerekir.

Davul seslerini bir veri klasörüne eklemeyi unutmayın!

ARDUINO KODU

//PIEZOS ANALOG PİMLERE BAĞLIDIR

const int caixa = A0;

const int charles = A1;

const int tomtom = A2;

const int kilitlenme = A3;

const int bomba = A4;

const int eşik = 100; // algılanan sesin bir vuruş olup olmadığına karar vermek için eşik değeri

// SENSÖR PİMLERİNDEN OKUNAN DEĞERİ OKUYUN VE SAKLAYIN

int caixaOkuma = 0;

int charlesOkuma = 0;

int tomtomOkuma = 0;

int crashReading = 0;

int bomboOkuma = 0;

geçersiz kurulum() {

Seri.başla(9600); // seri bağlantı noktasını kullan

}

boşluk döngüsü () {

// sensörü okuyun ve sensorReading değişkeninde saklayın:

caixaReading = analogRead(caixa);

// sensör okuması eşikten büyükse:

if (caixaReading >= eşik) {

// CAIXA'YA VURSANIZ, İŞLEMEYE 0 GÖNDERİN

Seri.print("0,");

Serial.println(caixaReading);

}

charlesReading = analogRead(charles);

if (charlesReading >= eşik) {

// CHARLES'E VURSANIZ, İŞLEMEYE 1 GÖNDERİN

Seri.print("1, ");

Serial.println(caixaReading);

}

tomtomReading = analogRead(tomtom);

if (tomtomReading >= eşik) {

// CAIXA'YA VURSANIZ, İŞLEMEYE 2 GÖNDERİN

Seri.print("2,");

Serial.println(tomtomReading);

}

crashReading = analogRead(çarpma);

if (crashReading >= eşik) {

// CAIXA'YA VURSANIZ, İŞLEMEYE 3 GÖNDERİN

Seri.print("3,");

Serial.println(crashReading);

}

bomboReading = analogRead(bombo);

if (bomboReading >= 15) {

// CAIXA'YA VURSANIZ, İŞLEMEYE 4 GÖNDERİN

Seri.print("4, ");

Serial.println(bomboOkuma);

}

gecikme(10); // seri port arabelleğinin aşırı yüklenmesini önlemek için gecikme

}

İŞLEME KODU

//SES VE SERİ KÜTÜPHANELERİ İthalat

işleme.sound.*;

işleme.serisini içe aktar.*;

Seri myPort; // Serial sınıftan nesne oluştur

dize değeri; // Seri porttan alınan veriler

//davul sesleri

SoundFile caixa;

SoundFile charles;

SoundFile tomtom;

SoundFile çökmesi;

SoundFile bombası;

//DRUMS STÜDYO GÖRÜNTÜLERİ

PResim img0;

PImage img1;

PImage img2;

PImage img3;

PImage img4;

PImage img5;

PImage img6;

//DRUMS STÜDYO DALGALARI DEĞİŞKENLERİ

kayan nokta n = 0;

kayan nokta n2 = 1;

kayan nokta n3 = 2;

kayan nokta n4 = 3;

kayan nokta n5 = 4;

yüzer y = 0;

yüzer y2 = 1;

yüzer y3 = 2;

yüzer y4 = 3;

yüzer y5 = 4;

geçersiz kurulum()

{

// KULLANDIĞINIZ PORTU AÇIN

String portName = Serial.list()[0]; // bağlantı noktanıza uyması için 0'ı 1 veya 2 olarak değiştirin

myPort = new Serial(bu, portName, 9600);

//DRUMS STÜDYO KONSOLASI

boyut(720, 680);

arkaplan(15, 15, 15);

vuruş Ağırlığı(2);

//DRUM STÜDYO GÖRÜNTÜLERİNİ YÜKLE

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

// SESLERİ YÜKLE

caixa = new SoundFile(bu, "caixa.aiff");

charles = new SoundFile(bu, "charles.aiff");

tomtom = new SoundFile(bu, "tomtom.aiff");

crash = new SoundFile(bu, "crash.aiff");

bombo = new SoundFile(bu, "bombo.aiff");

}

geçersiz çekiliş()

{

//TITULO DRUMS STÜDYOSU

resim(img0, 125, 0);

// DALGA ÇİZİMİ

if (y>720) //Dalgaları yeniden başlat

{

y = 0;

y2 = 1;

y3 = 2;

y4 = 3;

y5 = 4;

}

doldur(0, 10);

rect(0, 0, genişlik, yükseklik);

// Dejamos bir blanco para doldurun

// iki kelimelik bola

doldur(255);

vuruş(250, 255, 3);

point(y, (yükseklik-40) + sin(n) * 30);

n = n + 0.05;

y = y + 1;

vuruş(250, 255, 3);

nokta(y2, (yükseklik-40) + cos(n2) * 30);

n2 = n2 + 0.05;

y2 = y2 + 1;

vuruş(250, 255, 3);

nokta(y3, (yükseklik-40) + sin(n3) * 30);

n3 = n3 + 0.05;

y3= y3 + 1;

vuruş(250, 255, 3);

nokta(y4, (yükseklik-40) + cos(n4) * 30);

n4 = n4 + 0.05;

y4 = y4 + 1;

vuruş(250, 255, 3);

nokta(y5, (yükseklik-40) + sin(n5) * 30);

n5 = n5 + 0.05;

y5 = y5 + 1;

//DIBUJO BATERIA SIN NINGUNA PARTE ILUMINADA

resim(img1, 0, 80);

//HER GİRİŞ İÇİN ÇIKIŞLAR YAPIN

if (myPort.available() > 0)

{ // Veri mevcutsa, val = myPort.readStringUntil('\n'); // oku ve val'de sakla

println (val);

String liste = split(val, ', '); //Her giriş değerini almak için bir liste aç

if (liste!=null)

{

if (list[0].equals("0")) { //caixa'ya basarsanız

caixa.play(); //caixa sesini çal

image(img2, 0, 80);//Caixa ekranda aydınlanıyor

println("caixa"); // konsolda yazdır

} else if (list[0].equals("1")) { //eğer charles'a ulaşırsanız

charles.play();//charles sesini çal

image(img3, 0, 80);//charles ekranda aydınlanıyor

println("charles"); // konsolda yazdır

} else if (list[0].equals("2")) { //Eğer tomtom'a basarsanız

tomtom.play();//tomtom sesini çal

image(img4, 0, 80);//Tomtom ekranda aydınlanıyor

println("tomtom"); // konsolda yazdır

} else if (list[0].equals("3")) { //Kazaya çarparsanız

crash.play();//Çökme sesini çal

resim(img5, 0, 80); //Ekranda çökme yanıyor

println("çarpma"); // konsolda yazdır

} else if (list[0].equals("4")) { //eğer bombayı vurursanız

bombo.play();//Bombo sesi çal

resim(img6, 0, 80); //Bombo ekranda yanıyor

println("bombo"); // konsolda yazdır

}

}

}

}

Adım 4: İnşa Edin

İnşa et
İnşa et
İnşa et
İnşa et
İnşa et
İnşa et
İnşa et
İnşa et

Prototipin gerçekleştirilmesi için elimizdeki

süreci basitleştirmek için günlük öğeleri kullandı, ancak her zaman işlevsellik ve iyi bir sonuç arıyordu.

İlk adım, kabloları piezoelektriğe kaynaklamak, bunları pili masaya ya da pratik yapmaya gittiğimiz yere yerleştirirken özgürlüğe sahip olmak için yeterli uzunlukta kesmekti.

Biraz araştırmadan sonra, tahta veya plastik gibi malzemelerin atılması için pedin her darbenin titreşimini piezoelektriğe en uygun şekilde iletmesinin önemli olduğunu gözlemledik. Son olarak konservelerde işlevine uygun ve amacına uygun bir görünüme sahip metal kapaklar kullanmayı tercih ettik.

Bagetlerle denendiğinde ve beklendiği gibi, darbeler çok gürültülüydü ve sessiz davulların çözümünden uzaklaştı. Bunu çözmek için, yüzeyi, kapağın orta çevresinin boyutlarına kesilmiş bir Eva köpüğü ile kaplıyoruz. Oynarken rölyefin fark edilmemesi için yeterince ince çift taraflı bantla yapıştırılmıştır. Ayrıca kapakların kenarları hala rahatsız edici bir ses çıkararak rahatça oynamamızı engellediği için, pedin kaymasını önlemek ve her darbeyi mümkün olduğunca yumuşatmak için kenara birkaç küçük damla hotmelt yapıştırıcı koyduk.

Dokunurken dört pedin dağılmasını önlemek için, yandan giren dişli bir çubukla içten küçük bir somunla sabitlenerek çiftler halinde birleştirdik. Çalmaya başladığımızdaki sorun, metalik bir malzeme olduğu için titreşimleri bir pedden diğerine iletmesiydi, bu yüzden birini çaldığımızda eşi aynı anda ses çıkardı.

Sonunda çubukları çıkardık ve piezo kablonun kendisini bir rakor olarak kullanmanın yeterli ve hatta daha pratik olduğunu gördük.

Pedala gelince, piezoyu bir sandviç arasında tutmak gibi bir fikrimiz vardı; Piezo'nun zemine doğrudan etkisinden kaçınmak için. Bunu yapmak için piezoyu tahta bir plaka üzerine yapıştırdık ve aynı boyutta başka bir PVC plakayı yapıştırdık, buna hem piezoyu hem de kabloyu kolaylaştıran ve barındıran küçük bir çatlak yaptık.

İlk başta her iki plaka için de PVC kullandık, ancak birkaç testten sonra bu malzemenin çok fazla darbe emdiğini ve piezoya ilettiğini fark ettik.

Adım atarken pedalın gevşemesini ve hareket etmesini önlemek için, pedalı ayağımıza tutacak ve her vuruşta tamburda olmasını sağlayacak şekilde sandviç arasına bir lastik bant yerleştirmeye karar verdik.

Son olarak, daha iyi bir sonuç elde etmek için kendimize protoboard ve arduinoyu barındıran küçük bir kutu yaptık. Burası 5 kablonun bir taraftan girdiği ve diğer taraftan USB kablosunun bağlanmasına izin verdiği yerdir. Kolay kullanımı ve tüm prototipin siyah beyaz estetiğiyle devam etmesi için siyah tüy kartona monte edilmiştir.

Önerilen: