Смарт удлинитель Broadlink MP1 - подключаем к системе Domoticz

Kvazis House / / комментарии
51

Здравствуйте друзья

В продолжение моих обзоров про возможности системы управления умным домом Domoticz, где аппаратную роль выполняли гаджеты Xiaomi, хочу рассказать про внедрение в систему устройств другого производителя —  Broadlink, на примере смарт удлинителя Broadlink MP1 и его совместной работе с существующей структурой Xiaomi. Подробности далее

55

Вступительное слово

Одним из достоинств альтернативных систем управления умным домом, на примере - Domoticz, является возможность объединения в одних сценариях устройств различных производителей. Не исследовать эту тему было бы преступлением :) 

В качестве первого испытуемого я решил взять смарт удлинитель Broadlink MP1 — имеющий 4 универсальные розетки с раздельным управлением. В некоторых случаях — когда нет необходимости подсчета расхода электроэнергии и при концентрации в одном месте нескольких ведомых устройств, такое решение удобнее и дешевле использования отдельных розеток от того же Xiaomi. 

Покупка и доставка

Герой обзора куплен в магазине Banggood — на страницу товара

58

Отправлен он был на следующий день, почтой Китая с трек номером. Через положенное время — чуть более двух недель, в отделении почты я получил пакет с заказом. Кроме самого удлинителя, магазин вложил еще переходник под евро розетку и пару наклеек.

Broadlink как и Xiaomi не напрягается с полиграфическими изысками, больше уделяя внимание технической информации. 

Внешний вид, параметры

Удлинитель выполнен в белом цвете, на фронтальной панели расположены 4 совмещенные розетки, рассчитанные на подключение вилок Тип А, С, I

Из основных характеристик нужно выделить максимальную мощность — 2500 Вт, но не более 10 А и установленный Wi-Fi модуль, никаких шлюзов для работы не нужно. В стандартном режиме удлинитель управляется через приложение. Кстати нам оно тоже понадобится. QR код для его загрузки, имеется и на коробке и на наклейке сзади удлинителя.

Удлинитель комплектуется тройной вилкой Тип I. Использовать комплектный переходник не рекомендую — лучше заменить вилку на сборную евровилку.

Реальные размеры соответствуют заявленным — 254 х 60 х 32. Взвешивать я его пожалуй не буду.

Разборка

Для разборки удлинителя, необходимо открутить 5 саморезов с треугольной головкой. 4 самореза находятся по углам — за наклеенными ножками, пятый — по центру, под наклейкой. 

К достоинствам этого удлинителя можно отнести раздельное управление каждой из розеток. К недостаткам — невозможность делать это вручную и отсутствие подсчета электроэнергии.

Блок управления и Wi-Fi модуль

Розетки защищены подпружинеными крышками — заглушками.

Так же на самих розетках, поверх контактов, расположены пластиковые защитные крышки.

При включении обод единственной кнопки управления подсвечивается

Первое включение, штатное ПО

Для подключения у смарт удлинителю нам понадобится родное приложение E-control. Если это ваше первое устройство от Broadlink — как у меня, то нужно создать аккаунт. Это недолго и несложно — понадобится электронная почта, и нужно придумать пароль. После авторизации в приложении — нужно будет добавить устройство

Далее вам будет необходимо подключить найденное устройство к своей wi-fi сети, после чего удлинитель появится у вас в списке устройств. Приложение позволяет управлять состоянием каждой из четырех розеток фильтра, устанавливать расписание включения — выключения, задать имя и даже собственное изображение для иконки удлинителя. 

Подробнее рассказывать о приложении не буду, так как тема обзора — это интеграция удлинителя в инфраструктуру Domoticz. Напомню у меня он крутится на одноплатном миникомпе Raspberry Pi Model 3 B. Внимание —  обязательно настраиваем на домашнем роутере, выдачу статического IP адреса удлинителю, привязав его к mac. 

Подключение к Domoticz

Для управления устройствами Broadlink — базами дистанционного управления, сенсорной платформой A1, смарт розетками и удлинителем, имеется замечательный проект - https://github.com/mjg59/python-broadlink. Основой послужила инструкция для работы с базой дистанционного управления с 4pda и переработана мной для удлинителя mp1. Инструкция ниже успешно опробована мной на Raspberry Pi Model 3 B, и вполне может применяться на схожих решениях, на Windows — аналогов нет (ну либо они мне неизвестны). 

Инструкцию пишу по шагам как делал я лично

1. Создание рабочего каталога — sudo mkdir /python-broadlink

Нам необходимо установить несколько пакетов, необходимых для работы - 

sudo apt-get install python2.7 -y
sudo apt-get install python-pip -y
sudo apt-get install python-dev libgmp-dev
sudo apt-get install git -y
git clone https://github.com/mjg59/python-broadlink

Некоторые пакеты уже могут быть установлены в вашей системе, это нормально, просто запускаем по очереди все.

те, пакеты которых не хватает, будут скачаны и установлены в систему

Дальше, переходим в наш созданный каталог

cd python-broadlink

И запускаем установку 

python setup.py install

Теперь мы можем создавать первый скрипт — поиска устройств Broadlink, создаем файл locatrm.py (все имена файлов — можете давать сами, какие считаете нужным).

sudo nano locatrm.py

В открывшийся пустой файл вставляем скрипт

#!/usr/bin/python
# -*- coding: utf-8 -*-

#Script to locate Broadlink devices on local network by Graeme Brown Dec 23 2016
#These must be set up using the Broadlink app first!

