Wiren board 5

Other languages: English • ‎русский

В данной статье освещаются сетевые аспекты профессиональной инсталляции контроллера на производственных и коммерческих объектах.

Содержание

Выбор сетевой комплектации контроллера

Контроллеры Wiren Board 6 поставляются с разным набором сетевых устройств. Необходимо понять, в каких условиях будет эксплуатироваться контроллер и какая комплектация будет оптимальной.

Минимальная комплектация

Контроллеры Wiren Board 6 в любой комплектации имеют два Ethernet-интерфейса 100 Мбит/с (eth0, eth1) на борту.

Расширенные возможности

Опционально контроллеры поставляются с Wi-Fi-интерфейсом (wlan0) (802.11bgn 2.4G), с 3G-модемом (WCDMA/HSPA, GSM/GPRS/EDGE) или 2G-модемом (GPRS). С помощью любого из них вы можете подключить контроллер к интернету, а с помощью Ethernet и Wi-Fi — еще и к локальной сети. 3G-модем реализован на чипе SIMCom SIM5300E, 2G-модем реализован на чипах SIMCom SIM800 или Neoway M660A, Wi-Fi — на чипе Realtek 8723BU.

Заводская конфигурация сетевых устройств

Ethernet

В заводской конфигурации в контроллере настроены оба Ethernet-интерфейса, Wi-Fi и loopback. Файл сетевых настроек — /etc/network/interfaces. Интерфейсы eth0/1 не имеют фиксированного адреса и получают сетевые настройки по DHCP.

Wi-Fi

На Wi-Fi интерфейсе wlan0 по умолчанию поднята открытая точка доступа с фиксированным адресом 192.168.42.1, клиенты получают адреса по DHCP, которые раздает демон dnsmasq, в диапазоне 192.168.42.50 — 192.168.42.150. SSID беспроводной сети контроллера формируется из префикса «WirenBoard-” и серийного номера контроллера, нанесенного на боковой наклейке. В беспроводной сети контроллер имеет не только IP-адрес, но и DNS-алиасы для удобства подключения, wiren, wiren.local, wiren_board, wirenboard.local, wirenboard.

GPRS

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

Опционально контроллер комплектуется 3G или 2G-модемами (модемы несъемные и распаиваются на плате, на производстве).

3G-модем

Модем представлен в системе двумя устройствами: /dev/ttyGSM (линк на один из консольных портов ttymxc), подключенного к UART-интерфейсу чипа модема и составного USB-устройства /dev/ttyACM0-6. Для коммуникации используется ttyACM0. Ограничения UART-порта не позволяют реализовать весь потенциал скорости передачи данных в 3G-сетях (теоретически до 7,2 Мбит/с на приём и до 5,76 Мбит/с на передачу). Порт ttyACM0 ограничен только скоростью передачи данных интерфейса USB2.0 (теоретически — до 280 Мбит/с).

Наличие двух интерфейсов позволяет одновременно использовать первое устройство (/dev/ttyGSM) для отправки AT-команд (узнать уровень сигнала сотовой связи, отправить SMS, USSD-запрос баланса и проч.) через программы minicom или gammu, а второе (/dev/ttyACM0) — для сетевой коммуникации.

В контроллере доступно аппаратное управление включением/выключением модема через его вход PWRKEY, состояние которого управляется одним из GPIO процессора. Для пользователя интерфейс управления питанием модема предоставляет команда wb-gsm с опциями on, off, reset, restart_if_broken.

2G-модем

Максимальная скорость передачи данных в GPRS составляет 85,6 кбит/с, чего явно недостаточно для передачи больших объемов данных. GPRD-канал может использоваться для доступа к интерфейсу командной строки (ssh) или для отправки SMS. 2G-модемы представлены в системе одним устройством, /dev/ttyGSM. Одновременная передача данных и AT-команд в 2G-модеме не реализована.

GSM-антенны

Контроллер опционально комплектуется одной из двух GSM-антенн: выносной, на кабеле 2,5м, с коэффициентом усиления 3,5 дБ, или короткой штыревой антенной, навинчивающейся прямо на SMA(female)-разъем контроллера. При монтаже контроллера в металлических боксах следует использовать выносную антенну. Штатные антенны контроллера обеспечивают связь в условиях хорошего приема. В сложных радиоусловиях необходимо приобретать антенны с бóльшим коэффициентом усиления или направленные антенны. Диапазон частот 3G-антенн — 1900-2100 МГц, 2G — 900/1800 МГц. Разъем кабеля антенны — SMA(male).

Настройка сетевых интерфейсов

Настройка Ethernet-интерфейсов

Часто возникает необходимость, чтобы контроллер имел постоянный адрес в локальной сети. Это достигается либо настройками DНCP-сервера (привязкой IP-адреса к MAC-адресу сетевого интерфейса контроллера), либо явным указанием IP-адреса в сетевых настройках.

Рассмотрим более подробно, как задать фиксированный адрес на Ethernet-интерфейсе.

Для настроек статического адреса задайте следующую конфигурацию:

auto eth0 iface eth0 inet static address 192.0.2.7 netmask 255.255.255.0 gateway 192.0.2.254 hostname Wirenboard

Можете добавлять свои DNS-сервера по аналогии:

nameserver 192.168.0.1 nameserver 8.8.8.8 nameservеr 8.8.4.4

