Оглавление:

Студийные барабаны: 5 шагов
Студийные барабаны: 5 шагов

Видео: Студийные барабаны: 5 шагов

Видео: Студийные барабаны: 5 шагов
Видео: Cамый первый урок на барабанах | уроки барабанов для начинающих. 2024, Июль
Anonim
Студийные барабаны
Студийные барабаны

Барабанщики часами репетируют… Но не у всех может быть барабан дома: пространство и шум - большая проблема!

По этой причине мы хотели создать портативную ударную установку беззвучно, на которой вы могли бы играть дома.

Эта ударная установка очень проста в использовании, вам просто нужно ударить по пэдам, и она будет звучать как настоящий барабан! Он также оснащен дисплеем, на котором вы можете увидеть, по какой пэду вы бьете. А если вы хотите использовать его в режиме тишины, просто подключите наушники к ноутбуку!

Шаг 1. Что вам понадобится

МАТЕРИАЛ

  • Ардуино Уно
  • Макетная плата
  • Какой-то провод
  • 5x пьезо
  • 5 резисторов по 1 МОм
  • 5 крышек для банок
  • Пена ева
  • Пенопластовая панель

ПРОГРАММЫ:

  • IDE Arduino
  • Обработка

* Чтобы загрузить указанные выше программы на свой компьютер, перейдите по ссылкам ниже:

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

Шаг 2: соберите схему

Собрать схему
Собрать схему
Собрать схему
Собрать схему

Прежде всего, нам нужно припаять к пьезоэлементам (GND к желтой части и аналоговый контактный провод к белой части пьезо).

Мы будем использовать макетную плату, чтобы все соединить.

Подключите резистор и провода пьезоэлектрического преобразователя, как показано на схеме выше. Затем подключите провод GND макета к GND на Arduino. Наконец, подключите каждый провод пьезо к аналоговому выводу на Arduino, как показано ниже.

Пьезо подключены к аналоговым контактам:

  • Caixa = A0;
  • Чарльз = A1;
  • Tomtom = A2;
  • Авария = A3;
  • Бомбо = А4;

Шаг 3: запрограммируйте

Запрограммируйте это
Запрограммируйте это

Мы решили создать собственное отображение ударной установки вместо использования предустановленной программы. Мы использовали для этого обработку.

Мы запрограммировали его так, что при ударе по пьезоэлементу будет звучать звук соответствующего барабана. Кроме того, на экране загорится соответствующий рисунок ударных.

Вам нужно будет импортировать звук обработки и библиотеки последовательной обработки.

Не забудьте добавить звуки ударных в папку с данными!

КОД АРДУИНО

// ПЬЕЗОНЫ ПОДКЛЮЧАЮТСЯ К АНАЛОГОВЫМ ШТИФТАМ

const int caixa = A0;

const int charles = A1;

const int tomtom = A2;

const int crash = A3;

const int bombo = A4;

const int threshold = 100; // пороговое значение для определения того, является ли обнаруженный звук стуком или нет

// ПРОЧИТАЙТЕ И СОХРАНЯЙТЕ ЗНАЧЕНИЕ, ПОКАЗЫВАЕМОЕ С ШТИФТА ДАТЧИКА

int caixaReading = 0;

int charlesReading = 0;

int tomtomReading = 0;

int crashReading = 0;

int bomboReading = 0;

void setup () {

Serial.begin (9600); // используем последовательный порт

}

void loop () {

// считываем датчик и сохраняем его в переменной sensorReading:

caixaReading = analogRead (caixa);

// если показание датчика больше порога:

if (caixaReading> = threshold) {

// ЕСЛИ ВЫ НАПАДАЛИ НА CAIXA, ОТПРАВИТЕ 0 НА ОБРАБОТКУ

Serial.print ("0,");

Serial.println (caixaReading);

}

charlesReading = analogRead (charles);

if (charlesReading> = threshold) {

// ЕСЛИ ВЫ НАПАДАЛИ ЧАРЛЬЗА, ОТПРАВИТЕ 1 НА ОБРАБОТКУ

Serial.print ("1,");

Serial.println (caixaReading);

}

tomtomReading = аналоговое чтение (tomtom);

if (tomtomReading> = threshold) {

// ЕСЛИ ВЫ НАБИРАЕТЕ CAIXA, ОТПРАВИТЕ 2 НА ОБРАБОТКУ

Serial.print ("2,");

Serial.println (tomtomReading);

}

crashReading = analogRead (сбой);

if (crashReading> = threshold) {

// ЕСЛИ ВЫ НАПАДАЛИ НА CAIXA, ОТПРАВИТЕ 3 НА ОБРАБОТКУ

Serial.print ("3,");

Serial.println (аварийное чтение);

}

bomboReading = аналоговое чтение (бомбо);

if (bomboReading> = 15) {

// ЕСЛИ ВЫ НАБИРАЕТЕ CAIXA, ОТПРАВИТЕ 4 В ОБРАБОТКУ

Serial.print ("4,");

Serial.println (bomboReading);

}

задержка (10); // задержка, чтобы избежать перегрузки буфера последовательного порта

}

