Wiren Board Software

Материал из Wiren Board
Версия от 16:02, 17 июля 2015; L.volokhova (обсуждение | вклад) (Отметить эту версию для перевода)

Другие языки:

Wiren Board предоставляет как готовый веб-интерфейс для пользователей, так и возможности для собственной разработки. Исходные коды всего ПО открыты.


Веб-интерфейс

thumb|500 px|Главная страница веб-интерфейса

Wiren Board 4 имеет собственный, находящийся локально на устройстве веб-интерфейс. Это удобный способ управления подключенными устройствами и контроля подключённых датчиков.

Как зайти в интерфейс

Просто введите в адресную строку браузера IP-адрес контроллера. Также смотрите статью Как узнать IP-адрес контроллера.


Что можно делать в интерфейсе

  • управлять подключенными устройствами
  • смотреть показания датчиков
  • собирать устройства и датчики в панели (Dashboards)


Подробнее смотрите здесь - Wiren Board 4:Веб-интерфейс


Архитектура ПО Wiren Board

thumb | 600px

Операционная система

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.


Как работать с модулями контроллера и портами ввода-вывода из своих программ

GSM/GPRS

Wi-Fi

RS-485

GPIO

Watchdog