Эти сервера использует сервис dnsmasq, который обслуживает локальные DNS-запросы на контроллере. Чтобы понять, какие именно upstream-сервера используются dnsmasq в настоящий момент, выполните команды

service dnsmasq stop dnsmasq —no-daemon —log-queries ^C service dnsmasq start

Программа dnsmasq выведет в консоль, какие сервера используются, например:

dnsmasq: using nameserver 192.168.0.1#53 dnsmasq: using nameserver 8.8.8.8#53 dnsmasq: using nameserver 8.8.4.4#53

Настройка Wi-Fi

Параметры точки доступа определяет демон hostapd (файл настроек /etc/hostapd.conf). Чтобы подключаться к контроллеру по Wi-Fi, по защищенному каналу, допишите в конец файла /etc/hostapd.conf следующую конфигурацию:

wpa=2 wpa_passphrase=your_password wpa_key_mgmt=WPA-PSK wpa_pairwise=TKIP CCMP

Перезапустите hostapd: /etc/init.d/hostapd restart, после чего подключение к контроллеру по Wi-Fi будет возможно только с паролем your_password.

Пример настройки Wi_Fi адаптера для подключения к локальной сети можно найти в нашей wiki.

Настройка PPP

На контроллере предустановлен демон pppd, который используется для создания подключения к сети провайдера через 3G/2G-модем. Демон pppd создает при подключении сетевой интерфейс ppp (ppp0 по умолчанию). В заводской конфигурации настройки порта ppp0 закомментированы, и установления соединения с провайдером сотовой связи не происходит. В нашей Wiki мы рекомендуем использовать следующие настройки для интерфейса ppp0 в файле /etc/network/interfaces:

auto ppp0 iface ppp0 inet ppp provider mts #Рестартуем модем, если он завис pre-up wb-gsm restart_if_broken #Затем ждем, пока он загрузится и найдет сеть. pre-up sleep 10

Даже если модем находится в зависшем или отключенном состояниии, команда pre-up wb-gsm restart_if_broken перед началом установления соединения перезагрузит его и модем будет гарантированно доступен. Десятисекундной задержки (pre-up sleep 10) перед установлением соединения обычно хватает, чтобы сетевое соединение установилось с первого раза.

Строка provider заставляет pppd искать файл настроек для конкретного провайдера в директории /etc/ppp/peers, в нашем случае это файл /etc/ppp/peers/mts. В целях совместимости в качестве устройства модема в заводской настройке в этом файле указано использовать устройство /dev/ttyGSM. Если на вашем контроллере установлен 3G-модем, замените это устройство на более быстрое /dev/ttyACM0.

Чтобы при обрыве соединения контроллер не прекращал попытки установить связь, в файле настроек провайдера /etc/ppp/peers/ должны быть раскомментированы опции

persist maxfail 0

Параметры протокола пакетной передачи данных и номера для соединения для каждого провайдера хранятся в директории /etc/chatscripts. В большинстве случаев ничего менять в этих файлах не придется.

PPP — основной и резервный выход в интернет

Проще всего обеспечить выход в интернет, если ppp0 — единственный WAN-интерфейс. Интерфейс ppp0 настраивается, как это написано выше, и затем, командой ifup ppp0, устанавливается подключение к интернету через сеть сотового оператора.

Сложности начинаются, когда контроллер подключен к Ethernet и имеет шлюз по умолчанию в одной сети, а также подключается к сети сотовой передачи данных.

В такой конфигурации мы сталкиваемся со следующей особенностью: протокол PPP обеспечивает соединение точка-точка и не предполагает шлюза по умолчанию.

В случае подключения по PPP, когда ни одного шлюза по умолчанию нет (например, мы не подключили Ethernet-кабель), pppd в качестве шлюза по умолчанию добавит в таблицу маршрутизации в системе IP-адрес ppp-партнера. Если шлюз по умолчанию уже задан, то в таблицу маршрутизации новый шлюз по умолчанию не добавляется. И тогда при падении основного Ethernet-канала выход в интернет теряется, несмотря на активное соединение. В этом случае необходимо добавить второй шлюз по умолчанию через интерфейс ppp0. Метрика любого нового шлюза должна отличаться от метрик имеющихся, поэтому мы явно указываем метрику при создании нового шлюза по умолчанию.

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

Для интерфейса eth0, который мы будем считать основным для выхода в интернет, создается шлюз по умолчанию с метрикой 0 в таблице маршрутизации. Зададим для шлюза по умолчанию через интерфейс ppp0-метрику 100 (или любую, отличную от 0). Для выполнения команд после инициализации любого ppp-интерфейса pppd демон использует директорию /etc/ppp/ip-up.d. В качестве параметров командной строки скрипту передается и имя ppp-интерфейса (в нашем случае такой интерфейс один — это ppp0).

Создадим скрипт add_routes в директории /etc/ppp/ip-up.d и сделаем его исполняемым (chmod +x /etc/ppp/ip-up.d/add_routes):

#!/bin/sh route del default dev ppp0 2>/dev/null route add default dev ppp0 metric 100 2>/dev/null

Первая команда удаляет шлюз по умолчанию, на случай, если он был создан с метрикой 0. Вторая — добавляет шлюз по умолчанию с метрикой 100 для интерфейса ppp0. Таким образом, мы имеем два шлюза по умолчанию с разными метриками:

