Wiren Board Software/en: различия между версиями

Материал из Wiren Board
м (FuzzyBot переименовал страницу Программное обеспечение Wiren Board/en в Wiren Board Software/en без оставления перенаправления: Часть переводимой страницы Программное обеспечение Wiren Board.)
(Новая страница: «== Wiren Board software architecture ==»)
(не показаны 24 промежуточные версии 2 участников)
Строка 5: Строка 5:
   
   


[[File:DebianLinux.png | thumb | 600px | The structure of the controller software. The MQTT message queue in the center is used to exchange information between different parts of the software]]
[[File:DebianLinux.png | thumb | 600px | Структура ПО контроллера. В центре очередь сообщений MQTT, использующаяся для обмена информацией между разными частями ПО]]


Wiren Board runs under a standard configuration of Debian Linux 9 Stretch. There is an [https://www.debian.org/ports/arm/ official version] of the system suitable for architecture of the used processor. That's why it is possible to find any package in the standard repository and install it by one command (apt-get install).
Wiren Board работает под управлением стандартной сборки Debian Linux 9 Stretch. Для архитектуры используемого процессора есть официальный [https://www.debian.org/ports/arm/ порт].  
Поэтому почти любой пакет найдётся в стандартном репозитории, и его можно установить одной командой (''apt-get install'').


We also maintain our own '''debian repository''' ''releases.contactless.ru'', which contains packages developed specially for the controller. By default, this repository is listed in Wiren Board software image (file ''/etc/apt/sources.list'').
Также у нас есть собственный '''debian-репозиторий''' ''releases.contactless.ru'', в котором хранятся пакеты, собранные специально для контроллера.  
Репозиторий прописан в образе ПО для Wiren Board по умолчанию (файл ''/etc/apt/sources.list'').


All the source code is available at [https://github.com/contactless/wirenboard/ | Github].There you can find examples for development of your custom software.
Весь исходный код доступен на  [https://github.com/contactless/ https://github.com/contactless/]. Там можно почерпнуть примеры для разработки собственного ПО.


[[MQTT/en | '''MQTT message queue''']] — is the "skeleton" of the Wiren Board software architecture. For basic information about MQTT see [http://en.wikipedia.org/wiki/MQTT Wiki].
[[Special:MyLanguage/MQTT | '''Очередь сообщений MQTT''']] — "скелет" программной архитектуры Wiren Board. Базовая информация по MQTT на [http://en.wikipedia.org/wiki/MQTT Википедии].


Drivers responsible for the hardware capabilities of the controller (digital inputs, ADC, ...) and functions of external connected devices (for example, connected via RS-485 relay modules), record their status in the MQTT queue in the form of special messages. The web interface reads these messages and displays the status of the devices based on them.
Драйверы, отвечающие за аппаратные возможности контроллера (цифровые входы, АЦП, ...) и функции внешних подключённых устройств (например, подключённых по RS-485 модулей реле), записывают их состояние в очередь MQTT в виде специальных сообщений. Веб-интерфейс читает эти сообщения и на их основе отображает состояние устройств.


If a button is pressed in the web interface, the web interface sends a message to the MQTT queue, the device driver receives it and sends a command to the device.
Если же происходит нажатие кнопки в веб-интерфейсе, уже веб-интерфейс отправляет сообщение в очередь MQTT, драйвер устройства его получает и отдаёт команду устройству.


Web interface, rules engine and built-in drivers work via MQTT. If you develop your own software in addition to the preinstalled one, we advise you to use MQTT as well.
Через MQTT работает веб-интерфейс, движок правил и встроенные драйверы. Если вы разрабатываете собственное ПО в дополнение к предустановленному, мы советуем вам также использовать MQTT.


[[Файл:Веб-интерфейс - главная.png|thumb|500 px|Web interface home page]]
[[Special:MyLanguage/Файл:Веб-интерфейс - главная.png|thumb|500 px|Главная страница веб-интерфейса]]
'''[[Веб-интерфейс Wiren Board/en|Wiren Board web interface]]''' works directly on the controller. It can:
'''[[Special:MyLanguage/Веб-интерфейс Wiren Board|Веб-интерфейс Wiren Board]]''' работает непосредственно на контроллере. В нём можно:
*monitor and manage the status of the controller and connected devices
*следить за состоянием контроллера и подключённых устройств и управлять ими
*connect devices to the controller
*подключать устройства к контроллеру
*configure the controller and update its software
*настраивать контроллер и обновлять его ПО
*write rules on the built-in engine
*писать правила на встроенном движке
*set up SMS and email notifications
*настраивать SMS- и email-уведомления
*watch historical graphs of values of the parameters (e.g., temperature)
*смотреть графики истории значений параметров (например, температуры)


'''[[Движок правил wb-rules/en|WB rules engine]]''' allows you to create your own rules for the controller, for example: "If the sensor temperature is less than 18°C, turn on the heater." Rules are created via [[Special:MyLanguage/Веб-интерфейс Wiren Board|web interface]] and are written in a simple Javascript-like language.
'''[[Special:MyLanguage/Движок правил wb-rules|Движок правил wb-rules]]''' позволяет создавать собственные правила для контроллера, например: "Если температура датчика меньше 18°С, включи нагреватель". Правила создаются через [[Special:MyLanguage/Веб-интерфейс Wiren Board|веб-интерфейс]] и пишутся на простом Javascript-подобном языке.


To work with SCADA-systems you have:
Для работы с SCADA-системами есть:
* [[Zabbix support/en|Zabbix support]]
* [[Special:MyLanguage/Zabbix support|Zabbix support]]
* [[Шлюз Modbus TCP/en|Modbus TCP gateway]]
* [[Special:MyLanguage/Шлюз Modbus TCP|Шлюз Modbus TCP]]
* [[Драйвер SNMP/en|SNMP driver]]
* [[Special:MyLanguage/Драйвер SNMP|Драйвер SNMP]]


[[Как разрабатывать ПО для Wiren Board/en|How to develop software for Wiren Board]] — this article is for programmers.
[[Special:MyLanguage/Как разрабатывать ПО для Wiren Board|Как разрабатывать ПО для Wiren Board]] — статья для программистов.


[[Обновление прошивки/en|Firmware update]]
[[Special:MyLanguage/Обновление прошивки|Обновление прошивки]]


'''[[Node-Red/en|Node-RED]]''' - is a visual programming tool.
'''[[Special:MyLanguage/Node-Red|Node-Red]]''' - инструмент визуального программирования.

Версия 16:27, 27 июня 2019

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

Wiren Board software architecture

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

Wiren Board работает под управлением стандартной сборки Debian Linux 9 Stretch. Для архитектуры используемого процессора есть официальный порт. Поэтому почти любой пакет найдётся в стандартном репозитории, и его можно установить одной командой (apt-get install).

Также у нас есть собственный debian-репозиторий releases.contactless.ru, в котором хранятся пакеты, собранные специально для контроллера. Репозиторий прописан в образе ПО для Wiren Board по умолчанию (файл /etc/apt/sources.list).

Весь исходный код доступен на https://github.com/contactless/. Там можно почерпнуть примеры для разработки собственного ПО.

Очередь сообщений MQTT — "скелет" программной архитектуры Wiren Board. Базовая информация по MQTT на Википедии.

Драйверы, отвечающие за аппаратные возможности контроллера (цифровые входы, АЦП, ...) и функции внешних подключённых устройств (например, подключённых по RS-485 модулей реле), записывают их состояние в очередь MQTT в виде специальных сообщений. Веб-интерфейс читает эти сообщения и на их основе отображает состояние устройств.

Если же происходит нажатие кнопки в веб-интерфейсе, уже веб-интерфейс отправляет сообщение в очередь MQTT, драйвер устройства его получает и отдаёт команду устройству.

Через MQTT работает веб-интерфейс, движок правил и встроенные драйверы. Если вы разрабатываете собственное ПО в дополнение к предустановленному, мы советуем вам также использовать MQTT.

thumb|500 px|Главная страница веб-интерфейса Веб-интерфейс Wiren Board работает непосредственно на контроллере. В нём можно:

  • следить за состоянием контроллера и подключённых устройств и управлять ими
  • подключать устройства к контроллеру
  • настраивать контроллер и обновлять его ПО
  • писать правила на встроенном движке
  • настраивать SMS- и email-уведомления
  • смотреть графики истории значений параметров (например, температуры)

Движок правил wb-rules позволяет создавать собственные правила для контроллера, например: "Если температура датчика меньше 18°С, включи нагреватель". Правила создаются через веб-интерфейс и пишутся на простом Javascript-подобном языке.

Для работы с SCADA-системами есть:

Как разрабатывать ПО для Wiren Board — статья для программистов.

Обновление прошивки

Node-Red - инструмент визуального программирования.