Проводной интерфейс домашней автоматизации
Добавлено: Чт дек 24, 2015 3:58 pm
Не вдаваясь в критику существующих интерфейсов, используемых для домашней автоматизации, рискну уподобиться Лютеру и прибить на двери храма свои тезисы:
- Основной интерфейс должен использовать провода. Беспроводные интерфейсы могут использоваться как дополнение проводного интерфейса там, где это практично. Принципиальная разница между проводными и беспроводными интерфейсами состоит в том, что проводные интерфейсы обеспечивают надежное управление и обмен данными.
- В качестве основного (рекомендуемого) кабеля должен использоваться кабель Cat5/Cat6. Из четырех витых пар кабеля:
- одна витая пара используется для обмена данными
- одна витая пара является общим проводом
- одна витая пара передает питание (ток до одного ампера), типовое значение +12В или +24В, в зависимости от обстоятельств. +12В предпочтительно если типичные расстояния между крайними узлами в сети до 100м, однако +24В тоже может использоваться если расстояния большие.
- одна витая пара - запасная, может использоваться, например, для передачи видео от камер наблюдения. - На физическом уровне приемопередатчики - CAN, однако обмен ведется при помощи обычных UART на скорости 19.2 kbps. При такой скорости топология может быть произвольной. В минимальном случае для обмена пригодны самые маленькие и дешевые Arduino, у которых к UART-у надо будет довесить шинный формирователь CAN
- Протокол CSMA/CD, при передаче узел обязан слушать свое "эхо" и сравнивать с переданными данными. Если на шине тихо, то любой узел имеет право начать передачу в любой момент времени. Коллизии, возникающие при одновременной передаче двух или более узлов, обнаруживаются, после чего узлы, участвовавшие в коллизии, выдерживают рандомизированные паузы и пробуют повторить передачу.
- Протокол обмена - максимально приближенный к MQTT-SN. Однако все сообщения, проходящие по физическому интерфейсу, парсятся и воспринимаются всеми узлами. Поэтому в локальной сети подписка к брокеру не требуется. Вместо подписки в локальной сети реализуется принцип "производитель-потребитель", в результате чего интерфейс становится пригодным для управления светом.
- Помимо MQTT-SN, который в локальной сети действует как "точка-многоточка", для конфигурирования узлов используется несложный протокол "точка-точка". Настройки сохраняются в энергонезависимой памяти узлов.