|||

При падении одного из них трафик будет передаваться через другой и наоборот. Запустим ping 8.8.8.8, а затем вынем и вставим вилку RJ-45:

|||

Как показал опыт, иногда возникает проблема с доступностью DNS-серверов провайдера. Для всех соединений прописываем общедоступные сервера Google и OpenDNS.

eth0: Из файла /etc/dhcp/dhclient.conf, из параметра request удаляем параметр domain-name-servers, а после параметра request указываем открытые DNS-сервера Google и OpenDNS:

prepend domain-name-servers 8.8.4.4, 8.8.8.8, 208.67.222.222, 208.67.220.220;

ppp0: В директории /etc/ppp/ip-up.d создаем скрипт (и даем ему права на выполнение), который добавит DNS-сервера Google и OpenDNS в файл resolv.conf при поднятии интерфейса.

if ; then : > /etc/resolv.conf fi #OpenDNS printf ‘%s\n%s\n’ «nameserver 208.67.222.222» «$(cat /etc/resolv/conf)» >/etc/resolv.conf printf ‘%s\n%s\n’ «nameserver 208.67.220.220» «$(cat /etc/resolv.conf)» >/etc/resolv.conf #Google DNS printf ‘%s\n%s\n’ «nameserver 8.8.8.8» «$(cat /etc/resolv.conf)» >/etc/resolv.conf printf ‘%s\n%s\n’ «nameserver 8.8.4.4» «$(cat /etc/resolv.conf)» >/etc/resolv.conf

VPN

Для удаленного доступа к контроллеру будем использовать OpenVPN. Предполагается, что сервер уже есть и настроен, необходимо установить и настроить клиент на контроллере.

Чтобы обеспечить большую надежность, на сервере с 2 IP-адресами запускается два серверных процесса, один из которых слушает на порту 1194 TCP на IP1, а второй — на порту 1194 UDP на IP2. (Это не обязательно, вы можете использовать один серверный процесс).

На контроллере мы поднимаем 2 OpenVPN-клиента и явно задаем маршрут для IP2 через интерфейс ppp0 для одного из них.

Установка OpenVPN — стандартная, с использованием open-rsa.

Для этого на контроллере устанавливаем openvpn и easy-rsa:

apt-get install openvpn easy-rsa

Копируем

cp -R /usr/share/easy-rsa /etc/openvpn/

Копируем сертификат удостоверяющего центра ca.crt на контроллер, в директорию /etc/openvpn/easy-rsa/keys

В директории /etc/openvpn/easy-rsa создаем поддиректорию keys:

mkdir keys && chmod 600 keys && cd keys

Создаем запрос на подписывание сертификата (с именем, соответствующим серийному номеру контроллера, в данном случае A7ZO7UCC):

cd /etc/openvpn/easy-rsa/ source ./vars ln -s openssl-1.0.0.cnf openssl.cnf ./build-req A7ZO7UCC

Копируем полученный запрос A7ZO7UCC.csr на сервер, в произвольную директорию и подписываем его.

cd /etc/openvpn/easy-rsa source ./vars ./sign-req /root/certs/A7ZO7UCC

Подписанный сертификат A7ZO7UCC.crt копируем на контроллер, в директорию /etc/openvpn/easy-rsa/keys.

На сервере в конфигурационном файле (/etc/vpn/server.conf) смотрим, какой файл соответствия клиент-адрес указан в параметре ifconfig-pool-persists и в этот файл добавляем адрес для клиента-контроллера из диапазона сетевых адресов, описанного в параметре server конфигурационного файла.

Например,

service openvpn stop mcedit /etc/openvpn/ipp.txt

Добавляем строку A7ZO7UCC,10.8.0.48

service openvpn start

Для второго экземпляра сервера такую же операцию выполняем с его конфигурационными файлами, IP-адреса должны различаться, например, добавляем запись A7ZO7UCC,10.9.0.48

Конфигурационные файлы для клиента на контроллере для двух соединений будем хранить в файлах /etc/openvpn/client.conf и /etc/openvpn/client1.conf.

Содержимое файла настройки клиента:

client dev tun proto udp remote vpn.mydomain.com 1194 resolv-retry infinite nobind persist-key persist-tun ca /etc/openvpn/easy-rsa/keys/ca.crt cert /etc/openvpn/easy-rsa/keys/A7ZO7UCC.crt key /etc/openvpn/easy-rsa/keys/A7ZO7UCC.key remote-cert-tls server verb 3 link-mtu 1542 keysize 128 #keysize 128 — для совместимости с имеющимися клиентами

В файле конфигурации второго vpn-подключения сlient1.conf замените proto udp на proto tcp и укажите второй IP-адрес сервера в параметре remote.

Автозагрузка сервиса OpenVPN на контроллере включается командой:

update-rc.d openvpn defaults

Проверяем доступность сервера ping 10.8.0.1

AutoSSH

Еще одно резервное подключение к контроллеру сделаем на основе AutoSSH. Механизм работы таков: с контроллера устанавливается ssh-соединение к серверу, при этом ssh-порт контроллера пробрасывается на один из свободных портов на localhost сервера. Сервис аutossh следит за тем, что ssh-соединение не разорвано, и в случае разрыва восстанавливает его. Восстановление происходит не мгновенно — какое-то время порт, используемый на localhost сервера удерживается демоном sshd.

