Проекты на esp 01 для умного дома и автоматизации

0
8

Esp 01 проекты

Микромодуль с Wi-Fi на базе чипа ESP8266 подходит для создания компактных решений. Он потребляет менее 100 мА в активном режиме, работает от 3.3 В и поддерживает протоколы MQTT, HTTP, WebSocket. Встроенная флеш-память 1 МБ позволяет хранить прошивку и настройки.

Пример реализации: датчик температуры с передачей данных в Home Assistant. Схема включает DS18B20, резистор 4.7 кОм и два конденсатора 100 нФ. Код на Micropython занимает менее 15 КБ, интервал опроса – от 10 секунд до 5 минут.

Для управления реле используйте GPIO0 с опторазвязкой PC817. Максимальная нагрузка – 250 В/10 А, но для индуктивных цепей добавьте варистор и RC-цепочку. Готовые скетчи с таймером включения доступны в репозиториях PlatformIO.

Подключение к облачным сервисам через API требует токена длиной 32 символа. Локальная обработка сценариев на Lua сокращает зависимость от внешних серверов. Время отклика – 50-200 мс при стабильном канале Wi-Fi с RSSI выше -65 dBm.

Контроль освещения через Wi-Fi

Подключите релейный модуль к GPIO0 и управляйте светом через MQTT. Схема: ESP-01 с прошивкой ESPHome, реле на 5V, транзистор для согласования уровней. Время отклика – менее 200 мс.

Настройка датчиков

Используйте DHT22 для мониторинга температуры и влажности. Потребление: 1.5 мА в режиме ожидания. Данные отправляются каждые 60 секунд на сервер Home Assistant через API.

Беспроводные выключатели

Соберите переключатель на базе ESP-01 с кнопкой на GPIO2. Прошивка: Tasmota. Логика работы: двойное нажатие включает сценарий «ночной режим». Батарея CR2032 обеспечивает работу до 6 месяцев.

Подключение датчиков температуры и влажности к ESP-01

Используйте DHT22 или DHT11 – они работают с одним GPIO, подключаются к контакту GPIO2 на плате. Для питания задействуйте 3.3V, избегая 5V, чтобы не повредить модуль. Сопротивление 4.7–10 кОм между DATA и VCC стабилизирует сигнал.

Прошивку пишите в Arduino IDE с библиотекой DHT sensor library. Пример кода:

#include "DHT.h"
#define DHTPIN 2
#define DHTTYPE DHT22
DHT dht(DHTPIN, DHTTYPE);
void setup() {
Serial.begin(115200);
dht.begin();
}
void loop() {
float h = dht.readHumidity();
float t = dht.readTemperature();
Serial.print("Влажность: "); Serial.print(h); Serial.print("%");
Serial.print(" Температура: "); Serial.print(t); Serial.println("°C");
delay(2000);
}

Если данные не читаются, проверьте:

  • Надежность соединения проводов – часто проблема в плохом контакте.
  • Правильность выбранного пина – GPIO2 соответствует D4 в Arduino.
  • Наличие внешнего питания – при работе от USB возможны скачки.

Для передачи данных в сеть добавьте MQTT-клиент. Библиотека PubSubClient отправляет показания на брокер раз в 30 секунд:

client.publish("room/sensor/temp", String(t).c_str());
client.publish("room/sensor/humidity", String(h).c_str());

Минимизируйте энергопотребление: отключайте Wi-Fi между замерами, если устройство работает от батареи. Режим глубокого сна (deep sleep) сократит расход до 20 мкА.

Контроль реле через ESP-01 для управления светом и питанием

Схема подключения

1. ESP-01 GPIO0 → резистор 1 кОм → база транзистора.
2. Коллектор транзистора → катушка реле.
3. Эмиттер → общий провод.
4. Диод 1N4148 параллельно катушке для подавления обратных импульсов.

Программная часть

В прошивке используйте библиотеку ESP8266WiFi для работы с MQTT или HTTP-запросами. Пример кода для управления через MQTT:

void callback(char* topic, byte* payload, unsigned int length) {
if (strcmp(topic, "home/light") == 0) {
digitalWrite(0, payload[0] == '1' ? HIGH : LOW);
}
}

Для локального управления добавьте физическую кнопку между GPIO2 и землёй с подтягивающим резистором 10 кОм к питанию.

Контроллер ESP-01: практические схемы

Подключите реле к GPIO0 для управления нагрузкой до 10А. Настройка через Arduino IDE:

  • Выберите плату Generic ESP8266 Module
  • Установите скорость COM-порта 115200
  • Загрузите скетч с обработкой MQTT-команд

Пример кода для считывания данных с датчика DHT11:

  1. Подключите DATA к GPIO2
  2. Установите библиотеку Adafruit DHT
  3. Настройте отправку показаний каждые 60 секунд

Безопасность соединения

Используйте шифрование WPA2 и уникальные SSID. Минимальные требования:

  • Пароль длиной 12+ символов
  • Отключение Telnet
  • Регулярное обновление прошивки

Для экономии энергии активируйте режим глубокого сна. Потребление снижается до 20мкА при отключении Wi-Fi.