import broadlink
import time

print "************************************************"
print «Using python library created by Matthew Garrett»
print «https://github.com/mjg59/python-broadlink»
print "************************************************"
print «Сканирую сеть для поиска устройств Broadlink....»

mydevices = broadlink.discover(timeout=5)
print «Найдено » + str(len(mydevices )) + " устройство broadlink"
time.sleep(1)
print "..............."

for index, item in enumerate(mydevices):

mydevices[index].auth()

ipadd = mydevices[index].host
ipadd = str(ipadd)
print «Устройство » + str(index + 1) +" Host address = " + ipadd[1:19]
macadd = ''.join(format(x, '02x') for x in mydevices[index].mac[::-1])
macadd = str(macadd)

mymacadd = macadd[:2] + " " + macadd[2:4] + " " + macadd[4:6] + " " + macadd[6:8] + " " + macadd[8:10] + " " + macadd[10:12]
print «Устройство » + str(index + 1) +" MAC address = " + mymacadd
print "..............."

Выходим из режима редактирования CTRL+X сохраняя все изменения. 

Запускаем скрипт командой 

python locatrm.py

Скрипт обнаруживает удлинитель и сообщает его IP и mac адрес

Теперь делаем скрипт для проверки статуса удлинителя. Делал я его скорее для общего развития, для работы он мне не пригодился. Создаем файл s1stat.py 

sudo nano s1stat.py

Вставляем код 

#!/usr/bin/python

import broadlink
devices = broadlink.mp1(host=(«192.168.0.102»,80), mac=bytearray.fromhex(«34EA34A5373B»)) — тут Ваши ИП и Мак удлинителя
devices.auth()

print devices.check_power() — эта команда выводит статус всех розеток

Делаем сохраненый скрипт исполняемым

sudo chmod +x s1stat.py 

Запускаем, проверяем

python s1stat.py

Если все сделано правильно — вы получаете статусы всех розеток


Теперь можно делать скрипты для включения и выключения каждой розетки. Всего у нас 4 розетки, значит получится 8 скриптов. Код скрипта аналогичный вышеприведенному, только вместо команды проверки статуса пишем команду на включение 

devices.set_power(1, True) — первая розетка включить 

Или выключение

devices.set_power(1, False) — первая розетка выключить

Я называл файлы s1on.py, s1off.py и так далее для всех 4х пар.

После создания файлов, нужно сделать каждый из файлов исполняемым - 

sudo chmod +x s1on.py — повторить для всех

Можно проверить их работоспособность включая и выключая каждую из розеток

python s1on.py — включение первой розетки

И дать им права

sudo chmod 777 /home/pi/python-broadlink/s1on.py  — повторить для всех

Теперь можно переходить в Domoticz, на вкладке Настройки — Оборудование — создаем (если у вас еще нет) виртуальное устройство Dummy. После чего создаем 4 виртуальных переключателя, я назвал их 

Broadlink 1, S1, Broadlink 1, S2,  Broadlink 1, S3 и Broadlink 1, S4. 

Далее идем в меню переключатели, выбираем каждый из созданных переключателей, меняем им иконку на розетку — так понятнее, и в строках действие при включении и выключении прописываем пути к нашим скриптам. Например к розетке номер 2 

script:///home/pi/python-broadlink/s2on.py — включить 

script:///home/pi/python-broadlink/s2off.py  — выключить 

Все, теперь каждая из розеток может управляться из Domoticz. В моем удлинителе сейчас занято 3 первые розетки, в первую включена обычная настольная лампа, во вторую один из увлажнителей, в третью — принтер, так как включать его родным переключателем — неудобно, мешает стол. 

Первой и третьей розеткой управляет кнопка Xiaomi, по действию клик — включается и выключается настольная лапа, дабл клик — управляет включением и выключением потолочного светильника Yeelight Celling Light, про который я рассказывал раньше и лонг клик — включение и выключение принтера. Сценарий на lua выглядит так:

Вторая розетка работает в связке с датчиками влажности / температуры и открытия от Xiaomi. 

Первое условие выключает увлажнитель при достижении влажности 55 и выше%, второе — включает при падении 45 и менее%, третье условие отключает увлажнитель при открытии окна, четвертое — включает при закрытии окна и влажности менее 45%. Кстати сценарий сейчас я чуть доработал, добавив во второе условие — на включение — проверку статуса оконного датчика, что-бы увлажнитель не включался при открытом окне.

Видеоверсия обзора

На этом все, спасибо за внимание, если тема интересна — буду продолжать рассказывать про интеграцию других устройств в систему управления умным домом Domoticz.

7 комментариев

  
Валерий Куриленко
Отличная статья! А через родной плагин broadlink в domoticz не пробовали? Или плагин только через rm2 работает?
kvazis
Нет, сразу делал как описано. Сейчас еще прикрутил так же rm plus — полет нормальный, будет чуть позже обзор
Валерий Куриленко
Буду ждать. Сам строю точь в точь систему с domoticz и xiaomi, только на малине еще плата razzberry для z-wave и broadlink rm2. Поэтому очень интересно наблюдать за вашим блогом
kvazis
broadlink и особенно ничем кроме корпуса не отличаются. А вот по z-wave я бы и сам почитал, тема интересная
комментарий был удален
Тваревед
а подключить этот удлиннитель напрямую к михоум никак нельзя ?)
kvazis
Конечно нет. Было бы странно если бы можно было
Оставить комментарий

997