РадиоКот :: eDrum MIDI box.
Например TDA7294

РадиоКот >Схемы >Цифровые устройства >Игрушки >

Теги статьи: Добавить тег

eDrum MIDI box.

Автор: Bullet, bullet1981@yandex.ru
Опубликовано 03.09.2010
Создано при помощи КотоРед.
2010

В первую очередь, хочется поздравить Кота с пятилетием. Пять лет для человека это конечно не возраст, а для кота, считай пол жизни. Правда с учетом, что у кота девять жизней, то будем надеяться, что еще долгие годы, он будет радовать нас своим существованием. Да и мы будем подкидывать новые идеи, схемы и устройства. Так что долгих лет РадиоКоту и всем его обитателям.
Совершенно случайно узнал о проводимом конкурсе, связанным с юбилеем РадиоКота, и подумал: "Раз уж такое дело, нужно отправить что-нибудь эдакое, чтобы не стыдно было потом коту в глаза смотреть". Где-то год назад, закончил работу над проектом MIDI ударной установки. "Дай, - думаю, - ее и отправлю". Вещь в быту абсолютно бесполезная, но пафосная, как обычно и бывает с подарками. Зато будет чем гостей на празднике развлекать. "Такого точно ни кто не пришлет". Но каково же было мое удивление, когда на странице конкурса я увидел проект электронных ударных. "И тут опередили". Почитав статью, выяснил, что они хоть и электронные и даже ударные, да не такие. А раз не такие, значит и многоуважаемый Кот, не останется без подарка от меня. А что делать с таким количеством ударных, это он пусть сам решает. Так что без претензий на новаторство, представляю вам проект Электронной ударной установки "eDrum MIDI box".

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

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

Смотрится конечно ужасно, но мне просто катастрофически не хватало места, чтобы запихнуть все необходимое:

И так, установка имеет 16 входов, для подключения датчиков и педалей. Опрос входных каналов осуществляется динамически, через 2 микросхемы мультиплексор/демультиплексор 4051. Аналоговый сигнал с пьезо-датчика подается на вход b1, обрабатывается операционным усилителем LM324 и поступает на вход мультиплексора CH1. Переменным резистором регулируется уровень выходного сигнала.

Таких элементов в схеме 15 штук. По чему не 16, спросите вы, да все по тому, что 16 канал, является дискретным, и определяет нажата ли педаль Хай-хета или нет.
С выхода мультиплексора, сигнал подается на вход АЦП микроконтроллера, где он обрабатывается, и формируется соответствующее midi-сообщение.

Подключается установка к компьютеру через COM-порт. Конечно, есть возможность подключить на прямую к midi-порту, но в современных компьютерах, midi-порт изжил себя как класс, по этому я даже не стал себя утруждать рисованием на схеме отдельного выхода midi. СОМ-порт правда тоже присутствует далеко не на каждом новом компьютере, но заменив микросхему МАХ232 на FTD232, установку можно подключить и через USB. Как это делается, надеюсь объяснять не нужно. Так же для работы устройства, потребуется установить YAMAHA CBX Driver.

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

Сразу оговорюсь, я больше программист, чем электронщик и всевозможная аналоговая техника для меня темный лес, по этому не ручаюсь за то, что рожденная мной схема является оптимальной в данной ситуации, но при симуляции в протеусе, все работает без замечаний. Сигнал с выхода мультиплексора поступает на вход TRAN1 и с выхода LED_1 подается на светодиод. Конденсатор обеспечивает нужную нам задержку свечения. Что касается номиналов резисторов и конденсатора, боюсь, их придется подбирать опытным путем.
Питается устройство от 12V источника питания и в своей схеме имеет цепи с напряжением 5 и 8 вольт. Схема включения стабилизаторов напряжения ниже.

На этом думаю со схемами закончим. Файл проекта в протеусе прилагается, так что, думаю, с остальным сами разберетесь. Далее поговорим о более приятных вещах. О том, как же все это безобразие должно работать.
После включения устройства, на ЖК дисплее появляется надпись "eDrum MIDI box V 1.0"

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

На второй строке, под номером канала будет отображаться шкала силы удара по соответствующим падам. Под буквой "Р" отображается индикатор состояния педали Хай-хета.
Управляется устройство 6 кнопками: меню, сброс, вверх, вниз, влево и вправо. Как вы могли догадаться, кнопка меню, служит для входа в главное меню устройства. Кнопками вверх и вниз, мы переключаемся между параметрами, а кнопками влево и вправо, меняем значение выбранного параметра. Кнопка сброс, устанавливает все параметры по умолчанию (именно ее нужно нажать при первом запуске устройства, предварительно зайдя в меню). В меню, содержаться следующие параметры:
- Порог шума
- Интервал
- MIDI Канал
- Хай-Хэт педаль
- Хай-Хэт купол
- Хай-Хэт открыт
- Хай-Хэт закрыт
- Бочка
- Рабочий
- Рабочий край
- Том1
- Том2
- Том3
- Креш1 купол
- Креш1 край
- Креш2 купол
- Креш2 край
- Райд купол
- Райд край
- режим
- миди вход
- подсветка
- громкость


