Приветствую, друзья!
Этот обзор будет посвящен очень интересной управляемой Zigbee розетке Heiman. А также, на ее примере, я расскажу немного о работе MQTT брокера и его взаимодействии с системой управления умным домом Home Assistant и аддоном zigbee2mqtt.
Ссылки
- Розетку покупал на Aliexpress - тут (на момент публикации $27).
- Плейлист уроков по Home Assistant.
- Мой канал в телеграм.
Видео версия
Текстовая версия
Поставка
Поставляется розетка в простой картонной коробке без опознавательных знаков, если не считать криво наклеенной бумажки.
Никакой особенной защиты не предусмотрено, не считая еще почтового пакета, но, тем не менее, все доехало в целости и сохранности. В комплекте поставки только розетка и инструкция на английском языке, которая пригодится при сопряжении устройства.
Внешний вид
Розетка мне очень напомнила BlitzWolf BW-SHP2, wi-fi версию с энергомониторингом, кто не видел обзор - тыц. Просто один в один. Кстати говоря BlitzWolf отлично себя чувствует и по сей день.
Рассчитано устройство на глубокие розетки формата Schuko с заземлением, вилка имеет толстые контакты, максимальный ток указан 16 А.
При этом, производитель не рекомендует использовать с нагрузками более 3000 Ватт, что при стандарте напряжения в 230 В составляет примерно 13 А.
Розетка имеет защищенные контакты - для того, чтобы вставить в нее вилку, необходимо некоторое усилие, несложное для взрослого, но проблемное для маленького ребенка.
Внешнее управление и индикация вынесены в одну кнопку, находящуюся на условно верхнем торце. Короткое нажатие служит для переключения состояния реле, удерживание - для сопряжения.
Разборка
Для разборки гаджета необходимо открутить 4 самореза, головки которых видны на задней стороне. Но это может быть не так просто, как кажется на первый взгляд, из-за их формы. Я давно уже купил пару наборов отверток со всеми возможными видами сменных бит, треугольная - еще не самая необычная из них.
Саморезы соединяют заднюю часть ( к которой прикреплена плата управления) с передней пластиковой крышкой корпуса.
Давайте приступим к осмотру. В целом - впечатление сложилось хорошее, сборка аккуратная, более качественная, чем у упомянутого BlitzWolf.
Zigbee модуль, что-то из линейки, которую разработали специально для экосистемы Tuya Smart, к которой принадлежит устройство.
Реле на 16А и максимальное напряжение 250 Вольт, что дает 4000 Ватт, очевидно, ограничение производителя в 3 КВт связано не с ним.
Как я и сказал - все сделано очень аккуратно, нет следов не смытого флюса или некачественной пайки. Сзади на плате Zigbee модуля видны контакты для подключения программатора, но, к счастью, необходимости в этом нет.
В одном из углов внимание привлекает массивный шунт. На этом же слайде видны защелки, при помощи которых плата держится на задней части корпуса.
Достанем плату полностью и взглянем, так сказать, на обратную сторону "Луны". Тут у нас смонтирована логика - микроконтроллер управляющий гаджетом.
Это STM8S003F3P6 - 8 битный, 16 МГц контроллер с 8 Кб flash памяти. Его возможностей с головой хватит для управления такого класса устройством.
Энергомониторинг основан на, можно сказать, классике жанра - счетчике HLW8012. Кстати такой же использовался и на BlitzWolf, он же используется в реле Sonoff с энергомониторингом и многих других.
Силовая часть - шунт и провода, спаяны очень основательно, еще раз плюс в копилку розетки. Дорожки нагрузки хорошо пропаяны, а между ними на плате сделан специальный выпил.
Сопряжение
Согласно инструкции, для перевода розетки в режим сопряжения, нужно нажать и отпустить кнопку после того, как начнет мерцать светодиод.
При помощи аддона zigbee2mqttassistant активируем режим подключения новых устройств. Включаем розетку к сети питания и нажимаем кнопку до трехкратной вспышки индикатора. Розетка без проблем залетела в сеть, напомню, я использую стик CC2538, и отобразилась в общем списке устройств.
В меню интеграций Home Assistant, в список устройств MQTT, новое устройство затягивается автоматически. Корректно определяется производитель и модель устройства. По умолчанию, для розетки пробрасывается три сущности - это уровень сигнала, сенсор, показывающий текущую нагрузку и свич - управление реле розетки.
MQTT Брокер
Пришло время поговорить о MQTT брокере. Для того, чтобы к нему подключится, нам пригодится программа вроде MQTT Explorer, ссылка. Подключаемся по IP адресу инстанса, используя логин и пароль брокера.
Представим его себе в виде эдакого почтового отделения, где корневые топики - это отдельные "многоквартирные дома" где проживает большое количество жителей, со своими уникальными номерами квартир. Топик - "дом" zigbee2mqtt, созданный и управляемый одноименным аддоном, содержит в себе "адреса" zigbee устройств.
Каждое из них имеет свой отдельный топик - "номер квартиры", в котором содержатся и обновляются данные - как принимаемые с устройства, так и отправляемые на него. В самом низу - топик свежедобавленной розетки. Но вот что интересно, в нем, кроме того, что мы уже видели в интеграции HA, еще есть информация о напряжении в сети и токе нагрузки. Займемся пробросом этих данных в home assistant.
Но сначала, чтобы не делать двойную работу, переименуем топик в более читаемый, подробнее как это делать - в моем видео про сравнение стиков СС2531 и СС2538, ccылка. Важно - используем только английский алфавит, никакой кириллицы, и указываем опцию сохранения данных retain: true
Для применения настроек идем в меню Supervisor - аддон zigbee2mqtt и нажимаем на кнопку Restart. В момент перезапуска, Zigbee устройства, кроме тех, на которых настроен прямой биндинг, работать не будут. Весь процесс занимает около минуты, после успешного перезапуска на странице логов можно увидеть сообщения от устройств.
Возвращаемся в MQTT Explorer и видим, что у устройства изменилось название топика, именно поэтому нельзя использовать кириллицу - ведь все интеграции завязаны на его имя. Хоть опция и называется friendly name, но, в отличии от таковой в home assistant, она влияет не только на визуальное отображение. Даже если у вас поначалу кириллица будет работать вроде как и нормально, очень велика вероятность проблем с этим устройством в будущем.
Но технические имена сенсоров (они используются в автоматизациях) останутся те, что перебросились в самом начале - состоящие из цифр MAC адреса розетки.
Разберемся, как это все автоматом попадает в Home Assistant. Ответ - во включенном режиме обнаружения, discovery - и его префиксу, homeassistant.Префикс - это имя корневого топика MQTT брокера, в котором содержится информация о сущностях home assistant.
В нем содержатся суб топики - имена которых совпадают с названиями доменов устройств home assistant - сенсоры, бинарные сенсоры, свичи и так далее.В разделе сенсоров, по техническому имени, находим топик нашей розетки. В нем содержится два параметра - уровень сигнала и нагрузка в Ваттах, то, что мы и видим в интеграции.
Зайдем в топик power и посмотрим в его конфиг. Его создает аддон zigbee2mqtt, но при этом, данных в этом топике нет, он содержит в себе только ссылки на реальный топик этой розетки в разделе zigbee2mqtt. Над его содержимым есть кнопка - скопировать в буфер обмена, возьмем его в качестве шаблона.
Вставляем в любой текстовый редактор и на его основе сделаем сенсор для напряжения. Единицы измерения Ватты меняем на Вольты. Сенсор забирает значение атрибута power (это все мы видели в топике zigbee2mqtt). Нам нужен, взятый оттуда же, атрибут напряжения. Ищем дальше, большая часть информации в топике останется без изменений. Находим имя и меняем имя сенсора мощности на сенсор напряжения. Еще одно место для замены - уникальный ID устройства в системе. По аналогии меняем мощность на напряжение, а данном примере ничего больше менять не пришлось.
Было
Стало
Возвращаемся в MQTT Explorer - в правой верхней части видим полный путь к топику конфиг, и кнопку скопировать над ним - копируем.
Вставляем путь в раздел Publish и меняем слово power на voltage. В окно текста - режим по умолчанию json, вставляем исправленный текст для сенсора напряжения. Ставим ниже галочку в чекбокс retain - для сохранения этого топика в брокере, и после этого на кнопку Publish.
Теперь в топике устройства, кроме мощности и уровня сигнала, у нас появился и топик напряжения.
Идем в меню интеграций и видим, что Home Assistant затянул к розетке только что созданный нами сенсор. Это единоразовая операция для каждого нового сенсора, потому что мы включили опцию retain, а данные он берет напрямую из топика zigbee2mqtt.
Розетка отдает еще и силу тока, можем забрать и ее. Единицы измерения - Амперы. Данные берутся из атрибута current, указываем его. Кстати иконку по умолчанию тоже можно поменять, взяв из стандартного набора. Все операции - в точности такие же, как мы проделали для напряжения.
После изменений конфига, опять копируем полный путь топика (мощности или напряжение), меняем имя на силу тока - current. Вставляем измененный конфиг, обязательно отмечаем retain и публикуем.
Еще один сенсор появляется в топике розетки. Если вы в чем-то ошиблись - ничего страшного, ошибочный топик можно удалить.
Проверяем в интеграции - теперь все показания, которые отдаются розеткой, есть и в home assistant. Для проверки включаю свой, уже протестированный ранее 2 кВт электрочайник, все параметры - корректны.
Кстати я рекомендую пройтись по топикам всех устройств, например, я неожиданно обнаружил, что одна из настенных розеток Aqara QBCZ11LM отдает напряжение сети, другая, точно такая же - нет. По такому же методу я получил дополнительный полезный сенсор.
В zigbee2mqtt assistant розетка получила свою аватарку, в параметрах отображаются все добавленные нами сенсоры. Как и другие zigbee устройства со стационарным питанием и нулевой линией - розетка является роутером и расширяет zigbee сеть. На карте сети она строит связи с другими роутерами, конечные устройства, со временем, могут переподключится с координатора на нее.
Использование
И закончим обзор еще парой наблюдений по использованию. Размер розетки не мешает ее использованию в стандартной линейке настенных розеток.
Когда розетка включена - кнопка светится синим цветом, причем довольно ярко, в темноте видно хорошо.
Спасибо за внимание!
Спасибо за подробный обзор.
Интересно от чего зависит указываемая производителями максимальная мощность?
Встречал на розетках реле на 16А, но в характеристиках указано только 2500 Вт. Запас? Упрощенная сертификация?
Еще есть счетчик потребления/вольтметр/амперметр - он тоже может влиять
Спасибо. Так (текстом) намного интересней, чем видео.
Есть вопрос по Mi Power plug ZigBee (ZNCZ02LM). Можно ли обнулить накопленные
kWh?
Немного иной девайс, но все равно спасибо, Алексей, что делитесь своим Опытом.