Устанавливаем на контроллере apt-get install autossh. Генерируем пару ключей для пользователя root:

ssh-keygen

Пароль — пустой.

Для обслуживания удаленных подключений создаем пользователя remote на сервере с оболочкой /bin/false:

adduser —home /home/remote —shell /bin/false remote

no-agent-forwarding,no-X11-forwarding,permitopen=»localhost:62001″ ,

что обеспечит дополнительную безопасность сервера при подключении контроллера. Порт 62001 — порт localhost-сервера, на который будет перенаправлен ssh-порт данного контроллера.

Первый раз подключаемся с контроллера на сервер вручную:

ssh remote@vpn.mydomain.com

На контроллере создаем файл \etc\systemd\system\autossh.service для запуска autossh в качестве сервиса:

Description=Keeps an ssh tunnel to remote host open After=network.target User=root # -p # -l # -M 0 —> no monitoring # -N Just open the connection and do nothing (not interactive) # LOCALPORT:IP_ON_EXAMPLE_COM:PORT_ON_EXAMPLE_COM ExecStart=/usr/bin/autossh -M 0 -N -o ServerAliveInterval=15 -o ServerAliveCountMax=5 -o ExitOnForwardFailure=yes -R 62001:127.0.0.1:22 -p 22 remote@vpn.mydomain.com #ExecStop=/usr/bin/killall -9 autossh RestartSec=5 Restart=always WantedBy=multi-user.target

Включаем сервис автозагрузки на контроллере:

systemctl enable autossh.service

После запуска сервиса мы можем подключиться к контроллеру на сервере с помощью команды

ssh 127.0.0.1 -p 62001

Передача данных с контроллера в облако

Для передачи MQTT-сообщений с контроллера в облачный сервис используется MQTT-бридж, конфигурация которого настраивается на контроллере, в файле \mnt\data\etc\mosquitto\conf.d\bridge.conf

connection wb_devices_cloud.wb_A7ZO7UCC address cloud_server.com notifications true notification_topic /client/wb_A7ZO7UCC/bridge_status topic /devices/# both 2 «» /client/wb_A7ZO7UCC topic /config/# both 2 «» /client/wb_A7ZO7UCC topic /rpc/# both 2 «» /client/wb_A7ZO7UCC username wb_A7ZO7UCC password your_mqtt_cloud_password

Затем выполните команду:

service mosquitto restart

Если вы хотите передавать данные на несколько серверов одновременно, создайте несколько разделов connection.

Возможные неполадки GPRS-соединения

Возможных причин отсутствия GPRS-подключения может быть несколько:

  • Закончился оплаченный лимит трафика.
  • Низкий уровень сигнала, плохой контакт антенны.
  • SIM-карты некоторых операторов рассчитаны только на 4G-сети, 3G-подключение установить с ними не получится.
  • Проверьте, правильно ли вставлена SIM-карта в слот.
  • Возможно, SIM-карта нерабочая.
  • Ваш тарифный план не предусматривает пакетную передачу данных.

Прежде чем посещать личный кабинет и звонить провайдеру, можно выполнить ряд простых проверок.

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

gammu networkinfo Network state : home network Network : 250 01 (MTS, Russian Federation), LAC 18A6, CID 796B11 Name in phone : «MTS RUS» Packet network state : home network Packet network : 250 01 (MTS, Russian Federation), LAC 18A6, CID 796B11 Name in phone : «MTS RUS» GPRS : attached

Важно, что контроллер подключен к пакетной сети передачи данных

(GPRS : attached)

и GPRS-соединение установлено.

После этого оцените уровень сигнала в minicom командой AT+CSQ Вы получите результат в виде 13,99

Первая цифра показывает мощность сигнала: > 9 — удовлетворительный, > 14 — хороший, > 19 — отличный. Низкие и нестабильные значения CSQ означают, что антенна плохо расположена, неаккуратно подключена, радиообстановка неблагоприятная.

Если обе проверки пройдены, но связи нет, обратитесь к провайдеру (загляните в личный кабинет), можете проверить SIM-карту в смартфоне.

Решил поразмыслить о том, какой должна быть система «Умный дом», пока еще не начал изучать существующие системы домашней автоматизации. С чистым разумом так сказать. Из багажа знаний пока только промышленные пожарные и охранные системы, да еще потуги автоматизировать свой дом при помощи Arduino и поделок с Aliexpress.

Поэтому, наверное, на мои размышления сильно повлияют адресные системы пожарной сигнализации с точки зрения — как должно быть. И поделки Arduino с точки зрения — как быть не должно.

Строго говоря это два разных полюса и системы домашней автоматизации должны оказаться где-то между ними.

Наиболее вероятные функции системы домашней автоматизации.

1. Позонное отопление с установкой разных режимов.

2. Недельное посуточное расписание работы чего либо.

3. События от датчиков, исполнительных устройств и в реальном времени.

4. Сценарии управления с шагами, задержками, условиями по событиям.

5. Охранная сигнализация.

6. Пожарная сигнализация.

7. Контроль загазованности и отключение газа.

8. Управление освещением.

9. Перекрестные зависимости, например изменение режима отопления в зависимости от постановки/снятия охранных разделов.

