🛒
0 товар.
0 руб.
Логотип

Интернет-магазин «Неглупый Дом»

☰
ИИ-консультант Wildberries OZON Яндекс Маркет
Поиск по сайту
Гугл таблица с ассортиментом

📶 Проект: удалённое уведомление об обнаружении огня через ESP8266 на датчике KY-026

Локальный зуммер бесполезен, если рядом никого нет — здесь KY-026 подключён к ESP8266, которая при обнаружении огня сразу отправляет HTTP-запрос на внешний сервис уведомлений.

Как это работает

Обнаружение такое же, как в остальных проектах на KY-026 — компаратор сравнивает ИК-сигнал пламени с порогом. Разница в реакции: ESP8266 (со встроенным WiFi) подключается к точке доступа и отправляет HTTP-запрос на внешний адрес — вебхук, сервис push-уведомлений или свой сервер.

Важно: здесь добровольно вводится точка отказа — если WiFi недоступен, сигнал не придёт, хотя датчик его обнаружил. Для критичной задачи локальный зуммер/реле стоит оставить ВМЕСТЕ с уведомлением, а не вместо него.

Пошаговая сборка

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

  1. KY-026: цифровой выход → свободный пин ESP8266 (например, D5), VCC → по маркировке датчика, GND → GND.
  2. Настройте чувствительность резистором на плате датчика.
  3. Подготовьте URL сервиса уведомлений для теста (любой простой приёмник вебхуков).

Скетч

// ВНИМАНИЕ: рекомендую отладить код через монитор порта, я языковая
// модель, а не специализированный кодер, могу что-то упустить. Адрес
// сервиса и формат запроса замените на реальные под ваш сервис.

#include <ESP8266WiFi.h>
#include <ESP8266HTTPClient.h>

const char* WIFI_SSID = "ваша_сеть";
const char* WIFI_PASSWORD = "ваш_пароль";
const char* NOTIFY_URL = "http://example.com/notify";
const int SENSOR_PIN = D5;
bool alreadyNotified = false;

void setup() {
  Serial.begin(9600);
  pinMode(SENSOR_PIN, INPUT);
  WiFi.begin(WIFI_SSID, WIFI_PASSWORD);
  while (WiFi.status() != WL_CONNECTED) delay(500);
}

void loop() {
  bool flameDetected = (digitalRead(SENSOR_PIN) == LOW);
  if (flameDetected && !alreadyNotified) {
    alreadyNotified = true;
    if (WiFi.status() == WL_CONNECTED) {
      WiFiClient client;
      HTTPClient http;
      http.begin(client, NOTIFY_URL);
      http.GET();
      http.end();
    }
  }
  if (!flameDetected) alreadyNotified = false;
  delay(200);
}
                

Библиотеки ESP8266WiFi и ESP8266HTTPClient входят в стандартный пакет поддержки ESP8266. Формат запроса зависит от выбранного сервиса — уточните документацию и замените `http.GET()` на нужный метод.

Частые проблемы

Как улучшить проект

Товары по теме

Ещё модули для Arduino: Электронные модули.

← 🔊 индикатор среднего уровня шума…📡 удалённый мониторинг энергопот… →

🎁 Купить весь комплект со скидкой 10%

Все 2 товара сразу: 306 ₽ 275 ₽ (экономия 31 ₽)

Скидка применяется автоматически при оформлении заказа, если в корзине именно этот комплект.

Остались вопросы? Проконсультируйтесь с ИИ-инженером — он уже в курсе темы статьи и сразу ответит, ничего вводить не нужно.

Корзина

Поиск


Пример: понижающий или DC-DC или mini360 или aw-023 или арт. OZ/WB/YA