КОД ОБРАБОТКИ

// ИМПОРТ ЗВУКОВЫХ И ПОСЛЕДОВАТЕЛЬНЫХ БИБЛИОТЕК

импорт processing.sound. *;

import processing.serial. *;

Последовательный myPort; // Создаем объект из серийного класса

String val; // Данные, полученные из последовательного порта

// ЗВУКИ БАРАБАНА

SoundFile caixa;

SoundFile charles;

SoundFile tomtom;

Сбой SoundFile;

SoundFile bombo;

// ИЗОБРАЖЕНИЯ СТУДИИ БАРАБАНОВ

PImage img0;

PImage img1;

PImage img2;

PImage img3;

PImage img4;

PImage img5;

PImage img6;

// ПЕРЕМЕННЫЕ ВОЛНЫ DRUMS STUDIO

float n = 0;

float n2 = 1;

float n3 = 2;

float n4 = 3;

float n5 = 4;

float y = 0;

float y2 = 1;

float y3 = 2;

float y4 = 3;

float y5 = 4;

установка void ()

{

// ОТКРЫТЬ ЛЮБОЙ ПОРТ, КОТОРЫЙ ВЫ ИСПОЛЬЗУЕТЕ

Строка portName = Serial.list () [0]; // меняем 0 на 1 или 2 и т. д. в соответствии с вашим портом

myPort = новый последовательный порт (this, portName, 9600);

// DRUMS STUDIO CONSOLA

размер (720, 680);

фон (15, 15, 15);

strokeWeight (2);

// ЗАГРУЗИТЬ ИЗОБРАЖЕНИЯ СТУДИИ БАРАБАНА

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

// ЗАГРУЗИТЬ ЗВУКИ

caixa = новый звуковой файл (это "caixa.aiff");

charles = новый звуковой файл (это "charles.aiff");

tomtom = новый звуковой файл (this, «tomtom.aiff»);

crash = новый звуковой файл (это "crash.aiff");

bombo = новый звуковой файл (это, "bombo.aiff");

}

недействительная ничья ()

{

// TITULO DRUMS STUDIO

изображение (img0, 125, 0);

// РИСУНОК ВОЛНЫ

if (y> 720) // Снова запускаем волны

{

у = 0;

y2 = 1;

y3 = 2;

y4 = 3;

y5 = 4;

}

заполнить (0, 10);

rect (0, 0, ширина, высота);

// Dejamos fill a blanco para

// dibujar la bola

заполнить (255);

ход (250, 255, 3);

точка (y, (высота-40) + sin (n) * 30);

п = п + 0,05;

у = у + 1;

ход (250, 255, 3);

точка (y2, (высота-40) + cos (n2) * 30);

п2 = п2 + 0,05;

у2 = у2 + 1;

ход (250, 255, 3);

точка (y3, (высота-40) + sin (n3) * 30);

n3 = n3 + 0,05;

у3 = у3 + 1;

ход (250, 255, 3);

точка (y4, (высота-40) + cos (n4) * 30);

n4 = n4 + 0,05;

у4 = у4 + 1;

ход (250, 255, 3);

точка (y5, (высота-40) + sin (n5) * 30);

n5 = n5 + 0,05;

у5 = у5 + 1;

// DIBUJO BATERIA SIN NINGUNA PARTE ILUMINADA

изображение (img1, 0, 80);

// ВЫПОЛНЯЙТЕ ВЫВОДЫ ДЛЯ КАЖДОГО ВХОДА

если (myPort.available ()> 0)

{// Если данные доступны, val = myPort.readStringUntil ('\ n'); // читаем и сохраняем в val

println (val);

Строка список = разделить (val, ','); // Открываем список для получения каждого входного значения

если (список! = ноль)

{

if (list [0].equals ("0")) {// если вы нажмете caixa

caixa.play (); // Воспроизвести звук caixa

image (img2, 0, 80); // Caixa подсвечивается на экране

println ("caixa"); // распечатать в консоли

} else if (list [0].equals ("1")) {// если вы попали в чарт

charles.play (); // Воспроизвести звук Чарльза

image (img3, 0, 80); // Знаки подсвечиваются на экране

println ("charles"); // распечатать в консоли

} else if (list [0].equals ("2")) {// Если вы ударите томтом

tomtom.play (); // Воспроизвести звук томта

image (img4, 0, 80); // Tomtom подсвечивается на экране

println ("томтом"); // распечатать в консоли

} else if (list [0].equals ("3")) {// Если вы попали в аварию

crash.play (); // Воспроизвести звук сбоя

изображение (img5, 0, 80); // Сбой подсвечивается на экране

println ("сбой"); // распечатать в консоли

} else if (list [0].equals ("4")) {// если вы попали в бомбу

bombo.play (); // Воспроизвести звук бомбо

изображение (img6, 0, 80); // Бомбо подсвечивается на экране

println ("бомба"); // распечатать в консоли

}

}

}

}