10. Полный или частичный контроль из облачного сервиса и при помощи СМС.

11. Приложение для мобильного телефона.

12. Исполнительные устройства с контролем состояния.

13. Учет ресурсов.

14. Контроль состояния сети 220В.

15. Контроль отопительного прибора.

Требования к системе домашней автоматизации.

1. Это должно быть самодостаточное устройство — прибор или контроллер.

2. Все сценарии должны крутится внутри центрального прибора.

3. Основные функции должны задаваться при помощи привязок, настроек и опций.

4. Желательно иметь возможность, параллельно с основными базовыми функциями, исполнять программу на языке программирования, типа как в модуле Esmi MCOX (Стоимость которого, на минуточку, 100000 ), чтобы реализовать любой функционал .

5. Должна быть возможность подключить панели управления и индикации.

6. Должен быть WEB-интерфейс для управления и настройки с планшета напрямую.

7. Облачный сервис для мониторинга и управления по интернет.

8. Шина RS485 для подключения модулей расширения, клавиатур, контроллеров, коммуникаторов.

9. Адресная линия связи с питанием по ней для подключения разных адресных одним проводом.

10. Возможность подключения радиодатчиков.

11. Возможность подключения емких модулей входов и выходов.

12. На выбор коммуникаторы: GPRS, Wi-Fi или LAN.

13. Не уверен что нужна интеграция с видео, но видел в некоторых системах.

14. Также не уверен в необходимости поддержки, например Z-Wave.

15. Стоимость базовой системы домашней автоматизации должна уложиться в месячный доход российской семьи 40000р.

Понятно что такой системы не существует.

Но, как будет показано ниже, ее существование вполне возможно.

Откуда ждать появление такой системы домашней автоматизации.

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

Поэтому появление системы домашней автоматизации можно ждать либо из-за рубежа, либо как ответвления от систем с массовым выпуском оборудования не домашней автоматизации.

Система домашней автоматизации может появится и чисто в виде интеллектуального продукта (приложение-надстройка) в результате мучений энтузиастов или как подарок от Большого Брата.

Или же как побочный эффект интеллектуального продукта, который уже используется.

Возможно еще появление настолько удачной идеи или технического решения, что все производители тут же кинуться внедрять именно это решение.

Для Атоса это слишком много, а для графа де Ла Фер слишком мало.

Зарубежные системы домашней автоматизации.

С текущим курсом бибариков к нормальным деньгам даже не буду рассматривать такой вариант. Зарубежная система домашней автоматизации окажется дороже, чем сам предмет автоматизации.

Домашняя автоматизация, как частный случай системы промышленной автоматизации.

Существует множество производителей модульных программируемых логических контроллеров, но ближе всего подобрался к системам домашней автоматизации OWEN. Благодаря облачному сервису OwenCloud и среде визуального программирования наши требования становятся выполнимы. Тем более что есть уже реализованные проекты: система «Умный дом» на базе контроллера ОВЕН ПЛК160.

Нужный функционал мы уже получим, прикупив по минимуму такие устройства:

ПР200 программируемое реле с дисплеем 5760р.

ПЕ210 сетевой шлюз для доступа к сервису OwenCloud RS-485 Ethernet 3600р.

Но для создания домашней автоматизации нам придется стать еще тем специалистом по программированию. Решение каждой небольшой задачи домашней автоматизации будет требовать много времени.

Готовые решения домашней автоматизации российских интеграторов.

Под «российским производителем» готовых решений в этом случае понимается системный интегратор, создающий программу для планшета, программу для ПЛК и правила интеграции оборудования — тех же ПЛК с периферией.

Примеры: EasyHome, EasySmartBox.

Стоимость центрального оборудования ПЛК + программы + планшет будет начинаться от 60000р.

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

Программные платформы, объединяющие различное оборудование в единую систему.

Системный интегратор предлагает программную платформу (облачный сервис) для объединения различного оборудования различных производителей в единую систему. По сути, интегратор продвигает своим весом глобальную программу интеграции.

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

На слуху такие глобальные системы автоматизации: Google Home, Amazon Alexa, Яндекс Алиса, Умный дом Ростелеком, IFTTT.

Производители оборудования уже вынуждены встраивать в свои продукты поддержку систем глобальных интеграторов, ведь покупатель будет смотреть при выборе, например, Wi-Fi терморегулятора — поддерживает ли он Google Home.

Продавцы на AliExpress, не заморачиваясь, сразу рисуют поддержку всего на своем Wi-Fi товаре.

Рассмотренные мной устройства в обзоре WiFi-терморегуляторов все имеют заявленную (не факт что рабочую) возможность интеграции с Google Home, Amazon Alexa, IFTTT.

Насколько я понимаю, в такой глобальной системе автоматизации отсутствует контроллер и все сценарии осуществляются на сервере интегратора.

То-есть, при пропадании интернет или загибании системного интегратора умные устройства превратятся в лучшем случае в обычные изделия, а в худшем — в пластмасски.

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

Но тем не менее Telegramm у меня заблокирован.

Дальше всех из системных интеграторов пошел Ростелеком и взымает абонентскую плату за подключенные устройства к своему умному дому. Может я что-то неправильно понял в тарифах, но за каждый датчик необходимо платить 250р в месяц.

