|
|
Строка 32: |
Строка 32: |
| Для начала работы с контроллером рекомендуется прочитать статью [[Special:MyLanguage/Wiren Board 5:Первое включение|'''Первое включение''']]. | | Для начала работы с контроллером рекомендуется прочитать статью [[Special:MyLanguage/Wiren Board 5:Первое включение|'''Первое включение''']]. |
|
| |
|
| == Архитектура ПО Wiren Board ==
| | {{:Программное обеспечение Wiren Board}} |
| | |
| [[File:MQTT.png | thumb | 600px | Структура ПО контроллера. В центре очередь сообщений MQTT, использующаяся для обмена информацией между разными частями ПО]]
| |
| | |
| Wiren Board работает под управлением стандартной сборки Debian Linux 7.0. Для архитектуры используемого процессора есть официальный [https://www.debian.org/ports/arm/ порт]. Поэтому почти любой пакет найдётся в стандартном репозитории, и его можно установить одной командой (''apt-get install'').
| |
| | |
| Также у нас есть собственный '''debian-репозиторий''' ''releases.contactless.ru'', в котором хранятся пакеты, собранные специально для контроллера. Репозиторий прописан в образе ПО для Wiren Board по умолчанию (файл ''/etc/apt/sources.list'').
| |
| | |
| Весь исходный код доступен на [https://github.com/contactless/ https://github.com/contactless/]. Там можно почерпнуть примеры для разработки собственного ПО.
| |
| | |
| [[MQTT | '''Очередь сообщений MQTT''']] - "скелет" программной архитектуры Wiren Board. Базовая информация по MQTT на [http://en.wikipedia.org/wiki/MQTT Википедии].
| |
| | |
| Драйверы, отвечающие за аппаратные возможности контроллера (цифровые входы, АЦП, ...) и функции внешних подключённых устройств (например, подключённых по RS-485 модулей реле) записывают их состояние в очередь MQTT в виде специальных сообщений. Веб-интерфейс читает эти сообщения и на их основе отображает состояние устройств.
| |
| | |
| Если же происходит нажатие кнопки в веб-интерфейсе, уже веб-интерфейс отправляет сообщение в очередь MQTT, драйвер устройства его получает и отдаёт команду устройству.
| |
| | |
| Через MQTT работает веб-интерфейс, движок правил и встроенные драйверы. Если вы разрабатываете собственное ПО в дополнение к предустановленному, мы советуем вам также использовать MQTT.
| |
| | |
| [[Файл:Веб-интерфейс - главная.png|thumb|500 px|Главная страница веб-интерфейса]]
| |
| '''[[Веб-интерфейс Wiren Board]]''' работает непосредственно на контроллере. В нём можно:
| |
| *следить за состоянием контроллера и подключённых устройств и управлять ими
| |
| *подключать устройства к контроллеру
| |
| *настраивать контроллер и обновлять его ПО
| |
| *писать правила на встроенном движке
| |
| *настраивать SMS и email уведомления
| |
| *смотреть на графике историю значений (например, температуры)
| |
| | |
| '''[[Движок правил wb-rules]]''' позволяет создавать собственные правила для контроллера - например, "Если температура датчика меньше 18°С, включи нагреватель". Правила создаются через [[Веб-интерфейс Wiren Board|веб-интерфейс]] и пишутся на простом Javascript-подобном языке.
| |
| | |
| Для работы с SCADA-системами есть:
| |
| * [[Zabbix support]]
| |
| * [[Шлюз Modbus TCP]]
| |
| * [[Драйвер SNMP]]
| |
| | |
| [[Как разрабатывать ПО для Wiren Board]] - статья для программистов.
| |
| | |
| [[Обновление прошивки]]
| |
|
| |
|
| == Модульность контроллера == | | == Модульность контроллера == |