OP-1 на arduino

Dasercom Close
Offline
Зарегистрирован: 16.01.2020

Приветствую форумчане.

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

Это спецификации OP-1. Ну или чему мы должны научить arduino.

Синтезатор и контроллер
8 встроенных типов синтеза, разнообразные эффекты, LFO и несколько уникальных секвенсоров готовы к вашему исследованию! Используйте 4 вращаемых регулятора и 8 x 2 специальные кнопки для быстрого вызова функций.

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

Всё в одном компактном устройстве
OP-1 – это портативный синтезатор, семплер и контроллер. Данное устройство обладает дополнительными функциями, такими как встроенный FM приемник и назначаемый на различные функции G-Force сенсор-контроллер (сенсор положения в пространстве). При помощи функции встроенного ленточного магнитофона мы можете записывать все, что вы делаете на 4-ре дорожки, с возможностью  перезаписи или записи в обратном направлении.

Легкий обмен данными
Когда OP-1 подключен к pc при помощи USB интерфейса, он отображается как устройство хранения данных. Он готов к получению и передаче аудио файлов. 4 дорожки ленточного магнитофона также доступны вам для редактирования в виде семплов.

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

wdrakula
wdrakula аватар
Offline
Зарегистрирован: 15.03.2016

бери контроллер со встроенным I2s, например STM23 и в путь. Только все это гораздо проще сделать на одноплатнике типа малинки-апельсинке. Просто написать на любимом языке, какой знаешь.

Но если тебе просто ради левел ап и прочего скилл импрувмент интересно на ардуино, то 4 канала нормального звука одновременно не вытянет стандартный АЦП AVR контроллера. Так что уточняй - что тебе важнее: использование классической ардуинки или хотелки по устройству. Возможен компромисс: Ардуино Дуе практически то же, что и STM23 (только в разы дороже).

Dasercom Close
Offline
Зарегистрирован: 16.01.2020

Конечно хотелки. Сразу шёл с мыслью, что мой проект полностью перевернут. И думал ставить, как контроллер Arduino MKR Zero. А есть какие либо предположения, к примеру, как поддерживать 4 канала и запись на каждый из них своего звука? Да и вообще, что делать с памятью SD карту пихать? Её категорически не хватает. Ещё как насчёт модуля APR33A3, как рекордера?

andriano
andriano аватар
Offline
Зарегистрирован: 20.06.2015

1. "Можно ли повторить?" Теоретически - можно, но это ОЧЕНЬ дорого. Так что если Ваша фамилия не Абрамович, то можно констатировать - для Вас невозможно. Самая дорогая часть, естественно, тот софт, который будет залит в контроллер.

2. Начинать проектирование сложного микроконтроллерного устройства с клавиатуры - это примерно как начинать проектировать автомобиль, начиная с рисунка обивки салона.

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

Если интересно, почитайте, как по мере продвижения менялся подход, в частности, к используемым аппаратным средствам http://arduino.ru/forum/proekty/analog-analogovogo-sintezatora

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

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

Dasercom Close
Offline
Зарегистрирован: 16.01.2020

Насчёт кода можете не волноваться, пишу программы под Java, C#, C++ ещё года так с 14. Думаю там проблем особых не возникнет. 

Начинать с кнопок, да не лучшая идея. НО начинать с чего-то надо, притом увлечение к arduino, как к механизму, который способен сделать "ВСЁ" появился не давно. Потому у меня первым делом возник вопрос, а как уместить 54 кнопки в проекте, ну идея не нова берёшь и делаешь клавиатуру.

В проекте я вообще не рассматриваю MIDI, он попросту не нужен и не входит в мои планы, достаточно будет AUX разъема и усилитель для вывода звука. Затем в своём проекте вы генерировали ноты в программной части arduino. В моём случае, я хочу научить arduino не генерировать, а воспроизводить, получается таким образом всё выходит к recorder'у способному выводить записанную на него заранее заготовленную дорожку звуков, это уже станет более похожим на drumpad нежели на полноценный синтезатор, в синтезаторе нужно учитывать давление на клавишу и время нажатия, хотя и это тоже можно завести в проект, но уже позже.

"Теоретически - можно, но это ОЧЕНЬ дорого." - не задумывайтесь о деньгах мой друг, всему всегда можно найти замену, а иной раз и сделать самому. Ну и AliExpress жив ещё не будем хоронить его вместе с ситуацией в Китае. Да и пока мы даже не добрались до середины теории, чтобы переходить к практике. 

В моих размышлениях составить схему, которая научит играть 24 кнопки музыку, которую на неё запишет плата с SD карты или с aux разъема. Решение брать recorder мне показалась самая удачная идея, но пока что я не находил 24 канального recoder'а, видел только 8-канальный - APR33A3. Хотя если за мозг синтезатора поставить Raspberry Pi Zero v1.3, то можно просто обойтись одним считывателем звука. Так что пока я додумываю, как научить её слушать.

В конце можно будет заказать печатную плату у китайцев, а на ней уже всё и распаивать заранее приготовленную схему. 

DetSimen
DetSimen аватар
Offline
Зарегистрирован: 25.01.2017

Dasercom Close пишет:

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

Ты даже не прецтавляешь, как жестоко ты ашыбаешься. 

Dasercom Close
Offline
Зарегистрирован: 16.01.2020

Не думаю, поставлю raspberry pi zero и уж на linux написать программу, под управлением Java будет проще, чем писать чисто под arduino. 

sadman41
Offline
Зарегистрирован: 19.10.2016

Тогда сразу USB-клавиатуру подключай к линупсу и не мохнать ардуину.

andriano
andriano аватар
Offline
Зарегистрирован: 20.06.2015

Dasercom Close пишет:

В моём случае, я хочу научить arduino не генерировать, а воспроизводить, получается таким образом всё выходит к recorder'у способному выводить записанную на него заранее заготовленную дорожку звуков, это уже станет более похожим на drumpad нежели на полноценный синтезатор,

Где-то мне попадался скетч воспроизведения wav файла с SD карты при помощи Arduino Due. Думаю, его можно было бы взять за основу. При этом он работал со стандартной ФС. Если же придумать свою ФС, оптимизированную под имеющуюся задачу, думаю, можно добиться приемлемой работы с большим количеством одновременно читаемых каналов.

Цитата:

"Теоретически - можно, но это ОЧЕНЬ дорого." - не задумывайтесь о деньгах мой друг, всему всегда можно найти замену, а иной раз и сделать самому. Ну и AliExpress жив ещё не будем хоронить его вместе с ситуацией в Китае. Да и пока мы даже не добрались до середины теории, чтобы переходить к практике. 

А я, собственно, деньги никак и не упоминал. "Дорого" - это не в смысле денег, а в смысле трудозатрат (впрочем, по Марксу это практически одно и то же).

Мне представляется трудоемкость разработки упомянутого синтезатора где-то в десятки-сотни человеко-лет. Можно, конечно, запланировать ближайшие 200-300 лет своей жизни на то, чтобы повторить OP-1, но вряд ли это можно считать целесообразным.