Шаг 4: Создайте это

Построить это
Построить это
Построить это
Построить это
Построить это
Построить это
Построить это
Построить это

Для реализации прототипа у нас есть

использовали повседневные элементы, чтобы упростить процесс, но всегда добивались функциональности и хорошей отделки.

Первым шагом было приварить кабели к пьезоэлектрику, отрезав их на достаточную длину, чтобы можно было свободно размещать батарею на столе или там, где мы идем на тренировку.

После некоторых исследований мы заметили, что важно, чтобы подушка оптимально передавала вибрацию каждого удара пьезоэлектрику, поэтому такие материалы, как дерево или пластик, были отброшены. Наконец, мы решили использовать металлические крышки для консервов, которые соответствуют своему назначению и имеют соответствующий внешний вид.

Пробуем с палочками и, как и ожидалось, удары оказались слишком шумными и отдалились от решения тихих барабанов. Чтобы решить эту проблему, покрываем поверхность пеной Eva, вырезанной по размерам центральной окружности крышки. Он проклеен двусторонним скотчем достаточно тонким, чтобы при игре рельеф не был заметен. Кроме того, поскольку край крышек по-прежнему издавал раздражающий шум, который мешал нам комфортно играть, мы нанесли несколько маленьких капель термоклея на край, чтобы предотвратить скольжение пэда и максимально смягчить каждый удар.

Чтобы четыре колодки не разошлись при соприкосновении, мы соединили их попарно с помощью резьбовой планки, входящей сбоку, закрепленной изнутри небольшой гайкой. Проблема, когда мы начали играть, заключалась в том, что, поскольку это был металлический материал, он передавал вибрации от одного пэда к другому, поэтому, когда мы играли на одном, его партнер звучал одновременно.

Наконец, мы удалили стержни и увидели, что достаточно и даже более практично использовать сам пьезокабель в качестве соединения.

Что касается педали, у нас была первоначальная идея держать пьезо между бутербродом; чтобы избежать прямого удара пьезоэлемента о землю. Для этого мы приклеили пьезоэлемент к деревянной пластине и приклеили еще одну пластину из ПВХ того же размера, на которой мы сделали небольшую трещину, облегчающую и подходящую как для пьезо, так и для кабеля.

Сначала мы использовали ПВХ для обеих пластин, но после нескольких тестов мы поняли, что этот материал поглощает слишком много ударов и передает их на пьезоэлемент.

Чтобы педаль не болталась и не двигалась при шаге, мы решили поместить между бутербродом резиновую ленту, чтобы педаль прижималась к нашей ноге и обеспечивала каждый удар по барабану.

Наконец, чтобы добиться лучшей отделки, мы сами построили небольшую коробку, в которой размещались макетная плата и Arduino. Здесь 5 кабелей проходят через одну сторону и позволяют подключать USB-кабель через другую. Он выполнен из черного перьевого картона для простоты использования и сохранения черно-белой эстетики всего прототипа.

Рекомендуемые: