Wiren Board Software: различия между версиями
Admin (обсуждение | вклад) |
|||
(не показана 71 промежуточная версия 8 участников) | |||
Строка 1: | Строка 1: | ||
<languages/> | |||
<translate> | |||
<!--T:1--> | |||
Wiren Board имеет готовый веб-интерфейс для пользователей, через который можно произвести всю настройку стандартных функций, но также предоставляет возможность разработки и использования собственного ПО. Исходные коды всего ПО открыты. | |||
== Веб-интерфейс == <!--T:2--> | |||
<!--T:3--> | |||
[[Файл:Веб-интерфейс - главная.png|thumb|500 px|Главная страница веб-интерфейса]] | |||
<!--T:4--> | |||
[[Wiren Board]] имеет собственный, находящийся локально на устройстве веб-интерфейс. Это удобный способ управления подключенными устройствами и контроля подключённых датчиков. | |||
=== Как зайти в интерфейс === <!--T:5--> | |||
<!--T:6--> | |||
Просто введите в адресную строку браузера IP-адрес контроллера. Также смотрите статью [[Как узнать IP-адрес контроллера|Как узнать IP-адрес контроллера]]. | |||
=== | === Что можно делать в интерфейсе === <!--T:7--> | ||
<!--T:8--> | |||
* управлять подключенными устройствами | |||
* смотреть показания датчиков | |||
* собирать устройства и датчики в панели (Dashboards) и комнаты | |||
* создавать сценарии, расписания и правила | |||
* редактировать настройки | |||
<!--T:9--> | |||
Подробнее смотрите здесь - [[Веб-интерфейс Wiren Board]] | |||
== Архитектура ПО Wiren Board == <!--T:10--> | |||
<!--T:11--> | |||
[[Файл:MQTT.png | thumb | 600px]] | |||
=== Операционная система === <!--T:12--> | |||
<!--T:13--> | |||
Wiren Board работает под управлением стандартной сборки Debian Linux 7.0. Для архитектуры используемого процессора есть официальный [https://www.debian.org/ports/arm/ порт]. Поэтому почти любой пакет найдётся в стандартном репозитории, и его можно установить одной командой (apt-get install). | |||
=== Репозиторий и Git === <!--T:14--> | |||
<!--T:15--> | |||
Также у нас есть собственный debian-репозиторий releases.contactless.ru, в котором хранятся пакеты, собранные специально для контроллера. Репозиторий прописан в образе ПО для Wiren Board по умолчанию (файл /etc/apt/sources.list). | |||
<!--T:16--> | |||
Весь исходный код доступен на [https://github.com/contactless/ Github]. Там можно почерпнуть примеры для разработки собственного ПО. | |||
=== MQTT === <!--T:17--> | |||
<!--T:18--> | |||
Wiren Board использует очередь сообщений MQTT ([http://en.wikipedia.org/wiki/MQTT статья на википедии]) в качестве единого стандарта сбора информации с внутренних модулей (реле, АЦП и т.д.) и внешних устройств (датчиков 1-Wire, устройств Modbus). Для каждого такого модуля и внешнего совместимого устройства разработан "драйвер", который передаёт данные в систему сообщений MQTT и обратно. Веб-интерфейс тоже берёт данные из этой системы сообщений, и все изменения, внесённые через него (например, включить реле) он отправляет туда же. Через ту же очередь сообщений работает и движок правил. | |||
<!--T:19--> | |||
Подробнее смотрите [[MQTT|MQTT]]. | |||
=== Веб-интерфейс === <!--T:20--> | |||
<!--T:21--> | |||
Подробнее см. [[Wiren Board 4:Веб-интерфейс|Wiren Board 4:Веб-интерфейс]] | |||
<!--T:22--> | |||
Веб-интерфейс работает непосредственно на Wiren Board. В качестве веб-сервера работает лёгкий [http://manpages.ubuntu.com/manpages/lucid/man1/webfsd.1.html webfsd]. Сам сайт написан на [https://angularjs.org/ AngularJS], сайт взаимодействует с MQTT через [http://en.wikipedia.org/wiki/WebSocket WebSocket]. | |||
=== Движок правил === <!--T:23--> | |||
<!--T:24--> | |||
Можно создавать правила, например, "если значение с датчика температуры ниже 18С, включи нагреватель". Правила пишутся на языке Javascript. Подробнее смотрите | |||
[[Движок правил wb-rules|Движок правил wb-rules]]. | |||
| | == Как работать с модулями контроллера и портами ввода-вывода из своих программ == <!--T:25--> | ||
=== [[Special:MyLanguage/GSM/GPRS|GSM/GPRS]] === <!--T:26--> | |||
=== [[Special:MyLanguage/Wi-Fi|Wi-Fi]] === <!--T:27--> | |||
=== [[Special:MyLanguage/RS-485|RS-485]] === <!--T:28--> | |||
=== [[Special:MyLanguage/GPIO|GPIO]] === <!--T:29--> | |||
|- | |||
=== [[Special:MyLanguage/Watchdog|Watchdog]] === <!--T:30--> | |||
== Прочее == | |||
[[Zabbix support]] | |||
</translate> | |||
|- | |||
| | |||
| | |||
| | |||
|- | |||
Версия 17:56, 24 февраля 2016
Wiren Board имеет готовый веб-интерфейс для пользователей, через который можно произвести всю настройку стандартных функций, но также предоставляет возможность разработки и использования собственного ПО. Исходные коды всего ПО открыты.
Веб-интерфейс
Wiren Board имеет собственный, находящийся локально на устройстве веб-интерфейс. Это удобный способ управления подключенными устройствами и контроля подключённых датчиков.
Как зайти в интерфейс
Просто введите в адресную строку браузера IP-адрес контроллера. Также смотрите статью Как узнать IP-адрес контроллера.
Что можно делать в интерфейсе
- управлять подключенными устройствами
- смотреть показания датчиков
- собирать устройства и датчики в панели (Dashboards) и комнаты
- создавать сценарии, расписания и правила
- редактировать настройки
Подробнее смотрите здесь - Веб-интерфейс Wiren Board
Архитектура ПО Wiren Board
Операционная система
Wiren Board работает под управлением стандартной сборки Debian Linux 7.0. Для архитектуры используемого процессора есть официальный порт. Поэтому почти любой пакет найдётся в стандартном репозитории, и его можно установить одной командой (apt-get install).
Репозиторий и Git
Также у нас есть собственный debian-репозиторий releases.contactless.ru, в котором хранятся пакеты, собранные специально для контроллера. Репозиторий прописан в образе ПО для Wiren Board по умолчанию (файл /etc/apt/sources.list).
Весь исходный код доступен на Github. Там можно почерпнуть примеры для разработки собственного ПО.
MQTT
Wiren Board использует очередь сообщений MQTT (статья на википедии) в качестве единого стандарта сбора информации с внутренних модулей (реле, АЦП и т.д.) и внешних устройств (датчиков 1-Wire, устройств Modbus). Для каждого такого модуля и внешнего совместимого устройства разработан "драйвер", который передаёт данные в систему сообщений MQTT и обратно. Веб-интерфейс тоже берёт данные из этой системы сообщений, и все изменения, внесённые через него (например, включить реле) он отправляет туда же. Через ту же очередь сообщений работает и движок правил.
Подробнее смотрите MQTT.
Веб-интерфейс
Подробнее см. Wiren Board 4:Веб-интерфейс
Веб-интерфейс работает непосредственно на Wiren Board. В качестве веб-сервера работает лёгкий webfsd. Сам сайт написан на AngularJS, сайт взаимодействует с MQTT через WebSocket.
Движок правил
Можно создавать правила, например, "если значение с датчика температуры ниже 18С, включи нагреватель". Правила пишутся на языке Javascript. Подробнее смотрите Движок правил wb-rules.