Звуковые активированные неопиксельные звуковые очки Maxim Integrated
Будьте зрелищем на музыкальном фестивале этого лета с этими звуковыми активированными очками рейва!
BOM:
- Максимум Интегрированный выход усилителя MX4466
- Ардуино Нано
- Микро-USB-кабель
- Кольца NeoPixel x2
- Аккумуляторная батарея AA
- Проволочный провод
Зачем?
Форма колец NeoPixel, используемых в этом проекте, вдохновила меня на создание очков, потому что сколько ПХД вы можете реально просмотреть? Когда все сумасшедшие фестивали подошли, я понял, что лучше, чем звуковые активированные очки рейва? Чем громче музыка, тем страшнее световое шоу. Хотя, думаю, я, может быть, нашел бы что-то лучше, чем плавательные очки …

Мои защитные очки без силы
Как?
Прорыв микрофона / усилителя использует Max4466 Maxim Integrated для усиления звука, обнаруженного электретным микрофоном. При правильном питании схема прорыва выдает аналоговое напряжение, напрямую связанное с входящим звуковым сигналом, подхваченным микрофоном. Мы можем использовать этот сигнал в наших интересах, подключив его к аналоговому входу на нашем микроконтроллере.
Изменения громкости обнаруживаются путем сравнения результата аналого-цифрового преобразователя (ADC) с пороговым значением, которое мы включаем в нашу программу. С помощью некоторого тестового сигнала мы можем использовать аналоговый уровень () для изменяющегося уровня сигнала на нашем аналоговом входном выводе. Используя пороговые значения, мы устанавливаем три разные категории громкости и соответствующим образом корректируем цвет NeoPixel.

Доска для разговора Max4466
NeoPixels - это бренд Adafruit с индивидуально адресуемыми 5V RGB пикселями, которые обмениваются данными по единой проводной связи. Минимальная проводка делает их идеальными для таких сжатых проектов, как наша. NeoPixels, однако, было бы не так просто использовать, если бы не леди Ады в удобной библиотеке NeoPixel. Используя некоторый пример кода, мы можем легко справляться с ситуацией и реагировать на наш звуковой сигнал.
Важно прочитать страницу Adafruit на правильном уходе NeoPixel, потому что они являются чувствительными компонентами. Резистор 300-550 Ом обычно рекомендуется в линии передачи данных, но, к счастью, наши кольца NeoPixel включают это для нас в PCB уже.
Для Rave Goggles я использовал схему подключения из аналогичного проекта, в котором используется другой MCU и блок питания, хотя проводка NeoPixel остается той же.

Проводка NeoPixel от проекта Adafruit
Для питания моего Nano я использовал кабель micro USB и отрезал противоположный конец, отменив красный и черный провода, которые являются положительной и отрицательной мощностью, соответственно. Эти провода были подключены к моему четвертому батарейному блоку AA. Позже я понял, что лучше всего использовать только три батареи типа AA, которые дают 4, 5 В, а не 6 В, хотя это не повлияло на производительность для этого проекта.
Цвета и анимацию можно настроить с помощью относительно простых команд, найденных в примерах проектов. Чтобы заставить пикселы реагировать на звук, я создал три разные категории томов, используя пороговые диапазоны. Если значение аналогового напряжения находится в определенном диапазоне, оно соответственно корректирует цвет пикселей или анимацию. Когда звук самый громкий, он заставляет пиксели сходить с ума! Ниже приведены пороговые коды и настройки цвета, соответственно.

Готовы к следующему фестивалю
sound = analogRead(A0); delay(100); if (sound = 401 & sound = 700) { rainbow(20); }
void green() { for (int i = 0; i < NUMPIXELS; i+) { // pixels. Color takes RGB values, from 0, 0, 0 up to 255, 255, 255 pixels.setPixelColor(i, pixels. Color(0, 150, 0)); // Moderately bright green color. pixels.show(); // This sends the updated pixel color to the hardware. delay(delayval); // Delay for a period of time (in milliseconds). } } void yellow() { for (int i = 0; i < NUMPIXELS; i+) { // pixels. Color takes RGB values, from 0, 0, 0 up to 255, 255, 255 pixels.setPixelColor(i, pixels. Color(255, 100, 0)); // Yellow color. pixels.show(); // This sends the updated pixel color to the hardware. delay(delayval); // Delay for a period of time (in milliseconds). } } void rainbow(uint8_t wait) { uint16_t i, j; for(j=0; j<256; j+) { for(i=0; i < strip.numPixels(); i+) { //fade through all colors strip.setPixelColor(i, Wheel((i+j) &255)); } strip.show(); // This sends the updated pixel color to the hardware. delay(wait); } }
Код Rave Goggles
В конечном счете, это довольно простой проект, так что подключите все и выйдите на танцпол! Не забудьте высушить носовые отверстия в плавательных очках для лучшего дыхания!
Другие инновации MIT-i:
- Кошка-Аппут! (сервопривод, управляемый Arduino для производителей)
- Лазерная Tripwire-сигнализация на Launchpad! (система безопасности пусковой панели)
- Пульт дистанционного управления Arduino UNIVERSAL! (ИК-приемник для всего вашего дома)
- Кастрюля-кастрюля! (контролируемая запахом система управления запахом)
- Контроллер светофора! (урок заявления о задержке Arduino)
- Танцующий тостер-призрачный тостер! (урок по соленоидам и индуктивным нагрузкам)
- Wygwam Игрушка для обнаружения предметов малины Pi! (урок RPIO GPIO)
- Замбромби! (робот-избегающий объект)
- Аналоговый сигнал праздничного сезона! (система защиты подарков)
- Санта-Кэм! (камера с активированным отпуском)
- IoT Beaglebone Beagle Treat Dispenser-Feeder! (плохое оправдание автоматизации)
- Punxsutawney 5000! (интересный способ избежать холода)
- BIG Arduino Piano! (музыкальный инструмент PWM)
- Драйверы Trinamic Stepper Motor! (урок шагового двигателя)
- Дебра 2: Датчик влажности устройства аналогового устройства (датчик влажности влаги)
Попробуйте этот проект сами! Получить спецификацию.