Статья

Измерение потребляемой электроэнергии и тока в сети 220В, добавление в HomeKit

Добрый день, Друзья! Давно у меня не было интересных самоделок с ESP8266. Сегодня хочу рассказать Вам, как очень просто измерять ток и нагрузку в сети 220В. Для этого нам понадобится:

PZEM-004T 
ESP8266 nodeMCU (Подойдет и любая другая)

Прошивка модуля

Рассказывать, как прошивать модуль nodeMCU или любой другой ESP8266, я не буду. Уже не однократно об этом говорилось в моих предыдущих статьях, например в этой: Охранная система в гараж на ESP 8266 с интеграцией в Apple HomeKit. Перейдем непосредственно к прошивке. 

По умолчанию в прошивке ESPEasy модуль PZEM-004T не поддерживается. Но на форуме letscontrolit имеется ветка по PZEM-004T, где aleph0 собрал прошивку для ESP8266. Прошивку скачиваем отсюда.

Подключение

Подключение PZEM-004T к nodeMCU осуществляется при помощи проводов Dupont мама-мама (4 шт.). Позже можно все распаять на монтажной плате. 

PZEM-004T
nodeMCU
5V (VDD)
VINRXGPIO-12 (D6)TXGPIO-14 (D5)GNDGND

AC подаем напряжение 220В, для замера.

CT подключаем трансформатор тока.

Настройка

Далее заполняем поля по аналогии. У меня это выглядит так:

Примечание: Значение Delay рекомендуется устанавливать не менее 15. При частом опросе модуль может выйти из строя. 

Нажимаем кнопку "Submit", и видим такую картину. 

Настройки MQTT на ESPEasy

Настройка HomeAssistent

Повторяться, как устанавливать и настраивать MQTT брокер, тоже не буду. Берем все в той же статье. Приступим сразу к добавлению сенсора в конфигурационный файл. Открываем на редактирование "configuration.yaml" ищем раздел "sensor:" и добавляем:

- platform: mqtt name: "Voltage (V)" state_topic: "/Voltage/pzem/Voltage (V)" - platform: mqtt name: "Current (A)" state_topic: "/Voltage/pzem/Current (A)" - platform: mqtt name: "Power (W)" state_topic: "/Voltage/pzem/Power (W)" - platform: mqtt name: "Energy (Wh)" state_topic: "/Voltage/pzem/Energy (Wh)"

После чего проверяем конфигурацию и перезагружаем Home Assistant. Далее добавляем новую карточку.

title: Учет электроэнергии entities: - entity: sensor.voltage_v - entity: sensor.current_a - entity: sensor.power_w - entity: sensor.energy_wh type: entities show_header_toggle: true

Примечание: Чтобы устройства добавились в HomeKit их необходимо представить, например в виде датчика освещенности. 

Настройка HomeBridge

По аналогии можно завести в HomeBridge, для этого нам необходим плагин homebridge-mqttthing, с устройством Light Sensor.

Конфигурационный файл будет выглядеть так:

{ "accessory": "mqttthing", "type": "lightSensor", "name": "Voltage (V)", "url": "mqtt://127.0.0.1", "logMqtt": true, "topics": { "getCurrentAmbientLightLevel": "/Voltage/pzem/Voltage (V)" } }, { "accessory": "mqttthing", "type": "lightSensor", "name": "Current (A)", "url": "mqtt://127.0.0.1", "logMqtt": true, "topics": { "getCurrentAmbientLightLevel": "/Voltage/pzem/Current (A)" } }, { "accessory": "mqttthing", "type": "lightSensor", "name": "Power (W)", "url": "mqtt://127.0.0.1", "logMqtt": true, "topics": { "getCurrentAmbientLightLevel": "/Voltage/pzem/Power (W)" } }, { "accessory": "mqttthing", "type": "lightSensor", "name": "Energy (Wh)", "url": "mqtt://127.0.0.1", "logMqtt": true, "topics": { "getCurrentAmbientLightLevel": "/Voltage/pzem/Energy (Wh)" } }

Фотоотчет 

Схему я собрал на монтажной плате и поместил в корпус. 

Примечание: На один модуль ESP8266 можно подключить 3-4 PZEM-004T, таким образом можно снимать показания с разных силовых узлов. 

На этой все. Ставьте лайки, подписывайтесь на мои публикации. Впереди нас ждет еще много всего интересного.


супер, спасибо

Круто

Классное решение👍Скажите, а возможно через HA отслеживать историю потребления скажем за месяц или год? И как быть,если например сервер с ha несколько суток будет отключен, то esp у себя данные не накапливает для последующей передачи? 

По поводу ХА, это лучше в чате спросить. Данные еср точно не собирает.

