Умный Дом — голосовое управление в три шага. Raspberry + HomeKit.
Уважаемые друзья!
Мы решили поделиться с Вами бюджетным готовым решением, надеемся Вы оцените наши старания. Решение проверенное, рабочее. Во вложении можно скачать все файлы программ и настройки. Отдаем все бесплатно.
Умный дом для заказчика в основном «игрушка» которым можно похвастаться перед друзьями, но эти игры стоят не малых усилий интеграторам!
Речь пойдет о некоторых проблемах и решениях, связанных именно с освещением в доме, как о неотъемлемом блоке «умного дома».
Проблема 1: Если система централизованная, то в случае сбоя центрального контроллера программа не может управлять реле включения света.
Решение: Использовать распределенные модули управления с внутренней логикой, по нашему опыту одним из самых зарекомендовавших себя устройств в этом — программируемое реле ПР200 производства компании ОВЕН. Советуем использовать версию 220 В, т.к. бытовые выключатели рассчитаны именно на это напряжение и будет меньше проблем с логической «единицей» на дискретном входе.
Умный Дом — голосовое управление в три шага. Raspberry + HomeKit., изображение №1 © sun9-34.userapi.com
Это устройство имеет 8 каналов (реле) которые можно запрограммировать с использованием внутренней логики (как распределенную систему), дополнительно подключаются еще модули расширения 2шт. по 8 каналов, но тут есть риск остаться без большего количество управляемых светильников при выходе из строя самого ПР200 (8 каналов против 24), если соберетесь экономить, подумайте!
Пример программы одного канала в программе OWEN LOGIC © sun9-24.userapi.com
Пример программы одного канала в программе OWEN LOGIC
Несмотря на то, что программу выглядит просто, к ней мы шли несколько лет не по своей вине, компания Овен относительно недавно (после появления ПР200) добавила возможность управлять сетевой переменной как с наружи, так и изнутри.
Подробнее о программе:
I8 — это дискретный вход с 8 выключателя в доме или комнате
RTRIG — детектор переднего, необходим для формирования единичного (на один цикл программы) импульса
TO INT — преобразования Bool в INT можно было бы и обойтись, но Slave сетевая переменная в Owen Logic не поддерживает bool.
XOR — исключающее или, если на одном входе 1, то и выход 1, если на оба входа подать 1 выход обнулится, основной элемент программы, который решает по нажатию на выключатель включить или выключить свет.
Реле8 — входная и выходная сетевая переменная, как я и говорил выше с недавнего времени можно использовать эти две переменные с одним регистром (адресом) Modbus, это нам дает возможность сохранить в нее необходимое нам состояние как снаружи, так и внутри без использования различных триггеров. Эти сетевые переменные имеют энергонезависимую память, поэтому при скачке напряжения освещение вернется в последнее состояние.
TO BOOL — конвертируем INT в BOOL значение, потому как реле на выходе имеет состояние False/True
Шаг 1: программу для 8 каналов можно скачать тут и залить в программируемое реле, не забудьте сменить целевую платформу для своей версии ПР200/110 иначе прошить устройство не удастся!
Проблема 2: стандартные бытовые выключатели имеют состояния включен либо выключен, что в корне противоречит логике управления освещением в умном доме, нам нужны кнопки без фиксации (с пружинками).
Решение 1: Использовать готовые кнопки без фиксации, которые есть у большинства производителей выключателей таких как Shneider, Biticino, ABB и др. (рекомендованное решение, хоть кнопки в одном положении и включенных и выключенных ламп это выглядит эстетически красиво)
Решение 2: Отлавливать в ПР200/110 изменение состояния входа при использование типичного бытового выключателя с фиксацией и дальше посылать импульс программе которую скачали выше, если свет был включен то он погаснет и наоборот (не рекомендуется, т.к. через некоторое время все кнопки будут перепутаны верх и низ)
Проблема 3: верхний уровень у большинства производителей систем умного дома не дотягивает до эстетического и функционального совершенства.
Решение: используем HomeKit от Apple, которое: функционально, удобно и есть голосовое управление.
Шаг 2: стыкуем ПР200/110 с HomeKit
Для этого необходимы следующие инструменты:
а) Решение рекомендованное для демонстраций:
Raspberry Pi 2/¾ и к нему usb конвертер rs485 (например с Alliexpress)
Умный Дом — голосовое управление в три шага. Raspberry + HomeKit., изображение №3 © sun9-44.userapi.com
б) Решение рекомендованное для инсталляций на базе модуля Raspberry CM3+ (AntexGate) в промышленном исполнении c 2 двумя встроенными RS485 портами:
Умный Дом — голосовое управление в три шага. Raspberry + HomeKit., изображение №4 © sun9-35.userapi.com
Подключите Ваше устройство на базе Raspberry к питанию и домашней сети желательно патчкордом, а не по wifi.
Соедините RS485 порт Вашего устройства и ПР200/110.
Далее определите IP адрес который выдал Ваш роутер и подключитесь по SSh например через программу PUTTY (по умолчанию логин pi пароль raspberry)
Установите программный продукт node-red для стыковки протокола HomeKit на верхнем уровне и Modbus Rtu на нижнем, смотри инструкцию по установке тут.
Не забудьте сделать Ваш node-red сервисом для автозагрузки.
Установите пакет HomeKit и modbus для node-red
cd ~/.node-red
npm install node-red-contrib-homekit
npm install node-red-contrib-modbus
sudo reboot
Ждем перезагрузки и переходим в браузер «ВАШ IP»:1880 (например
Копируем следующий поток (код во вложении) и вставляем в веб интерфейс «движка» правил node-red
Заходим в Menuàimportàвставляем потокàimport
Умный Дом — голосовое управление в три шага. Raspberry + HomeKit., изображение №7 © sun9-62.userapi.com
Умный Дом — голосовое управление в три шага. Raspberry + HomeKit., изображение №8 © sun9-62.userapi.com
Умный Дом — голосовое управление в три шага. Raspberry + HomeKit., изображение №9 © sun9-14.userapi.com
Необходимо применить поток нажав на кнопку Deploy
В случае неудачи советуем правильно указать RS485 порт в настройках Modbus плагина «Запрос модбас» и «Write Reset FC6» (пример /dev/ttyUSB0).
Для достоверности перезагрузите Ваше устройство SSH à sudo reboot
Настройка приложения на Вашем Apple устройстве довольно простая.
Умный Дом — голосовое управление в три шага. Raspberry + HomeKit., изображение №10 © sun9-11.userapi.com
Даем имя нашему дому по желанию, в нашем примере ПР200
Умный Дом — голосовое управление в три шага. Raspberry + HomeKit., изображение №11 © sun9-25.userapi.com
Добавляем и соглашаемся использовать несертефицированный аксессуар
Умный Дом — голосовое управление в три шага. Raspberry + HomeKit., изображение №12 © sun9-50.userapi.com
Вводим код доступа, в нашем случае 111 11 111, его можно заменить в настройках Node-red в каждом из аксессуаров HomeKit
Умный Дом — голосовое управление в три шага. Raspberry + HomeKit., изображение №13 © sun9-18.userapi.com
Добавляем все наши лампы в комнаты, это можно сделать позже.
Желаем Вам приятного использования такой недорогой, но очень удобной системы.
Внимание:
Мы не агитируем к коммерческому использованию протокол HomeKit, любые действия противоречащие лицензионному соглашению APPLE по использованию протокола HomeKit разработчик берет на себя!
Все вложения можно скачать на нашей странице ВК
Кстати, а вы знали, что на «Сделано у нас» статьи публикуют посетители, такие же как и вы? И никакой премодерации, согласований и разрешений! Любой может добавить новость. А лучшие попадут в наш Телеграм @sdelanounas_ru. Подробнее о том как работает наш сайт здесь👈
Поделись позитивом в своих соцсетях
Комментарии 0