Миниатюрный извещатель пожарной сигнализации Esp8266 MQTT IFTTT Домашняя автоматизация: 4 шага
Миниатюрный извещатель пожарной сигнализации Esp8266 MQTT IFTTT Домашняя автоматизация: 4 шага
Anonim
Миниатюрный извещатель пожарной сигнализации Esp8266 MQTT IFTTT Home Automation
Миниатюрный извещатель пожарной сигнализации Esp8266 MQTT IFTTT Home Automation

Я хотел определить, не сработала ли моя домашняя система детекторов дыма. У меня дома восемь детекторов дыма, и они соединены между собой. Если один дымовой извещатель срабатывает, другой получает сигнал через соединительный сигнальный провод. Мой датчик считывает соединительный провод и отправляет информацию в мою домашнюю автоматику (Openhab2) через MQTT, а также подает сигнал тревоги через IFTTT.

Это руководство было вдохновлено этим проектом

Шаг 1. Дизайн

Дизайн
Дизайн
Дизайн
Дизайн
Дизайн
Дизайн

Во-первых, вам нужно знать, как взаимодействуют датчики дыма. У меня есть детекторы Эи146.

Дымовые извещатели соединены между собой линией «IC». Если активирован один детектор дыма, он генерирует сигнал 6–8 В на линии IC, см. Изображение экрана осциллографа.

Я считываю напряжение линии IC через оптрон (4N35), чтобы изолировать детекторы дыма от домашней автоматизации в целях безопасности.

Дымовая сигнализация питается от основного напряжения (220 В переменного тока), которое я использовал для питания модуля ESP-01.

На схеме вы можете увидеть, как части соединены. Я использую ESP-01, потому что он маленький и дешевый.

Шаг 2: Сборка печатной платы

Сборка печатной платы
Сборка печатной платы
Сборка печатной платы
Сборка печатной платы
Сборка печатной платы
Сборка печатной платы

На картинках и в комментариях к картинкам видно, как собирается печатная плата.

Я оптимизировал компоновку для размещения компонентов на небольшой печатной плате, ESP-01 лежит поверх других компонентов. Я подключаю ESP-01 через гнездовые разъемы, чтобы упростить программирование с помощью USB-программатора. После сборки модуля вы можете прошить новую прошивку по воздуху (OTA) через Arduino IDE или HTTPupdate (см. Эскиз)

Шаг 3: Программирование ESP8266

Программирование ESP8266
Программирование ESP8266
Программирование ESP8266
Программирование ESP8266

Смотрите мой код на Github. Я использую все используемые контакты ESP-01 как контакты GPIO, включая GPIO1 (TX) и GPIO3 (RX). Таким образом, последовательная связь невозможна и не должна инициализироваться, иначе объявление GPIO1 и GPIO3 станет недействительным.

Примечание: не отключайте GPIO0, GPIO1 или GPIO2 при запуске, потому что ваша программа не запускается. Обнаружил, что GPIO03 можно вытащить при запуске

Я программирую свои EPS-01 через этот модифицированный адаптер.

Программа работает следующим образом:

  • Если при включении питания нажать кнопку вспышки, модуль перейдет в режим OTA.
  • HTTPupdate инициализирован.
  • Подключение к WiFi и MQTT (горит зеленый свет)
  • Считывает значение контакта датчика (прикрепленного к контакту IC датчика дыма)
  • Если обнаружен пожар, дождитесь дребезга, а затем поднимите тревогу (также горит красный свет) через

    • MQTT - сообщение MQTT читается через Openhab, и правило генерирует уведомление через мое приложение.
    • IFTTT - 1 - через IFTTT Webhook инициируется триггер, который отправляет уведомление.
    • IFTTT - 2 - через IFTTT Webhook запускается триггер, который отправляет SMS моей жене
  • Если соединение MQTT потеряно (зеленый свет не горит), сообщение LWT (ERROR) отправляется в тему и читается Openhab.

Шаг 4: Сборка модуля

Сборка модуля
Сборка модуля
Сборка модуля
Сборка модуля
Сборка модуля
Сборка модуля

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

Изменить: добавлены stl-файлы.

Я приклеил светодиоды и переключатель OTA на место горячим клеем. Коробка закрывается 4 винтами.

Включите питание и готово!

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