Помогите пожалуйста - немогу установить правильно брокер mqqqt. Делал сам образ raspberry и homebridge устанавливал и камеры заводил все гуд. но mqttt не работает. Cкачивал готовый образ и пытался загрузить его выходит вот что sudo systemctl enable mosquitto.service
mosquitto.service is not a native service, redirecting to systemd-sysv-install.
Executing: /lib/systemd/systemd-sysv-install enable mosquitto

Sonoff Pow r2 уже в корпусе + с реле на борту и дешевле... Смысл так извращаться?

Ты хочешь весь дом подключить на sonoff?

У меня с 10-к sonoff работают уже 2 года, недавно прикрутил их к Home Assistant и Google Home без танцев с бубнами.. Все работает, интеграция занимает минимум времени (не надо ничего травить / паять / кодить / отлаживать), цена дешевле комплектующих, регулярное обновление софта.



Сделал всё по этому мануалу, но данных нет.

Правильно ли я понимаю, что дело в неработоспособном модуле?....

1000x_image.png?1557421274

Штука прикольная, но размер великоват - в розетку сложно упаковать.

Сейчас думаю над вариантом ESP8266 +ACS712 (есть на 5А/20А/30А). Размер существенно меньше, чем у PZEM.

В статье описывается подключение PZEM-004t v1.0. В настоящее время продают только PZEM-004t V3.0, в них изменили протокол связи-так что этот способ и эта прошивка не подходят. надо сделать плагин для espeasy, спецы пишут что этот протокол даже полегче чем был. вот только когда это все будет, хочется на espeasy сделать энергомонитор...

Собрал все по схеме, 3 раза все перепроверил. Но ничего не работает :(

Статья вроде добротная, но не пойму почему не завелось

Думал сначала про разную версию PZEM-004t v1.0, но статья от 01.04.2019, модули я заказывал примерно как раз в это время. Тоесть статья по совсем устарешим железкам писалась?? Тогда зачем она вообще?

дело в версиях pzem, но новые тоже можно заставить работать 

как??

чтобы понять как что то добавить, нужно знать что добавлять 



https://sprut.ai/static/media/cache/00/47/06/5/2802314/50868/1000x_image.png?1580835069" alt="1000x_image.png?1580835069" />https://sprut.ai/static/media/cache/00/47/06/5/2802314/50869/1000x_image.png?1580835070" alt="1000x_image.png?1580835070" />

купил 
nodeMCU v3 и 2шт 
PZEM-004t v3.

пытаюсь их связать. Собственно делал все по статье, но ничего не заработало

в статье описано для pzen v1

для остальных версий где-то информация попадалась, но сейчас не могу найти 

Так в этом то вся и проблема. Что статья довольно таки свежая, а железки старые

Получается статья на текущий момент бесполезная. или хотя бы в теме надо писать что под v1

В итоге тоже весь инет щас переширстил, ничего найти не могу. Завтра продолжу :(



Сегодня случайно наткнулся на другую прошивку. Попробовал, все заработало

ESP_Easy_mega-20191003_PZEM_core_ESP8266_4M1M.bin

Если кому надо скину, где скачал уже не скажу, просто очень много чего качал :(

https://sprut.ai/static/media/cache/00/47/06/5/2802821/50966/1000x_image.png?1580906538" alt="1000x_image.png?1580906538" />

Нашел от куда прошивку качал. Если кому надо пользуйтесь

Автор не я, сначало прочитайте 

https://www.letscontrolit.com/forum/viewtopic.php?f=5&t=2595&start=100#p41093">https://www.letscontrolit.com/...

Не тестировали стабильность прошивки?

Висит такой приборчик, как раз третья версия. Прошивку пришлось писать самому, опираясь на библиотеку с гитхаба, на тот момент не было готовых, вроде EspEasy. Есть только одна проблема: каждый месяц расхождение между показаниями электросчетчика и pzem увеличиваются на 2 кВт*ч. И у меня нет даже вариантов как это исправить

На трехфазную сеть три комплекта собирать придется?

Можно еср-1, pzem-3



PZEM-004T и 1 еспэшка

Тасмота поддерживает это все давно уже (именно последние ревизии pzem). Как по мне, она и интерфейсом приятней, и устанавливается в 2 клика :) У меня 2 таких девайса уже более года работают, с отличием, что использовал esp12 для уменьшения общих габаритов. Один на электроплите, второй на входе в квартиру.

Всегда удивляет когда человек в профильной ветке про нивы начинает писать, что есть в дастере.




Вернуться назад

Устройства


Espressif Systems

ESP8266 NodeMcu v3

(16 отзывов)

Espressif Systems

wemos D1 mini

(6 отзывов)

Вернуться назад