В общем для тех , кто читает эту тему первый раз и не следил ранее сразу поясню что к чему . "MOЛOT" - моя интерпретация подхода , реализованного в триггерах от Trick и TrigMic Laser Pic . В оных продуктах съем сигнала с триггера происходит не по факту удара , а методом отслеживания определенного положения колотушки при помощи оптических датчиков ( они именуют это лазерными триггерами , но я подозреваю что реально это фиксирование производится оптическими датчика цвета , но могу ошибаться т.к. ни с тем ни с другим в живую дела не имел ) . По простому - триггер (например тригмик установленный на ободе бас-бочки ) срабатывает тогда , когда в поле его "зрения" появляется колотушка в момент ее касания к пластику барабана. По этой причине невозможен съем с динамикой , хотя в ТригМик и вроде как у Трик тоже если некое подобие динамического съема , но это такое .. Триггеры ИМХО вообще наиболее интересны драммерам играющим в скоростных стилях , а им как раз динамика не нужна , но нужно чтобы не было ложных срабатываний от рикошета и в то же время не было пропуска нужных ударов . Именно им в первую очередь и посвящено мое изобретение
![Wink ;)](./images/smilies/icon_wink.gif)
Когда я посмотрел рекламу Laser Pick от TrigMic у меня сразу же созрела идея реализации подобного устройства своими руками и без особых заморочек используя связку аналогового датчика Холла подключенного к плате Arduino и неодимового магнита укрепленного на подвижной части педали .
Датчик Холла работает по принципу похожему на потенциометр - имеет три ноги , две из которых питание и третья это выход сигнала. В состоянии покоя , когда к датчику магнит не поднесен - он пропускает на выход примерно половину напряжения питания . При приближении к нему магнита напряжение на этой ноге либо растет либо падает в зависимости от полярности магнита. Таким образом закрепив датчик Холла под футбордом педали , а снизу самого футборда - магнит ; при нажатии на педаль магнит будет приближаться к датчику и тот будет выдавать на выход напряжение определенной величины , которое будет анализироваться микроконтроллером и в случае соотв. этого уровня заданному порогу микроконтроллер будет отправлять миди ноту . Для тех , кто ничего не понимает в электронике ( а я к слову тоже недалеко ушел в этой сфере )) возможно это все кажется сложным , но на самом деле все намного проще. Для начала видео тест того , что получилось :
Update 31.10.2020 Собрал наконец-то модуль в нормальном человеческом корпусе. Пока еще не готовы финальные версии самих триггеров инфу в данном посте не меняю т.к. хочу уже все довести до конца , и только потом делать нормальный обзор. Пока для затравки фото готового модуля. Дизайн панели правда будет меняться еще как и размер самого корпуса. Но вцелом это будут последние правки во внешнем виде.
![Image](https://s8.hostingkartinok.com/uploads/thumbs/2020/10/29cd38916976155576103be1d5cb64a3.png)
Update 23.11.2019
нашел время наконец-то сделать быстрый обзор актуальных наработок на сегодняшний день. Дело близится к завершению )
UPD 04.10.2018 На данный момент испытан вариант с заливкой триггеров в эпоксидку . Это еще не финальная версия т.к. опыт заливки был первым и требует еще косметических доработок , но в общем затея удалась и окончательный продукт не за горами.Уже когда все доведу до ума - обновлю пост и прошивку (будет добавлено меню для настройки триггеров через экран OLED или TFT ) , а пока ознакамливайтесь с первой версией проекта .
upd.13.10.2018
Допилил код для меню на TFT дисплее . Осталось поработать над дизайном шрифтов . Картинку на фоне можно грузить любую , которую захотите. Фото отображает нормально. Небольшое демо )
Итак нам понадобится
1. Плата Arduino Leonardo ( или Pro Micro ) 1 шт . На сайте Космодром стоит около 170 грн . ( можно и UNO , но не вижу смысла т.к. цена примерно одинакова , а функционал у UNO хуже т.к. не имеет аппаратного usb и требует дополнительных манипуляций для возможности сделать из него plug-n-play миди контроллер )
2. Датчик Холла аналоговый , SS495A , 2 шт. если для кардана . Стоимость одного около 50 грн.
3. Светодиод , любой . 2 шт. если для кардана .
4. Резистор 220 Ом 2 шт.
5. 4-х жильный провод , как вариант можно взять USB кабель .
6. Металлическая пластина 2 шт.
7. Неодимовый магнит , я взял из лазерной головки DWD ROM . 2 шт.
8. Ноутбук или ПК с установленным DAW или любым семплером в stanalone варианте ( Superior , Addictive Drums и т.п. )
9. Термоусадка для изоляции контактов датчика и всей конструкции .
10. PLS разъем папа или провода - перемычки для макетных плат 8 шт.
Сразу скажу что у меня вся эта конструкция пока в макетном варианте т.к. ближайшие три месяца возможности довести до ума не будет , а испытать ее в работе и поделится результатами хочется уже сейчас . Потому я покажу сам принцип , а как это лучше сделать на своих педалях думайте сами .
Этап 1 . Распаиваем датчик и светодиод по такой схеме : если смотреть на датчик со стороны надписей то левая крайняя нога это питание +5 В , средняя нога земля или минус питания и третья соотв . выход аналогового сигнала . Четвертую жилу кабеля припаиваем к аноду светодиода , а катод светодиода через резистор 220 Ом (или больше , гореть будет тусклее соотв. ) так же на жилу к которой припаяна средняя нога датчика Холла. Каждую жилу одеваем в термоусадку дабы не было замыкания и затем на датчик со светодиодом так же одеваем термоусадку соотв. диаметра .
С другой стороны кабеля нужно припаять PLS штырьки либо сделать как я - на макетную плату-шильд для большего удобства т.к. пин для питания 5 В на ардуино только один в отличии от минуса , и придется в этом случае сначала спаять вместе две жилы с обоих датчиков и только тогда штырь для подключения к ардуино. Собственно вышеуказанную операцию повторить для второго датчика . В конечно итоге у меня это выглядит вот так
Подключаем к ардуино как нарисовано на схеме -
1. Жилу питания +5 В к пину 5V на Ардуино
2. Жилу минуса к пину GND на Ардуино
3. Выход датчика на аналоговый пин A0 Ардуино
4. Анод светодиода на пин A1 Ардуино
второй кабель аналогично
1. 5 В
2. GND
3. Выход датчика к пину A2 Ардуино
4. Анод светодиода на пин A3 Ардуино
2 Этап . Устанавливаем ПО
Скачиваем архив по ссылке , там три папки . Первая папка это среда разработки Arduino IDE , вторая - библиотека MIDIUSB в формате ZIP-файла и третья - собственно прошивка (скетч) для Ардуино в формате .ino . Устанавливаем Arduino IDE , подключаем плату Arduino к ПК и ждем пока не установится новое оборудование . После успешной установки IDE и драйверов платы открываем файл прошивки .
Видим , что строка
прописана черным цветом (у меня синим т.к. библиотека уже установлена ) . Это значит что подключаемая библиотека не установлена . Для этого на панели инструментов выбираем Скетч --> Подключить библиотеку -- > добавить zip.библиотеку и указываем Zip файл с библиотекой USBMIDI который скачали в архиве по ссылке выше . Надпись include <MIDIUSB.h > должна стать синей как на моем скриншоте. Если не стала то перезапустите программу .
В панели инструментов "Инструменты " выбираем пункт "Плата " и в выпавшем списке выбираем плату Arduino Leonardo . Так же в этом пункте "Инстурменты" ниже выбираем пункт "Порт " и там в выпадающем списке COM(у вас будет своя цифра) ( Arduino Leonardo) . В моем случае это COM9 . И после этого жмем кнопку "Загрузить" . Если все нормально установилось и подключилось - должна начаться загрузка скетча , после чего в нижней части окна высветится надпись "Загрузка завершена" .
Этап 3 . Монтируем датчик на педаль. Тут я делал из того , что было под рукой . А было немного )
Короче - у меня кардан TAMA Iron Cobra , на платформе уже есть готовые отверстия под Cobra Coils потому сверлить мне ничего не пришлось. Датчик я закрепил на куске рейки 20*30 мм хомутами и прикрутил к платформе ( см. фото ) . В дальнейшем хочу попробовать залить его в форму прозрачной эпоксидной смолой - чтобы красиво светился в темноте и с магнитом внизу . Если у вас нет готовых отверстий или платформа алюминиевая - как вариант можно к креплению приклеить мощный магнит , а на платформу металлическую пластину на которую этот магнит прилипнет.
Сам же футборд педали скорее всего силуминовый или еще из чего-то такого ибо магнит к нему не липнет. Потому пришлось снизу футборда приклеить металлическую пластину . Я взял кусок скобы для крепления профиля CD под гипсокартон. Она идеально подошла по ширине в паз на футборде . Ну и собственно нужно выбрать такое положение датчика и магнита при котором магнит будет максимально приближаться к датчику при нажатой педали и прижатой к пластику колотушке. Но не впритык , чтобы во время игры не раздавить его.
Этап 4 . Настройка.
Если вы удачно загрузили прошивку в плату - светодиод на триггере должен загорется. Когда вы поднесете к нему вплотную магнит (при условии что угадали с полярностью магнита ) светодиод должен погаснуть и загореться снова когда вы отдалите его на расстоянии более полусантиметра или около того. В момент когда светодиод гаснет - срабатывает миди нота. Если вы заспутите DAW или семплер и укажете в его настройках MIDI устройств нашу плату и соединение нормально установленно - то в момент приближения магнита и затухания светодиода должен проиграться один раз семпл бочки. Таким образом еще до монтажа на педали можно проверить работоспособность триггеров. Установив триггеры на педаль открываем снова Arduino IDE и клацаем значок в правом верхнем углу окна - это монитор Serial порта в котором будут отображаться значения с триггеров . В нижней правой части открывшегося окна порта нужно выбрать скорость 115200 бод вместо 9600 .
Без магнита в этом окне должны выводится показания соотв.значению примерно 512 единиц плюс минус. При нажатии на педаль должны расти и когда колотушка прижмется к пластику показания должны быть примерно 1010 или максимум 1023 . Если немного меньше - не страшно , главное запомните их . Если значение наоборот падает до нуля - переверните магнит другой стороной .
Это и будет наш верхний порог превышая который будет срабатывать нота. В коде он указан в самых верхних строчках как параметр ThresholdNoteOn . Если у вас максимальное значение ниже 1000 , то поменяйте значение этого параметра на соотв. а лучше на 10 единиц ниже .
Второй параметр ThresholdNoteOff задает расстояние замаха , на которое нужно отвести колотушку от пластика для того , чтобы сработала следующая нота после удара. Это нужно для фильтрации рикошетов и тут уже выбирайте под себя. Для того , чтобы определить величину этого параметра - просто отведите колотушку на максимально необходимое для вас расстояние от пластика , но так чтобы оно не превышало замах при быстрых ударах , иначе в этом случае они будут пропускаться т.к. контроллер не получит разрешение на повторное срабатывание ноты. У меня в коде этот параметр установлен в 560 и для меня это оптимально. Вы же возможно захотите увеличить его до 600 или 700 единиц .
Остальные три параметра относятся к настройке midi -
Chanell - это номер миди канала , число в шестнадцатиричном формате . .
Note - соотв. номер ноты назначенной на звук бочки .
Velosity - динамический уровень выдаваемой ноты.
После внесения всех изменений в настройки необходимо повторно прошить плату . Перед этим закройте DAW или семплер если он был запущен и убедитесь , что выбран правильный COM порт в пункте "Инструменты" т.к. Leonardo имеет особенность переназначатся на разные COM порты при переподключении к компьютеру.
После успешной загрузки кода в плату советую отключить ее от компьютера и немного подождать - секунд 10 и после снова включить и только после этого запускать DAW или семплер. У меня периодически наблюдается ситуация когда после очередной заливки скетча в микроконтроллер он начинает сильно тормозить - нанес удар , а реакция идет через секунду или более. Это видимо как-то связано с буффером последовательного соединения между платой и компьютером и лечится простой перезагрузкой.
Ну и вот собственно и все . На данный момент я уже изучаю возможность добавить к этому устройству OLED дисплей и написать меню для того , чтобы можно было настраивать параметры трешходов и миди через него и не лазить каждый раз в программый код через IDE , а после этого попробую покурить тему как бы сделать его полностью автономным а-ля ТригМик используя более дорогую плату Arduino DUE имеющую на борту два выхода для аудио сигнала . Так же останется довести до ума крепления и саму плату поместить в отдельный корпус .
Да кстати забыл совсем упомянуть один нюанс касающийся игры левой ногой - если привыкли всегда держать колотушку прижатой к пластику , то придется переучиваться т.к. левая нога играет и на педали и на хете , то перенеся ее на хет и обратно есть опасность вызвать ложное срабатывание ноты т.к. прижав колотушку даже не ударяя ею об пластик триггер все равно сработает. Я подозреваю , что данная особенность есть и Триков и у ТригМик так , что тут только приучать себя контроллировать положение левой колотуки после перехода с педали хета и не прижимать ее пока не нужно будет сделать это для нанесения удара по бочке. В видео я этот момент более наглядно поясню .
PS Это оригинальная статья эксклюзивно для нашего форума и если кто захочет ее перепостить - прошу указывать ссылку на данную тему и авторство
![Wink ;)](./images/smilies/icon_wink.gif)
PPS Если кто-то повторит данное устройство - делить результатами с фото собранных триггеров и вашими замечаниями и идеями по усовершенствованию
![Opa4ki :opa:](./images/smilies/icon_e_wink.gif)
Update 23.11.2019
нашел время наконец-то сделать быстрый обзор актуальных наработок на сегодняшний день. Дело близится к завершению )