То-есть если надоест платить каждый месяц, то контролер от Ростелеком превратится в тыкву. Вероятно по пути Ростелекома пойдут все бырыги каналами связи.

Прослеживается два пути движения системных интеграторов.

И идеальный конец своего пути они видят таким: или за вами будет следить даже пылесос или вы будете платить за каждое включение света в туалете

Xiaomi подобные умные дома.

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

И это не только Xiaomi. Тем же путем пошел Samsung, продвигая свой SmartThings.

Наверняка каждый уважающий себя производитель смартфонов имеет что-то подобное. Большим производителям грех не пытаться запрыгнуть в поезд «Умный дом».

Huawei со своими концепциями «Умный город» и «Дружественный дом» что-то сильно затормозил — видимо Большой Брат сильно дал в лоб за святотатство с собственной ОС.

Умный дом Xiaomi весьма популярен. Огромный выбор не очень дорогих бытовых устройств, которые можно заказать и на AliExpress. Радиоканальный адресный датчик температуры стоит всего 900р.

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

В одной статье прочитал такое:

Это важный пункт программы, на который стоит обратить внимание. Выбираем пункт Материковый Китай (Mainland China). Если выбрать другую локацию, будут возникать проблемы с подключением устройств. Это обосновано тем, что многие устройства разрабатывались и тестировались исключительно для внутреннего рынка Китая и в других местах работать не должны.

В общем без проблем в этих увлекательных игрушках не обойтись.

Стоит отметить, что часть устройств Xiaomi используют распространенный протокол ZigBee и может использоваться в других системах, поддерживающих ZigBee. Huawei тоже собирается использовать протокол ZigBee и Z-Wave.

После просмотра этой таблицы-залипалова понял, что «Умный Дом» и «Домашняя Автоматизация» — это разные вещи.

Почти или полностью бесплатное или открытое ПО для сервера домашней автоматизации.

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

К периферии одноплатного компьютера можно подключать любые устройства, протокол работы которых поддерживает сервер умного дома.

А сервер умного дома поддерживает много протоколов, благодаря устанавливаемым расширениям. Можно подключать адаптеры протоколов, например ZigBee и Z-Wave, по USB или специальной платой-расширением.

Сервер имеет удобный WEB-интерфейс, возможно и мобильное приложение.

Скорее всего производители программного обеспечения предоставляют и облачный сервис для интеграции с сервером умного дома.

Таких решений много. Есть продукт одного человека, а есть и целые сообщества.

Самые распространенные: Openhab, HomeAssistant, ioBroker. Хорошо и кратко описано у энтузиаста системы одного человека Lazyhome.

Lazyhome вообще становится на Arduino Mega 2560 или Arduino DUE.

Можно еще добавить Domoticz, iot.mozilla, MajorDoMo и Arduino Mega Server, intraHouse Lite.

Наверняка есть еще много других.

Как пример что это такое — Инструкция по подключению Wi-Fi терморегулятора Beok с AliExpress к MajorDoMo.

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

Деятельность энтузиастов.

Тут продукт рождается из хобби.

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

Это контроллер или центральное устройство из готовых компонентов с набором периферийных устройств или рекомендациями к использованию распространенных периферийных устройств.

В качестве программного обеспечения, зачастую, предлагается на выбор проверенные варианты из предыдущего пункта — бесплатных, дешевых или открытых ПО для домашней автоматизации.

Lazyhome.

Тут предлагается и контроллер и ПО для совместного с ним использования:Lazyhome.

Один из вариантов центрального устройства Lighthub Shield V2.0 стоит всего 900р.

1М.

Интересным решением является украинский проект 1М, основными продуктами которого являются бесплатное ПО Ядро 1-М CORE и Наносервер 1М NS1011 за символическую цену.

Ядро 1-М CORE интегрируется в разные устройства и получается центральный контроллер Умного Дома.

Например, программное обновление (пакет) 1-M Core от «1-М Умный Дом», превращающее серийный роутер Keenetic в центральный контроллер домашней автоматизации.

1-М Умный Дом предполагает работу с устройствами сторонних производителей, но есть несколько собственных устройств.

Работает как локально, так и через облако.

Цены на сайте в гривнях или долларах.

Наносервер 1М NS1011 можно использовать как центральный прибор системы за 700 грн.

Реле 1М Relay200WC-220 (2 входа 2 выхода) 800 грн.

SONOFF BASIC (с прошивкой 1М) 280грн.

Шлюз 1М Gate100-5. Преобразовывает один тип связи (WiFi) в другой (RF, IR) и наоборот. Связь с центральным контроллером Умного Дома по WiFi. 800 грн.

1-М ОБЛАКО платное и стоит $2 или $5 в месяц.

KaScada.

Заслуживает внимание деятельность энтузиаста по созданию проекта KaScada, превращающего при помощи приложения Android любой планшет в HIM-панель управления с облачным сервисом для программируемых реле ОВЕН.

Кроме самого приложения для HIM-панели, есть облачный сервис Cascada Cloud, а также шлюзы для этого облачного сервиса, реализованные для оборудования Owen и Arduino.

Очень сложно будет энтузиастам конкурировать с рассмотренными выше вариантами умного дома. Последняя новость 1-М Умный Дом датируется апрелем 2017г.

