music frequency detector - el-pths/w GitHub Wiki
Музыкальный Робот
Проект для Сахаровских Чтений 2021, исполнитель, предположительно, Ольга Семёнова 2024а
Краткое описание
Электронное устройство различающее музыкальные звуки разных нот (издаваемые, например, блок-флейтой) и использующее этот эффект для управления, например, простым колесным роботом, переключения светодиодов и т.п.
На данной схеме "питание" подводится по необходимости к разным узлам; справа от контроллера изображены для примера две лампочки и два электромотора - однако в реальной ситуации моторы например должны быть подключены через какой-либо усилитель мощности.
Основные критерии:
- устройство достаточно чувствительно, улавливает звуки с расстояния 3м или более
- устройство разборчиво - не путает сигналы (подаваемые разными нотами)
- устройство избирательно - не реагирует на окружающие шумы
Дополнительные пожелания - хочется использовать способ достаточно простой, чтобы годился для реализации на основе простого микроконтроллера (ардуино). У нас есть прототип работающий на более трудоёмком принципе для сравнения.
Предполагаемое устройство
Звук улавливается микрофоном, сигнал с которого постоянно замеряется микроконтроллером. Микроконтроллер анализируя некоторое количество последовательно измеренных "точек графика" звука пытается определить какая частота звучит.
Между микрофоном и микроконтроллером сигнал проходит через фильтры и усилитель. Фильтры нужны чтобы ослабить "ненужные" частоты (слишком высокие или слишком низкие) - являющиеся либо помехами, либо гармониками. Они представляют из себя простые соединения резисторов и конденсаторов. Усилитель нужен потому что сигнал с микрофона слабый, да и проходя через несколько фильтров даже нужная частота дополнительно ослабевает.
Предполагаемые этапы работы
Ниже перечислены этапы в достаточно большом количестве, но сами по себе не очень большие - чтобы более четко представлять чем предстоит заниматься.
- Теоретическая подготовка, в т.ч. экспериментирование с фильтрами в симуляторе, расчет их параметров
- Продумывание и рисование схемы
- Подготовка чертежа платы по схеме
- Травление платы
- Монтаж (пайка) компонент на плате и пр
- Сочинение программы для контроллера
- Испытания (и возврат к каким-либо из предыдущих пунктов по необходимости - доделки в плате, в программе)
- Подготовка текстовых материалов (аннотация, отчет)
- Подготовка видео-материалов (демо-ролик)
- Подготовка к выступлению / защите (если таковые будут)