В праздничные дни я подумал, что было бы отличной идеей иметь устройство обнаружения электроэнергии для нашего дома в Новой Англии. Быстрый поиск DuckDuckgo обнаружил отличную реализацию Raspberry Pi от Fabytm. После небольшого хода, я решил, что более легкая версия идеи Бутейна может быть проще в дешевом ESP32 или ESP8266 MCU. Это также позволит другим с меньшим количеством времени, меньше денег или, возможно, меньше технических навыков для создания устройства обнаружения мощности.
Есть два сценария отключения, которые я хотел захватить:
Обнаружение отключения - Во -первых, я хотел использовать систему уведомлений о подаче корпокций Adafruit, чтобы уведомить меня, когда она не получила HTTP -ответ от моего устройства в течение определенного периода времени. Adafruit IO позволяет бесплатным учетным записям отправлять уведомления, если обновления не были опубликованы за 10 минут, 30 минут, 1 час или 1 день. Эта функция «онлайн -корм» действительно хороша. Для бесплатных учетных записей Adafruit IO это только электронная почта, но для наших целей этого вполне достаточно.
Длина отключения - код, все его строки, также отслеживает время эпохи. Когда питание возобновится, он вычисляет, сколько времени прошло с момента последнего записанного времени, и опубликует эту дельту, если она превышает значение, которое вы устанавливаете в config.py . Я сообщаю о времени отключения в поле Value1 IFTTT, и мое действие «тогда» состоит в том, чтобы Алекса уведомила меня о длине отключения.
В config.py я установил интервал публикации Adafruit на 30 секунд, а интервал отключения - 10 минут. У меня также есть этот канал по электронной почте моей учетной записи Gmail, которая имеет правило, что, если отправитель является [email protected], он пересылает электронное письмо на мой AT & T SMTP-to-SMS [email protected], и я получаю предупреждение о SMS. Для уведомлений IFTTT я установил длину отключения дельты до 30 минут и использую веб -крючки, чтобы предупредить меня о любом отключении, который длится дольше, чем этот интервал времени.
Вам понадобится следующие 5 компонентов для создания этого устройства:
Expressif ESP MCU - я выбрал доску Lolin/Wemos ESP32C3 за ~ 4 доллара. ESP8266 работает одинаково хорошо.
MicropyThon - Вы можете скачать его для приведенной выше платы здесь. Вам понадобятся инструменты esptool и ampy , чтобы провести микропитону и загрузить свои сценарии Python. Используйте свой любимый инструмент последовательного подключения (Putty.exe, экран и т. Д.).
detect.py и config-sample.py Micropython файлы. Переименовать config-sample.py в config.py , чтобы включить свои учетные данные Wi-Fi, Adafruit и IFTTT.
Бесплатные учетные записи, сделанные как на Adafruit, так и на IFTTT. Создать эти учетные записи просто - просто для того, чтобы перейти на эти сайты напрямую и зарегистрироваться. Вам нужно будет создать подачу и настроить уведомление для этого канала на Adafruit. На IFTTT используйте веб -крючок, используя имя канала, которое вы указали в Adafruit.
Небольшой случай, чтобы охватить MCU. Я включил как версию, так и. Вы можете изменить его по мере того, как вы хотите соответствовать плате по выбору. Используйте SCAD, чтобы внести эти изменения.
Комментарии/предложения/критика приветствуются. Имейте в виду, я построил этот репо и код менее чем за 90 минут, и я уверен, что это может быть улучшено. Но это отлично работает для того, что мне нужно.