Российские производители контроллеров и периферии оборудования для умного дома.

Граница между энтузиастами и промышленными производителями в российских условиях зыбкая и деление на пункты 7 и 8 может быть и условное.

MegaD.

Используется блочно-модульный подход и предлагается большой выбор модулей и компонентов Умного Дома собственного производства.

Контроллер MegaD-2561 может работать автономно (без сервера).

В качестве серверного программного обеспечения могут использоваться некоторые бесплатные открытые платформы.

Есть собственное серверное по: Демо-интерфейс.

Контроллер с часами реального времени MegaD-2561-RTC стоит 4160р.

WIRENBOARD.

WIREN BOARD 6 стоит 14850р.

Работает с несколькими облачными сервисами.

MegaD-2561 первый продукт для домашней автоматизации, который мне захотелось купить — это, на мой взгляд, самые перспективные наработки.

Wiren Board 6, хоть и стоит в 3 раза дороже, но это устройство другого уровня. И если подобный функционал собрать на блоках MegaD выйдет не дешевле.

Домашняя автоматизация на оборудовании адресных систем безопасности.

Все буквы выше были введением. Теперь приступим к сути.

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

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

Я думаю что такая строгая нормативная база по пожарной автоматике существует именно для поддержки собственных производителей инженерных систем.

В рассматриваемом контексте могут быть интересны три адресных систем из десятка адресных систем сигнализации, рассмотренных ранее -Болид, Рубеж, Астра.

Центральные контроллеры этих систем стоят до 10000р.

Адресные проводные устройства ввода-вывода стоят около 500р, адресные датчики около 1000р.

Радиоканальные датчики от 1500р.

Расширители емкости функций системы от 2500р — и это полноценные приборы, содержащие много входов или выходов.

Вот только никак домашнюю автоматизацию не организовать. Даже светом в курятнике по времени нельзя управлять.

Адресная система Болид и домашняя автоматизация.

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

Но нет. Объединить все подсистемы в единое целое можно при помощи АРМ на персональном компьютере при помощи ОРС-сервера.

И остается только облизываться, рассматривая самый дешевый адресный датчик температуры и влажности, зная, что никак его не применить. Контроллер С2000М мог только отображать значение температуры, но о чем вы говорите — обычный человек даже снять тревогу не может при помощи этого контроллера.

С появлением технологического контроллера С2000-Т ситуация стала немного лучше. Технологический контроллер стало возможно применять для решения локальных задач домашней автоматизации.

Но цена 11000р … При подходе «одна задача — один контроллер» это слишком дорого.

Никакой сетевой работы и никакого мониторинга при помощи мобильного приложения и облачного сервиса.

И никаких нормальных сценариев в контролере.

Недавно начал продаваться Термогигрометр с индикатором радиоканальный:

К сожалению кнопки не регулируют температуру, как хотелось бы.

Адресная система Рубеж и домашняя автоматизация.

У прибора «Рубеж-2ОП» со сценариями обстоит все просто отлично — каждый раз открываю для себя что-то новое.

Вот только в сценариях нет никакой возможности использовать системное время.

И нет никакой периферии.

Радиоканальное оборудование никак нельзя применить в одной системе с адресным — все оборудование распалось на три несовместимых между собой подсистемы: R3, Глобол, Алекса.

С дистанционным мониторингом тоже не сложилось.

Мы можем смотреть температуру в помещении, где установлен тепловой пожарный датчик. И все.

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

За 5 лет трижды полностью поменяв протокол работы оборудования, в плане не-пожарной сигнализации так ничего и не родили. Конечно, потесненные Болид — священная задача. Но она решена и пора браться за новую цель.

Адресная система Астра и домашняя автоматизация.

К облачному сервису Security Hub можно подключить целую адресную систему безопасности и управления на базе прибора Астра-812 Pro.

Этот прибор стоит всего 6385р.

К прибору уже можно подключать родные (!) радиоканальные датчики, а с использованием расширителей — контактные и адресные датчики. Прибор осуществляет связь с облачным сервисом при помощи GPRS или LAN.

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

Отмечу интересную особенность радиоканальных датчиков системы Астра. Значение температуры можно получать и использовать в сценарии не только от датчиков температуры, но и от датчиков движения и пожарных датчиков.



Домашняя автоматизация от производителей систем мониторинга.

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

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

Есть шина расширения и некоторый ассортимент сетевых устройств.

Есть радиоканальные датчики и не только пожарной и охранной сигнализации.

Есть облачный сервис и в идеологии систем есть место словам «умный дом».

Ритм Контакт.

Navigard.

Теоретически из оборудования этих систем можно что-то слепить под конкретную задачу.

Домашняя автоматизация, как расширение в уже используемом облачном сервисе.

Изучая облачные сервисы для статей Обзор моделей терморегуляторов с WiFi и облачным сервисом и Обзор облачных сервисов от производителей охранных и IoT приборов обратил внимание на несколько перспективных сервисов.

Платформы вроде как заточены под одну конкретную задачу, но что мешает добавлять функционал в уже пользующиеся спросом системы.

Zont-online позволяет добавлять устройства разного назначения: мониторинг автомобиля, климатконтроль, охрана, управление домашней автоматикой — уже не плохо.

