Оглавление:

Автоматический ночник для коридора IoT с ESP8266: 4 шага (с изображениями)
Автоматический ночник для коридора IoT с ESP8266: 4 шага (с изображениями)

Видео: Автоматический ночник для коридора IoT с ESP8266: 4 шага (с изображениями)

Видео: Автоматический ночник для коридора IoT с ESP8266: 4 шага (с изображениями)
Видео: САМЫЙ ТУПОЙ УМНЫЙ ДОМ #186 2024, Ноябрь
Anonim
Image
Image
Соберите все необходимые материалы
Соберите все необходимые материалы

Я начал этот проект, вдохновленный светом для лестницы из другого поучительного поста. Разница в том, что мозг схемы использует ESP8266, что означает, что это будет устройство IoT.

Что я имею в виду, так это сделать ночник в коридоре для детей, когда они выходят из своей комнаты, он освещает путь, ведущий в ванную комнату. Для этого я использую ESP8266 для обнаружения движения от датчика PIR. Я использовал 2 датчика PIR, по одному на каждом конце для обратного пути. Учитывая, что ESP8266 поддерживает IoT, я также могу использовать это, чтобы определить, есть ли какое-либо движение в коридоре, отправив сообщение MQTT в Home Assistant.

Шаг 1. Соберите все необходимые материалы

Соберите все необходимые материалы
Соберите все необходимые материалы
Соберите все необходимые материалы
Соберите все необходимые материалы

Для этого проекта я использую следующие материалы:

- ESP8266

- Датчик PIR

- резистор 330 Ом, который действует как ограничитель тока

- Адресная светодиодная лента 5 В (WS2812B)

- Электропровод для размещения светильников

Шаг 2: Подключите схему

Подключите цепь
Подключите цепь
Подключите цепь
Подключите цепь
Подключите цепь
Подключите цепь

По сути, мы подключаем линию передачи данных светодиодной ленты к контакту D2 или ESP8266 через резистор 330 Ом, чтобы ограничить ток. Имейте в виду, что рабочее напряжение ESP8266 составляет 3,3 В.

Датчики PIR подключаются к контактам D5 и D6, один для левого датчика, а другой - для правого. В этом случае не забудьте подключить питание PIR и светодиодной ленты к напряжению 3,3 В.

Шаг 3. Загрузите код

Загрузите код
Загрузите код
Загрузите код
Загрузите код

Для работы кода вам понадобится следующая библиотека:

- Библиотека FastLed от Daniel Garcia, в данном случае у меня установлена версия 3.3.3

- TimeLib

- ESP8266Wifi

- ESP8266WebServer

- ArduinoOTA

Если они у вас еще не установлены, вы можете установить их из «Инструменты-> Управление библиотекой» в интерфейсе Arduino.

В следующем разделе кода

#define FASTLED_ESP8266_D1_PIN_ORDER # include "FastLED.h" FASTLED_USING_NAMESPACE

#define NUM_LEDS 30

#define LEDS_PER_STAIR 2 // Количество светодиодов на лестницу. Пока не изменяемо - просто отметьте #define BRIGHTNESS 120 // 0… 255 (используется в fade7) #define PIN_LED 04 // Вывод данных светодиода (GPIO4) D2 #define PIN_PIR_DOWN 14 // Вывод PIR снизу (GPI14) D5 #define PIN_PIR_UP 12 // Контакт верхнего этажа PIR (GPI12) D6

Вы можете настроить количество светодиодов в светодиодной полосе, а также подключение LEDStrip, если вы решите подключить его к другому выводу, а также контакт датчика PIR, если вы решите подключить его к другому выводу MCU.

Вышеуказанная конфигурация находится в файле "ledsettings.h".

Вы можете скачать полный исходный код по следующей ссылке.

Как только вы сможете успешно скомпилировать код, вы можете загрузить его в ESP8266.

Шаг 4. Тестирование, тестирование и устранение неполадок

Тестирование, тестирование и устранение неполадок
Тестирование, тестирование и устранение неполадок
Тестирование, тестирование и устранение неполадок
Тестирование, тестирование и устранение неполадок

Если все пойдет хорошо, у вас должны быть рабочие светильники для прихожей, которыми вы можете гордиться. Когда вы включаете схему в первый раз, светодиодная лента загорается радужной последовательностью. Затем банка ESP8266 будет действовать как точка доступа (AP), чтобы вы могли настроить соединение WiFi.

Если вы используете код, который у меня есть, вы должны увидеть «ESP-HallLight» как точку доступа. Для безопасности я поставил защиту паролем для AP. Пароль по умолчанию - «arduino», вы можете изменить его в файле settings.h в следующем разделе.

#define CLOCK_NAME "ESP-HallLight"

#define WIFI_AP_NAME CLOCK_NAME #define WIFI_APPSK "arduino" // пароль точки доступа по умолчанию

После успешного подключения с помощью мобильного телефона или ноутбука через Wi-Fi вы сможете указать в браузере адрес 192.168.4.1, вы должны увидеть экран настроек, как показано на рисунке выше. Теперь вы можете ввести настройки Wi-Fi, и после входа ESP8266 перезагрузится и попытается подключиться к вашему Wi-Fi. Если он сможет успешно подключиться, вы больше не увидите точку доступа «ESP-HallLight».

Если вы все еще подключены к интерфейсу Arduino, вы можете отслеживать это через последовательный монитор.

Примечание: вам не нужно настраивать Wi-Fi для работы датчиков, он должен заработать через несколько секунд, когда начальные индикаторы погаснут.

Чтобы проверить, вы можете попробовать пройтись с одной стороны или размахивая рукой, свет должен загореться, следуя направлению движения, если он делает противоположное, вам нужно поменять местами левый и правый датчик в коде.

Во время моей первой сборки я случайно подключил не тот конец светодиодной ленты, в результате чего ни один из светодиодов не загорелся.

Надеюсь, вам понравится эта сборка, если она будет вам полезна, проголосуйте за участие в конкурсе. Если у вас есть какие-либо вопросы, не стесняйтесь, напишите мне, и я займусь этим, как только смогу.

Некоторые после того, как подумали, было бы добавить дополнительные функции, такие как:

  • Наличие интерфейса для включения светодиодов независимо от датчика, как и в моем предыдущем посте о светодиодной полосе, управляемой Wi-Fi, или индикаторе состояния светодиодной ленты.
  • Добавьте дополнительную функцию для публикации сообщения MQTT в Home Assistant, как в следующем сообщении.

Рекомендуемые: