Промышленное производство
Промышленный Интернет вещей | Промышленные материалы | Техническое обслуживание и ремонт оборудования | Промышленное программирование |
home  MfgRobots >> Промышленное производство >  >> Manufacturing Technology >> Производственный процесс

Управление NeoPixel-светодиодной лентой по Wi-Fi: проект на ESP8266 с Android-приложением

Компоненты и материалы

Компонент Количество
Плата ElectroPeak ESP8266 Serial WIFI Witty Cloud Board 1
NeoPixel Smart LED Strip (60 LED/m) 3 м (6 полос по 50 см)
Logic Level Converter (ElectroPeak) 1
Перемычки Male-Female 21 см (40 шт.) 1 набор
ПВХ-труба 60 см, диаметр 2″ 1
Калька (tracing paper) 1 лист
Стеклянный цилиндр (ваза) 1
Блок питания 5В (не менее 9 А) 1
Arduino Nano R3 (для прошивки/отладки) 1

Инструменты

Приложения и сервисы

О проекте

Создайте крутой эффект пламени с беспроводным управлением по Wi-Fi. Готовое Android-приложение с приятным интерфейсом позволяет играть с вашим творением. Используются Arduino и ESP8266 для управления пламенем. В итоге вы научитесь:

Знакомство с NeoPixels

Индивидуально адресуемые светодиоды (NeoPixels) позволяют управлять цветом каждого светодиода отдельно, создавая бесконечные паттерны и анимации. Для WS2812B достаточно 3 провода: 2 для питания и 1 для данных. То есть всего один свободный пин Arduino управляет сотнями светодиодов!

В проекте используется 6 полос по 30 светодиодов (всего 180), наклеенных на ПВХ-трубу, помещённую в стеклянный цилиндр. Для диффузии света и непрерывного вида используется калька.

Конструкция

  1. Получите стеклянный цилиндр (наш: высота 60 см, диаметр 12 см). Если нашли матовый — отлично, если прозрачный — обклейте калькой (внутри или снаружи).
  2. Измерьте внутреннюю длину цилиндра и отрежьте ПВХ-трубу под неё (у нас 59 см). Диаметр трубы ~4 см.
  3. Нарежьте LED-ленту на 6 равных частей по 50 см (всего 3 м при плотности 60 LED/m). Распределите их равномерно вокруг трубы и приклейте.
  4. Соедините полосы между собой: либо паяйте провода напрямую, либо припаяйте pin headers и используйте макетные провода.
  5. Установите трубу в цилиндр. Для центрирования вырежьте из пенопласта два кольца: внешний диаметр = внутренний диаметр цилиндра, внутренний = внешний диаметр трубы. Вставьте их на концы трубы и аккуратно поместите в цилиндр.

Код

Используется Arduino IDE. Плата ESP8266 должна иметь 3 МБ SPIFFS для загрузки веб-интерфейса управления. SPIFFS (Serial Peripheral Interface Flash File System) позволяет хранить файлы веб-интерфейса и открывать их в браузере по адресу ESP (по умолчанию 192.168.4.1) — это единственный вариант для iOS.

Скетч использует библиотеку FastLED (пример Fire2012 от Mark Kriegsman), адаптированный для нескольких полос. Параметры огня: SPARKING (искристость) и COOLING (остывание) меняются динамически через веб-интерфейс или приложение. Также настраиваются FPS, яркость и цветовая палитра (4 цветовые точки).

Полный код скетча приведён в исходнике.

Загрузка файлов в SPIFFS

  1. Создайте папку «data» в папке скетча и поместите туда файлы веб-интерфейса.
  2. Установите плагин «ESP8266 Sketch Data Upload» для Arduino IDE (инструкции на GitHub).
  3. Переведите ESP в режим программирования, выберите Tools → ESP8266 Sketch Data Upload. Скорость загрузки 921600 ускоряет процесс.

Принцип работы

Скетч на ESP8266 поднимает веб-сервер, отвечающий на GET-запросы от приложения. Приложение отправляет параметры (цвета палитры, SPARKING, COOLING, яркость, FPS) как аргументы запроса. Например, установка яркости: https://192.168.4.1/conf?brightness=224.

Android-приложение

Создано на Phonegap (HTML, CSS, JS) — кроссплатформенная технология. Исходный код доступен на сайте ElectroPeak.

Производственный процесс

  1. Использование IoT для раннего обнаружения и предотвращения лесных пожаров
  2. Создание быстрой надежной системы обнаружения пожара с Samsung SAMI, Arduino UNO и Raspberry Pi
  3. Создание бюджетного детектора плача ребенка на Raspberry Pi — DIY-руководство
  4. Пожарные ущерб и предотвращение: экспертные стратегии защиты жизней и имущества
  5. Революция в пожарном деле: как IoT повышает безопасность, реагирование и спасение
  6. iOS против Android: какая платформа обеспечивает превосходную безопасность корпоративных приложений?
  7. Мастерство метода strip() в Python: подробное руководство и практические примеры
  8. Axiom Equipment Group и спонсоры сообщества пожертвуют $11 000 пожарному департаменту Oxbow
  9. Умный счётчик посетителей с управлением через Android-приложение
  10. Интеграция ёмкостного сканера отпечатков DFRobot с Arduino или ESP8266