SST-cloud позволяет управлять и контролировать только два типа устройств: контроль утечки воды и комнатный терморегулятор. Но есть возможность добавлять устройства, по крайней мере трех производителей: Открытое API — и любой производитель может им воспользоваться.

my.terneo — только терморегуляторы и только одного производителя, но стабильная работа и учтены все самые необычные функции.

Совместные усилия.

Как видим, если гипотетически объединить плюсы хотя бы двух рассмотренных выше систем, то получим нужную нам систему.

Мы уже видели объединение системы мониторинга Ритм Контакт и адресной системы пожарной сигнализации Рубеж для успешного решения задачи Дистанционного мониторинга состояния адресной системы Рубеж. Всего-то нужно было разработать устройство сопряжения «Рубеж УОО-ТЛ».

Также же можно видеть, что многие производители не придумывают собственную радиоканальную систему, а добавляют в свои системы низкоуровневую поддержку радиоканальных датчиков «Астра-РИ М», как родных.

Болид начал выпуск преобразователя протоколов С2000-ПП для работы по ModBUS с устройствами сторонних производителей и даже начал встраивать его в С2000-КДЛ.

А Xiaomi создает универсальные устройства с протоколом ZigBee.

Z-Wave и подобные.

А это удачный пример и удачной Идеи и удачных совместных усилий.

Z-Wave — это всего лишь протокол, разработанный для обмена данными по радиосети устройствами домашней автоматизации.

И такой протокол не один. Уже упоминался протокол ZigBee.

Любой производитель может вступить в Z-Wave Альянс и получил право использовать запатентованный протокол Z-Wave.

Это настолько удачный протокол, что на данный момент Z-Wave Альянс объединяет более 700 членов.

Большой выбор центральных контроллеров за 5000р-50000р и огромный выбор совместимых устройств.

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

Покупатель выбирает нужный ему баланс.

Или умный дом, который будет радовать. Или контроллер, который будет учить языкам программирования. Радующие контроллеры стоят, начиная с 25000р.

Есть возможность превращать любой компьютер, хоть одноплатный, в сервер умного дома с поддержкой Z-Wave, вставив в него USB Z-Wave адаптер и установив специальное ПО.

Есть плата-расширение RaZberry для популярного одноплатного компьютера Raspberry Pi за 6000р.

Есть плата-расширение Z-Uno за для Arduino 3600р, позволяющая создать свое Z-Wave устройство.

Цена простого Z-Wave устройства начинается от 3500р. На AliExpress можно найти и за 1800р, но не знаю что это за устройства.

Устройства, сложнее розетки или выключателя, стоят уже дорого.

Комнатный терморегулятор Z-Wave стоит 7650р.

Совместные усилия множества производителей привели к тому, что умный дом на платформе Z-Wave почти удовлетворяет моим требованиям. За исключением цены и полного отсутствия проводных устройств.

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

Wiren Board 6 – надежный и бюджетный модульный контроллер для домашней и промышленной автоматизации и мониторинга: опроса датчиков и счетчиков, использования в качестве УСПД, в системах АСКУЭ, для замены ПЛК, а также в системах «умного дома». Количество портов и поддерживаемых интерфейсов, удобный веб-интерфейс позволяют использовать его как центральный контроллер в «умном доме» совместно с беспроводными и проводными устройствами других производителей. Защита портов от перенапряжений, исполнение в корпусе на DIN-рейку, сторожевой таймер позволяют использовать Wiren Board 6 для решений, требующих надежной работы.

Модульный подход дает широкий функционал уже в базовой комплектации:

  • 4 варианта подачи питания (штатный разъем подключения блока питания, клеммы для подключения блока питания, 2 разъема Passive PoE)
  • 2 Ethernet порта для подключения витой пары в качестве основного или резервного источника связи. Modbus TCP, SNMP, MqTT, KNX IP
  • Температурный режим работы контроллера в среде от 0 до +75 градусов
  • Поддержка проводных протоколов (2 ×RS-485, 1 ×CAN, 2 ×1-Wire/дискретные входы, 4 ×дискретные/аналоговые входы/выходы «открытый коллектор»)
  • Подключение к роутеру по WiFi + Bluetooth
  • 3 отдельных слота для модулей расширения Wiren Board
  • 2 разъема под сим карты для 2G/3G GSM модема,
  • Debian в качестве операционной системы на борту
  • Широкий модельный ряд модулей, расширяющих возможности контроллера
  • Корпус с креплением на DIN-рейку
  • Два USB порта для подключения любой периферии: флешек, USB-стиков ZigBee и Z-Wave, и др.

Также вы можете расширить функционал контроллера:

  • Модуль KNX
  • Модули расширения с интерфейсом RS-232, RS-485, CAN,
  • Аккумулятор — ИБП как для контроллера, так и периферии
  • GPS-модуль для определения координат контроллера
  • Модуль ZigBee

Внешние модули, в отличие от модулей расширения, вставляющихся непосредственно на плату контроллера внутрь корпуса, делятся на два вида: стыкуемые модули ввода-вывода — по i2c — и проводные — по ModBus. Стыкуемые модули позволяют добавлять до 128 портов ввода/вывода непосредственно к контроллеру. Необязательно тянуть провод от контроллера к каждому Modbus — модулю — подключить его также можно через шлюзы, которые передают данные Modbus на контроллер по Ethernet или Wi-Fi.