Оглавление:
- Шаг 1: ЧАСТИ
- Шаг 2: ИНСТРУМЕНТЫ
- Шаг 3: КАК ЭТО РАБОТАЕТ
- Шаг 4: ПРОТОТИП ПЛИТНОЙ ДОСКИ
- Шаг 5: ПОДКЛЮЧИТЕ PIEZO
- Шаг 6: ПОДКЛЮЧИТЕ РЕЗИСТОР
- Шаг 7: ПОДКЛЮЧИТЕ ПИН-код DISPLAY CLK
- Шаг 8: ПОДКЛЮЧИТЕ ПИН-код DISPLAY DIO
- Шаг 9: ПОДКЛЮЧИТЕ ПИН-код VCC к дисплею
- Шаг 10: ПОДКЛЮЧИТЕ ПИН-код заземления дисплея
- Шаг 11: СКАЧАТЬ ДРАЙВЕРЫ CH340 (необязательно)
- Шаг 12: СКАЧАТЬ БИБЛИОТЕКУ ЦИФРОВОГО ДИСПЛЕЯ (TM1637)
- Шаг 13: УСТАНОВИТЕ БИБЛИОТЕКУ ЦИФРОВОГО ДИСПЛЕЯ
- Шаг 14: ВЫБЕРИТЕ ПЛАТУ И ПОРТ ARDUINO
- Шаг 15: ЭСКИЗ: ФОН
- Шаг 16: ЭСКИЗ: ПРЕДВАРИТЕЛЬНАЯ НАСТРОЙКА
- Шаг 17: ЭСКИЗ: ФУНКЦИЯ НАСТРОЙКИ
- Шаг 18: ЭСКИЗ ТЕЛА: ЛОГИКА
- Шаг 19: ЭСКИЗ: РАССЧИТАЙТЕ удары в минуту
- Шаг 20: СОХРАНИТЬ И ЗАГРУЗИТЬ
- Шаг 21: ПОДКЛЮЧИТЕ АККУМУЛЯТОР И ПРОВЕРЬТЕ ПРОТОТИП
- Шаг 22: УДЛИНИТЕЛЬНЫЕ ПРОВОДА К PIEZO
- Шаг 23: ПЕРЕМЕСТИТЕ КОМПОНЕНТЫ НА ПЛАТУ PERF
- Шаг 24: ОБРЕЗКА ПЕРФОВОЙ ДОСКИ
- Шаг 25: КОРПУС ПРОЕКТА: МОДИФИКАЦИЯ ЦИФРОВОГО ДИСПЛЕЯ
- Шаг 26: КОРПУС ПРОЕКТА: МОДИФИКАЦИЯ USB
- Шаг 27: КОРПУС ПРОЕКТА: ВЫРЕЗКА ДЛЯ ПЬЕЗОПРОВОДОВ
- Шаг 28: СБОРКА ОКОНЧАТЕЛЬНОГО БЛОКА
- Шаг 29: ВИНТОВЫЙ КОРПУС ВМЕСТЕ
- Шаг 30: УСТАНОВКА ПЬЕЗО И ИСПЫТАНИЕ
Видео: Хранитель темпа барабанщика: 30 шагов
2024 Автор: John Day | [email protected]. Последнее изменение: 2024-01-30 11:53
Самая важная работа барабанщика - следить за временем. Это означает, что ритм каждой песни должен оставаться постоянным.
Tempo Keeper барабанщика - это устройство, которое помогает барабанщикам лучше проводить время. Он состоит из небольшого пьезодиска, который крепится к пластине малого барабана. Каждый раз, когда барабанщик ударяет по малому барабану, устройство отображает количество ударов в минуту в зависимости от времени между ударами. Если группа начинает непреднамеренно ускоряться или замедляться, барабанщик мгновенно осознает это и может внести небольшую поправку, чтобы поддерживать постоянный темп.
На недавнем выступлении с группой, для которой я играю на барабанах, другой барабанщик из аудитории подумал, что моя группа играет под клик-трек - метроном, который щелкает каждый бит в наушниках, которые носят участники группы, - потому что бит был настолько устойчивым на протяжении каждой песни. Какой комплимент и дань уважения Drummer's Tempo Keeper!
Шаг 1: ЧАСТИ
Вот полный список деталей, необходимых для создания Drum Temp Keeper, примерная стоимость и примечания о том, что именно я использовал для создания своего. Вы можете получить эти детали на таких сайтах, как Amazon, eBay, Adafruit и SparkFun. Наименее дорогие детали обычно продаются на eBay и поставляются из Китая, поэтому доставка может занять несколько недель. Вам придется использовать другие драйверы, если вы получаете дешевый микроконтроллер из Китая (как это сделал я), чем если вы покупаете фирменную Arduino из США. Я отметил, что вам нужно сделать, чтобы загрузить и установить другие драйверы.
1. Микроконтроллер. Я использовал клон Arduino Nano из Китая, который поставлялся с уже припаянными разъемами. (4,50 доллара США)
2. Четырехзначный дисплей. Убедитесь, что у вас есть четырехзначный дисплей с четырьмя контактами. Не получайте 7-сегментный четырехзначный дисплей, потому что для него требуется 12 контактов. (3,50 доллара США)
3. Приложение к проекту. Я использовал проектный корпус RadioShack 3 "x 2" x 1 ". Убедитесь, что он пластиковый, потому что вам нужно вырезать отверстие для четырехзначного дисплея. (6 долларов США)
4. Пьезо. Поскольку эта деталь находится на малом барабане и подвержена сильным движениям и вибрациям, вам следует использовать пьезо с кожухом вокруг него. Есть дешевые версии с пластиковым корпусом, но я выбрал более прочный корпус, который используется для звукоснимателей гитары. (10,00 долларов США)
5. Удлинитель для пьезо. Я использовал обычный провод 22 AWG. (1 доллар США)
6. Резистор 10 кОм. 10K коричневый - черный - оранжевый - золотой. (0,25 доллара США)
7. Аккумулятор. Для меня это было самым простым решением, потому что я не хотел возиться с щелочными батарейками, он служит базой под коробкой для проекта и длится вечно! Для чего-то меньшего вы, вероятно, могли бы использовать пару батареек типа «таблетка». (8,00 долларов США)
8. Кабель USB. Кабель обеспечивает питание Nano от аккумуляторной батареи и обеспечивает интерфейс между вашим компьютером и Nano для загрузки эскиза. (0,00 $ - в комплекте с микроконтроллером)
9. Perf Board. Вы припаяете компоненты к плате, а затем вырежете только ту часть, которую используете. (2 доллара США)
10. Макетная плата. Сначала я собрал прототип этого проекта, используя пластиковый макет и перемычки. Как только он заработал правильно, я припаял финальную версию к монтажной плате. В этом нет необходимости, но рекомендуется. (2 доллара США)
11. Проволочные перемычки. Для сборки, тестирования и пайки вам понадобятся четыре провода типа «папа-мама». (1 доллар США)
12. Полоски на липучке. Используйте липучку, чтобы прикрепить пьезодатчик к малому барабану. Вы также можете использовать его для соединения корпуса проекта и аккумуляторной батареи. (0,80 доллара США)
Общая ориентировочная стоимость: 39,05 $
Шаг 2: ИНСТРУМЕНТЫ
Вот инструменты, которые вам понадобятся для сборки проекта
1. Паяльник. Как только прототип заработает, вы переместите компоненты с макета на перфокарту.
2. Припой. То же, что №1.
3. Dremel или аналогичный инструмент. Вы будете использовать это, чтобы вырезать перфорированную плату и сделать отверстия в корпусе проекта для дисплея и порта USB.
4. Изолента. Вы припаяете удлинительные провода к пьезоэлементу, а затем обмотаете изолентой место, которое вы припаяли.
5. Отвертка. Это необходимо для открытия, а затем закрытия корпуса проекта.
6. Компьютер. Вы напишете свой скетч на компьютере и загрузите его в микроконтроллер.
7. Программное обеспечение Arduino IDE. (также доступен в виде веб-инструмента).
Шаг 3: КАК ЭТО РАБОТАЕТ
Прежде чем собирать все вместе, полезно понять, как это работает.
1. Пьезо * - это компонент, который измеряет уровень вибрации. Мы присоединяем пьезо к малому барабану, а провода пьезо к микроконтроллеру, чтобы узнать, сколько вибрации присутствует на малом барабане.
2. Эскиз микроконтроллера считывает пьезоэлемент, чтобы определить, когда ударили по барабану, и записывает время. При следующем ударе по барабану он отмечает это время и рассчитывает удары в минуту на основе этого удара и предыдущего удара.
3. Так же к микроконтроллеру прикрепляем цифровой дисплей. После подсчета ударов в минуту он отображает результат на цифровом дисплее. Вы можете поместить эту часть устройства в любое место, которое вам будет видно во время игры. Я кладу свой рядом с высокой шляпой на пол.
Примечание: если вы не играете четвертные ноты на малом барабане, чтение будет отражать то, что вы играете. Подождите, пока вы не вернетесь к воспроизведению ритма песни, чтобы определить скорость.
* Мы используем пьезоэлемент в качестве ВХОДНОГО компонента в этом проекте для измерения количества вибрации. В других проектах, когда вы используете его как компонент ВЫХОДА, он создает вибрацию и становится динамиком!
Шаг 4: ПРОТОТИП ПЛИТНОЙ ДОСКИ
Поскольку паять - не мой лучший талант, я сначала собрал прототип устройства, используя пластиковый макет и перемычки, чтобы убедиться, что оно работает. Как только он заработал, я переместил его на перфокарту и припаял. Если вы опытный производитель, вы можете пропустить эту часть и вместо этого паять непосредственно на перфокарт.
1. Поместите микроконтроллер в середину макета так, чтобы была пластиковая колонна, разделяющая контакты с левой стороны платы и контакты с правой стороны платы. Убедитесь, что порт USB находится на краю макета, а не посередине, как показано на рисунке.
Шаг 5: ПОДКЛЮЧИТЕ PIEZO
Пьезо - аналоговый датчик, потому что он сообщает значение от 0 до 1024, поэтому его необходимо подключать к аналоговому выводу на Arduino. Я использовал первый аналоговый вывод A0.
1. Подключите положительный (красный) провод пьезоэлемента к контакту A0 на Arduino.
2. Подключите отрицательный (черный) провод пьезоэлектрического преобразователя к одному из контактов заземления (GND) на Arduino.
Шаг 6: ПОДКЛЮЧИТЕ РЕЗИСТОР
Подключите резистор к тем же контактам, к которым подключен пьезоэлемент (A0 и GND)
(Неважно, какая сторона резистора подключается к какому выводу; они одинаковы.)
Шаг 7: ПОДКЛЮЧИТЕ ПИН-код DISPLAY CLK
Четырехзначный дисплей подключается к двум цифровым контактам на Arduino. Я использовал первые два цифровых контакта на Nano, это D2 и D3.
Подключите контакт CLK на дисплее к контакту D3 на Arduino с помощью кабеля «мама-папа»
Шаг 8: ПОДКЛЮЧИТЕ ПИН-код DISPLAY DIO
Подключите вывод DIO на дисплее к контакту D2 на Arduino с помощью кабеля «мама-папа»
Шаг 9: ПОДКЛЮЧИТЕ ПИН-код VCC к дисплею
Подключите вывод VCC на дисплее к выводу питания 5 В на Arduino, используя кабель «мама-папа»
Шаг 10: ПОДКЛЮЧИТЕ ПИН-код заземления дисплея
1. Подключите контакт GND на дисплее к контакту GND на Arduino, используя кабель «мама-папа».
Вот и все, что касается прототипа электроники
Шаг 11: СКАЧАТЬ ДРАЙВЕРЫ CH340 (необязательно)
Если вы используете более дешевый Arduino из Китая, он, вероятно, использует чип CH340 для связи с компьютером. Вам необходимо загрузить и установить драйверы для этого чипа. Вы можете скачать официальные драйверы с этого сайта (страница на английском и китайском языках, если вы присмотритесь). Установите драйверы на свой компьютер, запустив исполняемый файл.
Шаг 12: СКАЧАТЬ БИБЛИОТЕКУ ЦИФРОВОГО ДИСПЛЕЯ (TM1637)
В четырехзначном дисплее используется микросхема TM1637. Вам необходимо загрузить библиотеку, которая упрощает отображение чисел на цифровом дисплее. Перейдите на https://github.com/avishorp/TM1637. Выберите «Клонировать» или «Загрузить» и выберите «Загрузить ZIP-архив». Сохраните файл на свой компьютер.
Шаг 13: УСТАНОВИТЕ БИБЛИОТЕКУ ЦИФРОВОГО ДИСПЛЕЯ
1. Запустите программу Arduino IDE на вашем компьютере. Он представит схему для пустого эскиза.
2. Выберите Эскиз | Включить библиотеку | Добавьте. ZIP Library… и выберите файл, который вы загрузили с Github, чтобы установить библиотеку.
Шаг 14: ВЫБЕРИТЕ ПЛАТУ И ПОРТ ARDUINO
1. Подключите Arduino к компьютеру с помощью кабеля USB. Затем переключитесь на IDE Arduino и новый открытый скетч.
2. Выберите правильную плату, например, Arduino Nano.
3. Выберите порт, к которому ваш Arduino подключен на компьютере.
Шаг 15: ЭСКИЗ: ФОН
1. Чтобы определить, ударился ли барабан, считываем вывод A0 пьезодатчика. Пьезо измеряет количество вибрации малого барабана и дает нам значение от 0 (нет вибрации) до 1024 (максимальная вибрация).
2. Так как музыка и другие инструменты могут слегка вибрировать, мы не можем сказать, что любое значение выше нуля указывает на удар по барабану. При проверке показаний пьезоэлектрического преобразователя необходимо учитывать некоторый шум. Я называю это значение ПОРОГОМ и выбрал 100. Это означает, что любое значение выше 100 указывает на попадание в барабан. Все, что составляет 100 или меньше, - это просто шум. Подсказка: если прибор показывает показания, когда вы не ударяли по барабану, увеличьте это значение.
3. Поскольку мы рассчитываем количество ударов в минуту, нам нужно отслеживать время каждого удара по барабану. Микроконтроллер отслеживает количество миллисекунд, прошедших с момента его запуска. Это значение доступно нам с помощью функции millis (), которая является длинным целым числом (тип long).
Шаг 16: ЭСКИЗ: ПРЕДВАРИТЕЛЬНАЯ НАСТРОЙКА
Введите следующее в верхней части эскиза над функцией настройки. (При желании вы можете скачать окончательный эскиз в конце объяснения).
1. Сначала включите две необходимые нам библиотеки: TM1637Display, который вы загрузили, и math.h.
2. Затем определите контакты, которые мы используем. Если вы помните из сборки устройства, вывод CLK - это цифровой вывод 2, вывод DIO - это цифровой вывод 3, а вывод Piezo - это A0 (аналоговый 0).
3. На данный момент определите ПОРОГ, равный 100.
4. Затем создайте две переменные, которые нам нужны для скетча, называемые чтением (текущее показание пьезодатчика) и lastbeat (время предыдущего удара).
5. Наконец, инициализируйте библиотеку TM1637, передав ей номера контактов, которые мы используем для CLK и DIO.
// Библиотеки
#include #include // Выводы #define CLK 2 #define DIO 3 #define PIEZO A0 #define THRESHHOLD 100 // Переменные int read; long lastBeat; // Настраиваем библиотеку отображения TM1637Display display (CLK, DIO);
Шаг 17: ЭСКИЗ: ФУНКЦИЯ НАСТРОЙКИ
Если вы строите эскиз поэтапно, введите следующее для функции setup ().
1. Используйте функцию pinMode, чтобы объявить пьезо вывод как вывод INPUT, поскольку мы собираемся читать с него.
2. Используйте функцию setBrightness, чтобы установить на цифровом дисплее самый высокий уровень яркости. Он использует шкалу от 0 (наименее яркое) до 7 (наиболее яркое).
3. Поскольку у нас нет предыдущего хода барабана, установите для этой переменной текущее время.
void setup () {
// Настраиваем контакты pinMode (PIEZO, INPUT); // Устанавливаем яркость дисплея display.setBrightness (7); // Записываем первое попадание как сейчас lastBeat = millis (); }
Шаг 18: ЭСКИЗ ТЕЛА: ЛОГИКА
Введите следующее для функции main loop (), если вы строите эскиз шаг за шагом.
1. Считывайте значение пьезодатчика до тех пор, пока датчик не покажет значение выше порога, указывающее на попадание в малый барабан. Сохраните текущее время удара как thisbeat.
2. Затем вызовите функцию calculateBPM для расчета ударов в минуту. Передайте функции время этого штриха и время последнего штриха для расчета. (Следующий шаг содержит тело функции). Сохраните результат в уд / мин.
3. Затем отобразите количество ударов в минуту на светодиодном дисплее, передав результат в функцию из библиотеки TM1347, называемую showNumberDec ().
4. Наконец, установите время предыдущего удара (lastbeat) как время этого удара (thisbeat) и дождитесь следующего удара по барабану.
void loop () {
// Удар по барабану? int piezo = analogRead (PIEZO); if (piezo> THRESHHOLD) {// Записываем время, вычисляем удары в минуту и отображаем результат long thisBeat = millis (); int bpm = calculateBPM (thisBeat, lastBeat); display.showNumberDec (уд / мин); // thisBeat теперь является lastBeat для следующего удара по барабану lastBeat = thisBeat; }}
Шаг 19: ЭСКИЗ: РАССЧИТАЙТЕ удары в минуту
Подсказка: поместите эту функцию над функцией настройки в программе, чтобы вам не приходилось объявлять ее дважды.
Пример расчета см. На диаграмме выше.
1. Создайте функцию для вычисления ударов в минуту (уд / мин). Примите время этого удара барабана (thisTime) и время предыдущего удара барабана (lastTime) в качестве параметров.
2. Вычтите время между двумя ударами барабана и сохраните его как прошедшее. Разница во времени дает количество ударов (1) за миллисекунду (мс).
3. Преобразуйте удары в миллисекунду в удары в минуту. Поскольку в секунде 1000 миллисекунд, разделите 1000 на время между двумя ударами, чтобы получить количество ударов (1) в секунду. Поскольку в минуте 60 секунд, умножьте это на 60, чтобы получить удары (1) в минуту. Округлите окончательный результат, чтобы получить целое (целое число) значение.
Если хотите, вы можете скачать окончательный набросок на этом шаге
int calculateBPM (long thisTime, long lastTime) {
long elapsed = thisTime - lastTime; двойные удары в минуту = круглые (1000. / прошедшее * 60.); return (int) bpm; }
Шаг 20: СОХРАНИТЬ И ЗАГРУЗИТЬ
1. В среде Arduino IDE выберите «Файл» и нажмите «Сохранить». Введите имя для своего эскиза и нажмите «Сохранить», чтобы сохранить эскиз (вы должны назвать его только при первом сохранении).
2. Выберите «Скетч» и выберите «Загрузить», чтобы загрузить рисунок в Arduino и подготовиться к тестированию.
Шаг 21: ПОДКЛЮЧИТЕ АККУМУЛЯТОР И ПРОВЕРЬТЕ ПРОТОТИП
Перед тем, как собрать финальную версию, протестируйте устройство.
1. Подключите аккумулятор к микроконтроллеру t
2. Поместите пьезо на малый барабан и удерживайте его пальцем.
3. Ударьте по малому барабану несколько раз и убедитесь, что показания соответствуют количеству ударов в минуту, основанному на ваших ударах.
3. Как только все заработает правильно, можно паять финальную версию.
Шаг 22: УДЛИНИТЕЛЬНЫЕ ПРОВОДА К PIEZO
1. Поскольку пьезо будет находиться на малом барабане, а остальная часть устройства будет где-то еще, вам необходимо увеличить длину проволоки на пьезо. Припаяйте концы пьезоэлемента примерно к метру провода, чтобы обеспечить дополнительное провисание.
Подсказка: если ваш удлинительный провод не цветной, отметьте, какой из них красный, а какой черный, от пьезоэлемента.
Шаг 23: ПЕРЕМЕСТИТЕ КОМПОНЕНТЫ НА ПЛАТУ PERF
Затем переместите схему с пластиковой макетной платы на монтажную плату и припаяйте компоненты. Паянная версия должна быть идентична макетной.
1. Переместите микроконтроллер с пластиковой макетной платы на перфокарту, убедившись, что левый и правый наборы контактов не подключены, а разъем USB направлен в правильном направлении. Припаяйте каждый вывод к монтажной плате.
2. Припаяйте длинные пьезопроводы, которые вы подключили (черный провод к GND и красный провод к A0).
3. Припаяйте резистор к тем же контактам, что и пьезо.
4. Припаяйте блок дисплея, как он был подключен к макетной плате (CLK к D3; DIO к D2; VCC к + 5V и GND к GND).
Шаг 24: ОБРЕЗКА ПЕРФОВОЙ ДОСКИ
1. Осторожно вырежьте неиспользуемые участки перфокарта, чтобы микроконтроллер поместился в корпусе проекта.
Шаг 25: КОРПУС ПРОЕКТА: МОДИФИКАЦИЯ ЦИФРОВОГО ДИСПЛЕЯ
1. Используйте дремель или аналогичный инструмент, чтобы вырезать отверстие в верхней части корпуса проекта, чтобы оно соответствовало цифровому дисплею.
Шаг 26: КОРПУС ПРОЕКТА: МОДИФИКАЦИЯ USB
1. Вырежьте отверстие в боковой стенке корпуса для порта USB.
Шаг 27: КОРПУС ПРОЕКТА: ВЫРЕЗКА ДЛЯ ПЬЕЗОПРОВОДОВ
На противоположном конце от USB-разъема микроконтроллера прорежьте небольшую выемку для проводов пьезо.
Шаг 28: СБОРКА ОКОНЧАТЕЛЬНОГО БЛОКА
1. Установите дисплей в верхней части корпуса проекта так, чтобы он вошел в созданное вами отверстие.
2. Установите перфокарту с микроконтроллером в нижней части корпуса проекта, чтобы доступ к USB-порту был через созданное вами отверстие.
Подсказка: я кладу небольшой кусок пробковой доски между двумя досками, чтобы они не касались друг друга.
Шаг 29: ВИНТОВЫЙ КОРПУС ВМЕСТЕ
Пропустите пьезопроводы через вырезанную вами выемку и скрутите корпус проекта.
Шаг 30: УСТАНОВКА ПЬЕЗО И ИСПЫТАНИЕ
1. Закрепите пьезоэлемент на головке малого барабана с помощью лент на липучке.
2. Пожалуйста, оставьте остальную часть устройства на полу или в другом месте, удобном для просмотра во время игры на барабанах.
3. Произведите впечатление на своих товарищей по группе своими улучшенными навыками хронометража!
Рекомендуемые:
Хранитель времени галстук: 6 шагов (с изображениями)
Tie Time Keeper: важно уметь определять время, но не всем нравится носить часы, и брать свой смартфон, чтобы проверить время, кажется немного ненужным. Мне нравится, когда мои руки свободны от колец, браслетов и часов, когда я работаю в профессиональном
Большие цифровые часы темпа: 4 шага
Большие цифровые часы темпа: это черновик. У меня еще нет фото … Пловец? Обучение? В любом случае четко просмотрите свои сплиты. Этот проект является более дешевой версией MichaelH814: Instructables.com/id/Large-7-Segment-LED-Pace-Clock. Этот проект был вдохновлен 100-долларовой суммой
Хранитель походки: 7 шагов
Хранитель походки: постановка проблемы В исследовании 87 нормальных пожилых людей измерение моделей ходьбы и настроения показало корреляционные доказательства того, что походка может служить показателем уровня депрессии в клинической популяции [1]. Кроме того, улучшение походки
ОК, чтобы встать, ночник! (Хранитель сна для родителей!): 5 шагов
ОК, чтобы встать, ночник! (Хранитель сна для родителей!): Родители маленьких детей, которые не могут определить время: хотели бы вы восстановить несколько часов сна каждые выходные? Что ж, у меня есть для вас творение! Используя Sparkfun Redboard и Breadboard, несколько простых компонентов и несколько простых ко
Хранитель паролей на Aruino Pro Micro, или зачем сохранять простоту, когда существует продуманный способ !: 15 шагов (с изображениями)
Хранитель паролей на Aruino Pro Micro, или зачем сохранять простоту, когда есть продуманный способ !: Похоже, что основная проблема с микроконтроллерами для любителей электроники (особенно новичков) - это выяснить, где их применить :) Сегодняшняя электроника, особенно цифровая , все больше и больше похоже на черную магию. Только 80-уровневые мастера ар