Сделаем музыкальный инструмент из магнитофона. | ВесьТоп создание и продвижение сайтов

Поддержка сайта

Высокие позиции в поисковой системе, на прямую зависят от развития вашего сайта.

Продвижение сайтов

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

Создание сайтов

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

Сделаем музыкальный инструмент из магнитофона.

Сделаем музыкальный инструмент из магнитофона.

Мне очень нравятся необычные музыкальные проекты. Например, я сделал музыкальный альбом на основе записей, сделанных НАСА во время миссии «Аполлон-12». А недавно, чтобы контролировать темп музыки, я использовал свое сердцебиение.

Недавно я превратил старый кассетный плеер, похожий на Sony Walkman, в синтезатор, управляемый с помощью команд MIDI. Мне нужна была плата Arduino и немного кода. То, что получается, смело можно назвать «кассетным синтезатором».

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

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

Создание кассетного синтезатора

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

Компоненты
  • Кассетный плеер модели GE 3-5362A. Цена этих плееров на eBay составляет 15 долларов, предлагая не только маленькие плееры, но и более крупные кассетные плееры.
  • Arduino (23 доллара)
  • Цифро-аналоговый преобразователь MCP4725 (11 долларов США)
  • Аудиокабель 3,5 мм с разъемом на одной стороне и только проводами на другой
  • Обычные соединительные провода. Если у вас его нет, вы можете купить один из наборов за 5 долларов.
  • Паяльник и все необходимое для пайки. Комплект стоит 25 долларов, но пользоваться им можно всю жизнь.
Модификация плеера GE 3-5362A

Обратите внимание, что использовать проигрыватель GE 3-5362A необязательно. Подойдет любой кассетный или кассетный проигрыватель с переменной скоростью воспроизведения.

Чтобы открыть маленький плеер — достаточно открутить болты и постараться не порвать провод, идущий от одной половины устройства к другой.

Сделаем музыкальный инструмент из магнитофона.

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

Контроль скорости воспроизведения

Найдите в коробке колесо воспроизведения с переменной скоростью. Рядом с ней припаяем пару проводов. Лично я предпочитаю использовать красный для «плюса» и коричневый или зеленый для «минуса». Итак, припаиваем красный провод к контактной площадке VS +, а другой — к контактной площадке прямо рядом с B +:

Сделаем музыкальный инструмент из магнитофона

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

Припаиваем провода к Линии

Теперь нам нужно найти контактные площадки MIC- и MIC +, к которым припаяны красный и черный провода микрофона. Мы можем удалить эти провода напрямую и припаять аудиокабель к освободившимся местам — красный к MIC + и черный к MIC-.

Сделаем музыкальный инструмент из магнитофона.

Записываем монотонный звук ленты

Теперь мы можем вставить ленту в плеер и записать нужный звук через Line in. Можно написать любую заметку, но я рекомендую начинать с примечания «к». Запись должна быть достаточно длинной — минут 30 или около того. Необходимо записать только один тон, высоту которого мы будем контролировать, изменяя скорость воспроизведения записи.Сделаем музыкальный инструмент из магнитофона.

Подготовка Arduino к использованию в качестве интерфейса MIDI

Мы используем Arduino в качестве посредника между интерфейсом MIDI и цифро-аналоговым преобразователем, который служит для соответствующего изменения напряжения. MIDI-клавиатура подключена к компьютеру. Сигналы клавиатуры принимаются программой, работающей в середине веб-браузера Chrome. Он обращается к серверу, который отправляет необходимые данные об изменении напряжения на Arduino, а Arduino отправляет эти сигналы на ЦАП, который фактически контролирует скорость воспроизведения плеера.

Сделаем музыкальный инструмент из магнитофона

Первоначально необходимо подключить MCP4725 к Arduino согласно схеме, показанной выше. MCP4725 — это цифро-аналоговый преобразователь, которым можно управлять с помощью Arduino. Контактная площадка OUT ЦАПа должна быть подключена к красному проводу, который мы припаяли к плееру. Другой провод от плеера должен быть подключен к GND Arduino.

Код, который позволяет компьютеру взаимодействовать с Arduino, обменивается данными с устройством, отправляя ему информацию о том, как изменить напряжение. . Вот сам код:

#включают lt; Wire.hgt; #включают lt; Adafruit_MCP4725.hgt;
Adafruit_MCP4725 цап; Строка sdata = ""; // Ничего не инициализировано. bool start = false; void srcup (void) {Serial.begin (9600);
// Для Adafruit MCP4725A1 адрес 0x62 (по умолчанию) или 0x63 (вывод ADDR привязан к VCC) // Для MCP4725A0 адрес 0x60 или 0x61 // Для MCP4725A2 адрес 0x64 или 0x65 dac.begin (0x62); pinMode (2, ВЫХОД); pinMode (3, ВЫХОД);
Serial.println ("Начать"); }
недействительный цикл (недействительный) {если (началось == ложь) {началось = истина; dac.srcVoltage (0, 1); digitalWrite (2, LOW); digitalWrite (3, LOW); } byte ch; если (Serial.available ()) {ch = Serial.read (); sdata + = (char) ch; если (ch == ‘п’) {sdata.trim (); если (sdata.indexOf ("напряжение") gt; -1) {sdata.remove (0, 7); float newVal = sdata.toFloat (); // напряжение src float newVoltage = round (910.0 * newVal); if (newVoltage gt; 4095) {newVoltage = 4095; } uint16_t newVolts = uint16_t (newVoltage); dac.srcVoltage (newVolts, 1); Serial.print ("вольт: "); Serial.println (newVolts); } else {Serial.println ("?"); } sdata = ""; }}}

Сервер для отправки команд на Arduino

Для управления Arduino можно использовать очень простой сервер, который отправляет изменения напряжения на плату. Код можно взять отсюда. Golang потребуется для работы сервера. Вот как запустить сервер:

$ git clone https://github.com/schollz/tape-synth $ cd tape-synth $ go build $ ./tape-synth -com ARDUINOCOM

Если вы используете Linux, вам нужно будет использовать команду sudo для организации работы с USB-портом. ARDUINOCOM — это COM-порт для платы Arduino, подключенной к компьютеру через интерфейс USB. В Windows это обычно COM4.

Веб-страница index.html используется для управления сервером. Чтобы открыть его в Chrome, вам нужно посетить адрес localhost: 8080. Затем мы можем включить MIDI-клавиатуру и отправлять команды на Arduino. Напомним, что Chrome — самый популярный браузер, поддерживающий MIDI. 

Начало

Чтобы иметь возможность играть на этом синтезаторе кассет, нам нужно запустить сервер, включить MIDI-клавиатуру и перейти с помощью Chrome на localhost: 8080. Теперь можно включить магнитолу и играть! Однако нота, которую мы нажимаем на MIDI-клавиатуре, должна точно воспроизводиться игроком.

Настройка синтезатора

Итак, мы имеем дело с механической системой, которая изменяет частоту звука, изменяя скорость ленты. А это значит, что наш синтезатор нуждается в настройке. Для этого откройте файл index.html и отредактируйте свойства объекта VoltageMap. Для каждой ноты мы должны установить необходимое напряжение (от 0 до 3).

var VoltageMap = { "C": 0, "C #": 0,7, "D": 0.9, "D #": 1.2, "E": 1.4, "F": 1,62, "F #": 1.85, "г": 2.25, "Г #": 2.6, "А": 3.0, "A #": 0, "B": 0,}

Это!

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

Читайте так же:
Not found

Нам доверяют

Интернет магазин