Разберем их поподробнее.
Порог шума.

Минимальное значение АЦП, при котором поступивший сигнал от датчика, считается достоверным. Все сигналы ниже этого уровня считаются шумами и midi-сообщение по ним не формируется. Значение по умолчанию 10, возможные значения от 0 до 255.
Интервал.

Время, в сотых секунды, на протяжении которого входной сигнал игнорируется, после первого сигнала, выше порога шума. Значение по умолчанию 10, возможные значения от 1 до 255.
MIDI Канал.

Номер MIDI канала. Значение по умолчанию 10, возможные значения от 1 до 16.
Режим.

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

Включает или выключает реакцию устройства, на поступающие миди-сообщения. Тот самый режим обучения: По умолчанию включен.
Подсветка.

Включает или выключает подсветку падов при игре. По умолчанию включен.
Громкость.

Значение громкости для цифрового режима. По умолчанию 100, возможные значения от 1 до 127.
Остальные параметры определяют номер воспроизводимой ноты по каждому каналу.

Как видно из рисунка, на дисплее отображается номер входа, его назначение, обозначение ноты и ее номер в midi-стандарте. Для удобства настройки, при переключении между этими параметрами, а так же, изменении значения параметра, установленная нота воспроизводится. Значения нот по умолчанию были приняты в соответствии с VST плагином Edirol Super Quartet.
Отдельного внимания заслуживает вход №3 (Хай-Хэт), ибо он, в отличае от всех остальных, имеет не один, а 2 звука в открытом и закрытом состоянии. Номер воспроизводимой ноты выбирается в зависимости от положения педали. Педаль, считается нажатой, при наличие высокого уровня на входе №16.
Для выхода и сохранения изменений необходимо снова нажать кнопку Меню. Все сделанные вами изменения сохраняются в энергонезависимой памяти, и доступны при последующих включениях устройства.
Датчики подключаются к схеме в соответствии с приведенной ниже таблицей

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

S - Snare drum - Рабочий/малый барабан
T1 - Tom-tom (альт-том) Том1
Т2 - Tom-tom (тенор-том) Том2
ВТ - Bass-tom (бас-том) Том 3
BD - Bass drum/Big drum - Бас-барабан/бас-бочка/Большой барабан
HH - Hi-Hat - Хай-хэт(двойная тарелка)
C - Crash - Крэш (тарелка)
R - Ride - Райд (тарелка)


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

Во-первых, здесь есть все необходимое для изготовления стойки. Во-вторых минимум трудозатрат на сборку. В-третьих, хромированные трубы смотрятся очень хорошо, и не похожи на кустарщину. И в-четвертых, стоит не так уж и дорого. Хотя, решать, что и как собирать, только вам, а я в свою очередь, готов помочь советами, ну и как я уже говорил выше, возможным редактированием схемы и прошивки. Надеюсь, что общими усилиями, на свет появится хотя бы одна рабочая установка.
Тем кто хочет оценить работу устройства, но пока не решился воплощать его в железе, прилагается файл в протеусе. Для корректной работы проекта, необходимо установить русифицированную модель ЖК дисплея и используемую в проекте библиотеку KEYPADS. Соответствующие файлы прилагаются. Также вам наверняка понадобится программа host, это может быть либо используемый вами музыкальный редактор, поддерживающий работу с midi, либо, прилагаемая мной программа VSTHost. Так как передача midi-сообщений происходит по средствам COM-порта, то для эмуляции работы устройства, придется создать нуль-модемное соединение 2-х COM-портов, один из которых, будет подключен к виртуальному устройству в протеусе, а на второй, будет установлен драйвер, и через него, компьютер будет общаться с нашим устройством. С учетом того, что наличие 2-х COM-портов на одном компьютере большая редкость, рекомендую воспользоваться программой Virtual Null Modem. Программа хоть и платная, но триал версия позволит вам в течении 30 дней пользоваться одним виртуальным нуль-модемным соединением.
Желаю удачи всем, кто дочитал эту статью до конца, и тем более, после всего прочитанного, решился собрать это устройство.


Файлы:
Все для Proteus-a.
Прошивка МК.
VstHost.
Cbx200w.


Все вопросы в Форум.




Как вам эта статья?

Заработало ли это устройство у вас?

5 0 0