Сенсорный интерактивный музыкальный инструмент (играем на фруктах, воде и т.д.)
Не хотите попробовать сыграть мелодию на бананах, помидорах, огурцах? А на воде или лимонаде? С помощью этого устройства можно сыграть мелодию практически на любой токопроводящей поверхности. Давайте посмотрим небольшой видесюжет. Интересно? А теперь давайте последуем за автором этой самоделки, и он нам расскажет, как собрать такое устройство.
Инструменты и материалы: -Arduino UNO R3; -Провода; -Зажимы типа «крокодил»; -Паяльные принадлежности; -Резисторы 1 МОм — 6 шт; -Термоусадочная трубка; -Ноутбук;
Шаг первый: теория Работает все следующим образом. Сенсорные датчики подключаются к токопроводящим предметам. Вторым концом датчики подключаются к Ардуино. Ардуино принимает сигнал, и передает на ноутбук, на котором сигнал обрабатывается и воспроизводиться нота.
Шаг второй: сборка сенсорных датчиков Теперь нужно собрать сенсорные датчики. Для проекта их нужно 6 штук.
Припаивает черный провод к зажиму. Припаивает к черному проводу, в одной точке, красный провод и резистор 1МОм. К другому концу резистора припаиваем черный провод. К концу красного провода припаиваем штифт.
Черный провод является отрицательным полюсом датчика, и он будет подключатся к заземляющему контакту Arduino, красный провод — это положительный полюс датчика, и он будет подключатся к аналоговому входному контакту Arduino.
Сенсорный датчик готов. Соединения нужно заизолировать изолентой или термоусадочной трубкой. Мастер советует использовать провода длинной около 2-х метров.
Таким методом нужно собрать шесть датчиков. Затем нужно минусовые контакты датчиков соединить вместе и нарастить отдельным проводом со штифтом на конце.
Получаем такую схему.
Шаг третий: подключение к Ардуино Дальше нужно подключить датчики к Ардуино. Положительные выходы Датчик 1 В ARDUINO Аналоговый вход 0 Датчик 2 В ARDUINO Аналоговый вход 1 Датчик 3 В ARDUINO Аналоговый вход 2 Датчик 4 В ARDUINO Аналоговый вход 3 Датчик 5 В ARDUINO Аналоговый вход 4 Датчик 6 В ARDUINO Аналоговый вход 5 Отрицательный выход к GND Ардуино
Шаг четвертый: корпус Для датчиков и для Ардуино мастер спроектировал и напечатал корпуса. Скачать файлы для печати можно ниже.
Для Ардуино. Любой из трех моделей для датчиков. Модель 1 Модель 2 Модель 3
Шаг пятый: код и программное обеспечение В следующем шаге нужно установить программы. Arduino IDE (необходимое программное обеспечение для программирования платы Arduino Sensor ReTouch) Библиотека Midi и библиотека для емкостного сенсора (две дополнительные библиотеки для программного обеспечения Arduino) Hairless MID (это программное обеспечение способно конвертировать последовательные данные в данные Midi) Любое программное обеспечение для создания музыки или VST (виртуальный инструмент), способный получать данные Midi. Мастер рекомендует следующие программы: Apple Logic Ableton Live Fruity Loops Audiomulch Steinberg Cubase Или симуляторы: Native instrument FM8 Native instrument BATTERY Native instrument KONTAKT Native instrument AKOUSTIK PIANO Разархивируйте и установите Arduino IDE. Затем подключите Sensor ReTouch к компьютеру через USB. Дважды щелкните значок Arduino, чтобы запустить приложение. После того, как вы откроете программное обеспечение, перейдите на верхнюю панель и выберите вкладку «Tools», чтобы открыть небольшое меню, прокрутите это меню, пока не достигнете «Модель Arduino», выберите модель платы Arduino.
Снова перейдите на верхнюю панель и выберите «Tools», прокрутите меню до «Serial Port», и выберите /dev/cu.usbmodem3d11. Теперь нужно установить все библиотеки.
Откройте архивы «Arduino-libraries-CapacitiveSensor.zip» и «Arduino_MIDI_Library_v4.2.zip». Откройте окно Arduino IDE, и на верхней вкладке выберите “Sketch“. Прокрутите мышью до Include Library> Add Library и установите библиотеки. По той же схеме добавьте библиотеки «Capacitive Sensor», и “MIDI Library”.
Затем устанавливает на Ардуино код: #include #include MIDI_CREATE_DEFAULT_INSTANCE(); const int sensorPin1 = A0; int sensorValue1 = 0; int threshold1 = 100; const int sensorPin2 = A1; int sensorValue2 = 0; int threshold2 = 100; const int sensorPin3 = A2; int sensorValue3 = 0; int threshold3 = 100; const int sensorPin4 = A3; int sensorValue4 = 0; int threshold4 = 100; const int sensorPin5 = A4; int sensorValue5 = 0; int threshold5 = 100; const int sensorPin6 = A5; int sensorValue6 = 0; int threshold6 = 100; int note1 = 60; int note2 = 62; int note3 = 64; int note4 = 65; int note5 = 67; int note6 = 69; //Control 16 = general purpose int cc = 16; //Setup: void setup(){ //Start midi connection MIDI.begin(); //Serial connection 115200 for Hairless MIDI Serial.begin(115200); analogRead(sensorPin1 == 0); analogRead(sensorPin2 == 0); analogRead(sensorPin3 == 0); analogRead(sensorPin4 == 0); analogRead(sensorPin5 == 0); analogRead(sensorPin6 == 0); } //Loop: void loop(){ if ( analogRead(sensorPin1) >= threshold1) { MIDI.sendNoteOn(note1,127,1); } else{ MIDI.sendNoteOff(note1,0,1); } if ( analogRead(sensorPin2) >= threshold2) { MIDI.sendNoteOn(note2,127,2); } else{ MIDI.sendNoteOff(note2,0,2); } if ( analogRead(sensorPin3) >= threshold3) { MIDI.sendNoteOn(note3,127,3); } else{ MIDI.sendNoteOff(note3,0,3); } if ( analogRead(sensorPin4) >= threshold4) { MIDI.sendNoteOn(note4,127,4); } else{ MIDI.sendNoteOff(note4,0,4); } if ( analogRead(sensorPin5) >= threshold5) { MIDI.sendNoteOn(note5,127,5); } else{ MIDI.sendNoteOff(note5,0,5); } if ( analogRead(sensorPin6) >= threshold6) { MIDI.sendNoteOn(note6,127,6); } else{ MIDI.sendNoteOff(note6,0,6); } //50ms space delay(53); } Этот код для Windows. Для Apple OSX код можно загрузить здесь.
Шаг шестой: настройка Далее нужно включить программное обеспечение MIDI и Аудио программу. Мастер показывает настройку на программе Loop MIDI. После установки панель конфигурации Loop MIDI пустая. Щелкните PLUS в нижней части панели, и в списке программ появится новый коммуникационный порт Midi, классифицированный как « loopMIDI Port » или «loopMIDI Port 1».
Запустите Ableton LIVE. Затем выберите LIVE> Preferences. После отображения панели настроек выберите MIDI Sync TAB. Нажмите «Track, Sync and Remote». Порты в колонке INPUT должны стать желтого цвета.
Далее переходим к программе Hairless MID. Введите в окошко t/dev/cu.usbmodem3d11. Затем в « MIDI OUT» и « MIDI IN » установите « Loop MIDI Bus 1». Установите галочку в окошке Debug MIDI messages. Далее перейдите в программу Ableton Live. Откройте любой виртуальный инструмент и понажимайте клавиши. В окошке Hairless MID в строка должна отображаться цифра от 0 до 127, а в динамика должна звучать соответствующая нота. Такие же цифры будут отображаться и при прикосновении к датчикам.
Шаг седьмой: использование устройства Ниже прописаны технические характеристики для каждого датчика. Мастер настроил сенсорные датчики по умолчанию, используя протокол MIDI на 3 ° октавы фортепиано в виде отдельных нот в следующем порядке: Датчик 1; MIDI канал 1 # / MIDI Note C3 Датчик 2; MIDI Channel 2 # / MIDI Note D3 Датчик 3; MIDI канал 3 # / MIDI Note E3 Датчик 4; MIDI канал 4 # / MIDI Note F3 Датчик 5; MIDI Channel 5 # / MIDI Note G3 Датчик 6; MIDI канал 6 # / MIDI Note A3
Для пользования устройством нужно подключить сенсоры к любой токопроводящей поверхности.
Источник (Source)
Становитесь автором сайта, публикуйте собственные статьи, описания самоделок с оплатой за текст. Подробнее здесь.