wb_editors
480
правок
(добавил информацию о перезагрузке при остановке сервисов) |
(Сделал уточнение про собственные сервисы и организацию ПО) |
||
Строка 1: | Строка 1: | ||
{{Draft}} | {{Draft}} | ||
{{DISPLAYTITLE: Архитектура ПО контроллера Wirenboard}} | {{DISPLAYTITLE: Архитектура ПО контроллера Wirenboard}} | ||
Все программное обеспечение (ПО) контроллера можно разделить на операционную систему (ОС), специализированное ПО и пользовательские программы. | |||
Основа внутреннего ПО контроллера является операционная система система Debian Linux (в версии Wirenboard 6 установлен Debian Linux 9 Stretch). Она выполняет основные функции загрузки, конфигурирования, контроля и управления. | |||
Специализированное ПО дополняет операционную систему и осуществляет взаимодействие с портами ввода-вывода, периферийными устройствами и модулями контроллера, диагностику работы контроллера, обеспечивает доступ к контроллеру через веб-интерфейс дает возможность написания пользовательских сценариев (правил управления) и другие важные функции, не входящие спектр задач операционной системы. | |||
Специализированное ПО в основном представляет набор специальных программ и драйверов выполняющих в фоновом режиме отдельную задачу управления, диагностики или контроля. Большинство таких программы и драйверы зарегистрировано с ОС Linux в виде сервисов (служб) - программ, которые работают в фоновом режиме, запускаются автоматически при старте системы и контролируются операционной системой. Имена собственных сервисов контроллера Wirenboard обычно имеют префикс "wb-". Каждый сервис выполняет отдельную задачу. Если функции, которые обеспечивает сервис не используются, то сервис можно временно остановить или даже отключить совсем для освобождение ресурса процессора контроллера. | |||
Специализированное ПО в основном представляет набор специальных программ и драйверов выполняющих в фоновом режиме отдельную задачу управления, диагностики или контроля. | |||
Список всех запущенных сервисов и статус их работы можно посмотреть с помощью команды | Список всех запущенных сервисов и статус их работы можно посмотреть с помощью команды | ||
<pre>systemctl list-units --type=service</pre> | <pre>systemctl list-units --type=service</pre> | ||
Перечень | Перечень собственных сервисов контроллера Wirenboard приведен в таблице ниже. | ||
Основная концепция работы контроллера - обмен информацией по протоколу [[MQTT | MQTT ]] через брокер (сервис) Mosquitto. Драйверы получают данные с устройств и публикуют их в виде MQTT-топиков в определенном формате. Другие службы читают эти данные и производят дальнейшие действия с ними: выводят в веб-интерфейс, запускают правила и т.д. Схематично взаимодействие сервисом можно представить в виде следующей схемы: | Основная концепция работы контроллера - обмен информацией по протоколу [[MQTT | MQTT ]] через брокер (сервис) Mosquitto. Драйверы получают данные с устройств и публикуют их в виде MQTT-топиков в определенном формате. Другие службы читают эти данные и производят дальнейшие действия с ними: выводят в веб-интерфейс, запускают правила и т.д. Схематично взаимодействие сервисом можно представить в виде следующей схемы: |