Чипльдуплекс


Архитектура проекта “Умный дом” с приставкой Чипльдуплекс от интернет-радио Чипльдук.

Введение
Умный дом — система дистанционного управления электрическими приборами в доме,
а также их автоматизация.
Идея в том, что в быту существует много рутинных постоянно повторяющихся задач,
которые можно и нужно автоматизировать.
Именно с этим и помогает система “Умный дом”.
Поддержка STB (это ресиверы цифрового телевидения для получения цифрового сигнала по сетям передачи данных и преобразования его в аналоговый формат для обычных телевизоров, и в цифровой формат для новых телевизоров.)

Термины
Устройство - исполнительное устройство (реле, приставка, телевизор и т.д.).
Шлюз - устройство, которое обеспечивает связь между устройствами и сервером 4DUK.
Алиса - Яндекс Алиса.
Схема.

Описание.
Основываясь на исследованиях других проектов для умного дома - мы пришли к выводу, что первой причиной отказа от установки оборудования является - дороговизна. Из имеющихся на рынке устройств - все превышают 1000руб. Поэтому мы решили, что начнем с дешевой приставки, которая стоит не более 500руб без нашего программного обеспечения (цены на барахолках сильно завышены). Вторым фактором отказа от установки умного дома является - закрытые протоколы производителей устройств и подключение этих устройств к серверу производителя. Исключений нет - все устройства подключаются и в случае разрыва связи (интернета) умный дом превращается в "тыкву". В нашем случае все устройства независимы, кроме шлюза, который подключается к нашему серверу. Шлюз обеспечивает стандартный интерфейс голосового помощника (пока от Яндекс Алиса) и передачу данных устройствам в локальной сети пользователя.

Протокол связи простой - это пакет UDP по broadcast адресу на порт 9009 в виде -
device:devname: action:actionname: value:val.
Devname - имя устройства,
actionname - команда,
val - значение.
В нашем случае мы не выясняем IP адрес устройства, чтобы максимально сократить трафик на выяснение его и добавляем возможность делать дублирующие устройства с одним именем и функционалом.

Мы не ограничиваем пользователя в командах - он сам описывает их в интерфейсе умного дома. Он может сам выбирать имена устройств, которые ему удобны и делать обработчики на устройствах. Примером может служить пакет в виде -
devname:alldevices: control:power: value:off.
Если в устройств(е/ах) имеется для этой команды обработчик, то оно его выполнит. Так одной командой можно выключить все устройства, когда уходишь из дома.

Broadcast пакеты еще позволяют устанавливать в сети мониторинговые устройства, устройства логирования, устройства отображения и делать "волшебные" устройства. В свою очередь устройства могут отвечать состоянием в виде аналогичного пакета
devstate:devname: controlname: controlvalue .
devname - имя устройства,
controlname - имя датчика/параметра,
controlvalue - значение .

Отличие данного пакета в том, что шлюз распознает данный пакет, как и все устройства сети, обрабатывает и отправляет на сервер, где значение сохраняется, как состояние конкретного устройства. Написать простую программу для своего устройства, которая будет выполнять действие и отправлять состояние - сможет простой школьник в среде Arduino-IDE.


ЗАГРУЗКА
ПО
О
ПРОЕКТЕ
ВХОД
В НАСТРОЙКИ
ВХОД
В ЛК ТВ