Плата WiFi Мониторинга UPS типа smart APC

Основной используемый принцип  -запросы и обработка ответов по смарт-протоколу APC
За исключением того, что плату мониторинга/управления собираем на основе WemosD1mini.

Дешевизна решения очевидна, с учетом того, что самая дешевая сетевая плата AP9640 (без внешних датчиков)  стоит более 500$

Плата собрана по традиции в коробочке из под Тик-Така.

Плата WiFi Мониторинга UPS типа smart APC Arduino, Esp8266, Wemos, Apc, Электроника, Самоделки, Длиннопост

Цель реализации:

  • мониторинг основных параметров UPS на WEB странице, а также в представлении XML и JSON

  • доступ к плате по WiFi. Сохранение параметров подключения

  • сигнализация аварии - отправка сообщения на PHP скрипт по ссылке

  • сбор информации о окружающей температуре и влажности

  • сохранение настроек в EEPROM  FLASH

Детали

  • Wemos D1 mini

  • max3232 module без DB9 разъема

  • разъем DB9 папа

  • DHT-21 датчик температуры и влажности (опционально)

Схема простого подключения APC smart к RS232 COM порту ПК:

Плата WiFi Мониторинга UPS типа smart APC Arduino, Esp8266, Wemos, Apc, Электроника, Самоделки, Длиннопост

Схема микроконтроллера в связке с UPS

Плата WiFi Мониторинга UPS типа smart APC Arduino, Esp8266, Wemos, Apc, Электроника, Самоделки, Длиннопост

Код программы

В коде применены нестандартные библиотеки.

Помимо основной esp8266, ESP_EEPROM и WiFiManager

ups_alarm_script_url - ссылка на скрипт, для передачи алерта пропадания/появления питания, на email или телеграмм, в формате http://server/mail=  или похожем.

Основные Команды

Y        Enter smart mode    SM

R        Exit smart mode    SM

^A        Model string        SMART-UPS 700

^N 1,5s ^N        Turn on UPS

K 1,5s K    Turn off      

L        Input line voltage 

P        Power load %        000.0

Q        Status flags        08

    08 = on line, battery OK

    10 = on battery, battery OK

    50 = on battery, battery low

Z        Shutdown immediately    n/a

f        Battery level        099.0

Сообщения

!!!        нет входного напряжения

$        появление входного напряжения

Скетч для Arduino IDE

Пользуясь случаем, хотел бы передать привет все любителям esp

Arduino & Pi

1.4K постов20.6K подписчик

Добавить пост

Правила сообщества

В нашем сообществе запрещается:

• Добавлять посты не относящиеся к тематике сообщества, либо не несущие какой-либо полезной нагрузки (флуд)

• Задавать очевидные вопросы в виде постов, не воспользовавшись перед этим поиском

• Выкладывать код прямо в посте - используйте для этого сервисы ideone.com, gist.github.com или схожие ресурсы (pastebin запрещен)

• Рассуждать на темы политики

• Нарушать установленные правила Пикабу