Перейти к содержанию

Xiot-plc-installation: различия между версиями

Материал из XIOT Wiki
Обновлена ссылка установки на стабильный XIOT-PLC v14.14 из нового редактора
XIOT-PLC v14.19: актуальный пакет, проверка SHA-256 и копируемая команда установки
 
(не показана 1 промежуточная версия этого же участника)
Строка 1: Строка 1:
{{DISPLAYTITLE:Установка XIOT-PLC на контроллер}}
{{DISPLAYTITLE:Установка XIOT-PLC на контроллер}}
Инструкция предназначена для '''интегратора''', который имеет административный SSH-доступ к поддерживаемому устройству-хосту. Результат: пакет XIOT-PLC установлен, а служба <code>xiot.service</code> запускается. Привязка к проекту выполняется отдельно на следующем шаге.
Инструкция для интегратора с административным SSH-доступом к устройству-хосту. После установки нужно проверить версию пакета и запуск службы <code>xiot.service</code>. Новый контроллер затем привязывают к проекту; уже работающий контроллер после обычного обновления повторно привязывать не нужно.


'''Актуальная стабильная версия на 10 октября 2026 года — XIOT-PLC v14.14.''' Этот пакет используется в новом [https://editor.xiot.pro/ редакторе XIOT].
'''Стабильная версия на 14 октября 2026 года — XIOT-PLC v14.19.''' Работайте с проектом в [https://editor.xiot.pro/ актуальном XIOT-EDITOR]. Установка пакета XIOT-PLC не обновляет операционную систему устройства и не активирует лицензию проекта.


'''[https://xiot.pro/system/plcversions/v14.14/xiot.deb Скачать XIOT-PLC v14.14 (.deb)]'''
До установки проверьте номер редактора в открытом проекте и изучите [[Editor-and-controller-updates|порядок перехода и проверки совместимости]]. Проект может быть закреплён за определённой версией; открытие editor.xiot.pro само по себе её не переключает.
 
'''[https://xiot.pro/system/plcversions/v14.19/xiot.deb Скачать XIOT-PLC v14.19 (.deb)]'''
 
В [[Обновление XIOT v14.19|v14.19]] исправлен вход по коду из письма при небольшом отставании часов контроллера. Синхронизация времени по NTP по-прежнему необходима.


== Поддерживаемые платформы и архитектуры ==
== Поддерживаемые платформы и архитектуры ==
Строка 16: Строка 20:
* '''VDS/VPS''' с Debian-совместимой Linux-системой.
* '''VDS/VPS''' с Debian-совместимой Linux-системой.


Поддерживаемые архитектуры: <code>armhf</code>, <code>arm64</code> и <code>amd64</code>. Минимальные версии Debian и Python здесь не фиксируются; перед монтажом сверьте окружение с актуальной документацией выбранной платформы.
Поддерживаемые архитектуры: <code>armhf</code>, <code>arm64</code> и <code>amd64</code>. Для конкретной модели и ревизии отдельно проверьте совместимость версии ОС, Python и используемых драйверов. Этот список не означает, что любая прошивка перечисленных устройств подходит без проверки. Универсальные минимальные версии Debian и Python здесь не задаются.


== Текущая архитектура проекта ==
== Текущая архитектура проекта ==
Строка 28: Строка 32:
Схему питания, диапазон напряжения и точки подключения выбирают по документации конкретной модели и ревизии. В проектах XIOT контроллеры обычно не питаются по PoE: PoE используется для сенсорных панелей. Для контроллера обычно применяется ИБП (UPS) '''Tantos 5 А''' с аккумулятором (АКБ) '''12 В, 7 А·ч'''. Окончательную схему должен проверить специалист, отвечающий за электропитание объекта.
Схему питания, диапазон напряжения и точки подключения выбирают по документации конкретной модели и ревизии. В проектах XIOT контроллеры обычно не питаются по PoE: PoE используется для сенсорных панелей. Для контроллера обычно применяется ИБП (UPS) '''Tantos 5 А''' с аккумулятором (АКБ) '''12 В, 7 А·ч'''. Окончательную схему должен проверить специалист, отвечающий за электропитание объекта.


----
== Перед началом работы ==
== 🎥 Видеобзор ==
 
➡️ ''[https://dzen.ru/video/watch/69f7d42078b10057d443de9c Установка XIOT-PLC на контроллер: пошаговая инструкция]''
* Обеспечьте стабильное питание, доверенную сеть и доступ устройства к интернету. Дата и время должны быть правильными для проверки HTTPS-сертификатов.
* На устройстве должна быть совместимая Debian-подобная Linux-система с <code>systemd</code> и Python 3. Для команды ниже нужны <code>wget</code>, <code>sha256sum</code> и <code>dpkg</code>.
* Установщик проверяет наличие не менее '''100 МБ''' свободного места в <code>/opt</code>. Дополнительно нужен запас для файла пакета, данных проекта и резервной копии; 100 МБ — не рекомендация по общему объёму накопителя.
* Подготовьте административный SSH-доступ. Используйте реквизиты и способ получения прав <code>root</code>, предусмотренные документацией вашей модели. Если пароль заводской, смените его.
* Подключиться можно встроенным SSH-клиентом macOS/Linux, [https://www.putty.org/ PuTTY] или другим доверенным SSH-клиентом. IP-адрес устройства можно узнать в роутере.


== Перед началом работы ==
=== Если это обновление работающего объекта ===
 
'''Во время обновления служба XIOT-PLC останавливается и запускается заново.''' Связь и управление могут временно прерваться. Выберите безопасное окно обслуживания и согласуйте его с ответственным за объект.


* Обеспечьте стабильное питание, доверенную локальную сеть и доступ устройства-хоста к интернету.
До установки сохраните проект, зафиксируйте текущие версии и подготовьте резервную копию контроллера штатным способом выбранной платформы. Убедитесь, что знаете порядок восстановления. Сохранение проекта не заменяет резервную копию ОС, драйверов и локальных данных контроллера. Копии с данными доступа храните закрыто.
* Проверьте, что на устройстве установлена Debian-совместимая Linux-система с <code>systemd</code>, а в <code>/opt</code> свободно не менее 100 МБ.
* Подготовьте административный SSH-доступ и штатные реквизиты выбранной платформы.
* Для Wiren Board установите [https://www.putty.org/ PuTTY] или другой SSH-клиент. IP-адрес можно определить в роутере либо сетевым сканером.
* На этом этапе проект в XIOT-EDITOR не изменяется, поэтому отдельное сохранение проекта не требуется.


[[File:Xiot 42.png|405x405px]]
Не отвязывайте контроллер, не удаляйте его настройки и не загружайте другую конфигурацию как обязательную часть обновления. Для обновления уже привязанного устройства повторный вход на странице привязки не требуется.


== Установка ==
== Установка ==


# Подключите устройство-хост к доверенной локальной сети и определите его IP-адрес. В примере на скриншоте используется <code>192.168.31.106</code>; у вашего устройства адрес будет другим.
=== 1. Подключитесь к устройству ===
#: [[File:Xiot_43.png|635x635px]]
 
#: '''Ожидаемый результат:''' устройство отображается в локальной сети и отвечает по своему IP-адресу.
Откройте SSH-соединение с IP-адресом своего устройства. В PuTTY укажите адрес в поле '''Host Name''', выберите '''SSH''' и нажмите '''Open'''. При первом подключении сверьте отпечаток SSH-ключа по доверенному каналу.
# Откройте PuTTY. В поле '''Host Name''' введите IP-адрес устройства, выберите '''SSH''' и нажмите '''Open'''. При первом подключении сверьте отпечаток SSH-ключа с данными вашего устройства по доверенному каналу.
 
#: [[File:Xiot 44.png|408x408px]]
Войдите под административной учётной записью. Если она не <code>root</code>, получите права <code>root</code> штатным способом вашей платформы. Следующий блок выполняется целиком в оболочке <code>root</code> на контроллере, а не на компьютере интегратора.
# Если заводские реквизиты Wiren Board ещё не изменены, для первого входа используйте имя пользователя <code>root</code> и начальный пароль <code>wirenboard</code>. Проверьте их по документации своей модели и смените заводской пароль после первого входа.
 
#: [[File:Xiot 45.png|406x406px]]
=== 2. Скачайте, проверьте и установите пакет ===
#: '''Ожидаемый результат:''' открыта командная оболочка устройства-хоста.
 
#: [[File:Xiot_46.png|545x545px]]
<syntaxhighlight lang="bash" copy=1>
# Выполните команду в оболочке пользователя <code>root</code>:
cd /root &&
#: <pre>wget https://xiot.pro/system/plcversions/v14.14/xiot.deb -O xiot.deb && dpkg -i xiot.deb</pre>
wget -O xiot-14.19.deb https://xiot.pro/system/plcversions/v14.19/xiot.deb &&
#: Оператор <code>&amp;&amp;</code> не запускает установку, если скачивание завершилось ошибкой. Если вы вошли не как <code>root</code>, после успешного скачивания выполните <code>sudo dpkg -i xiot.deb</code>. Не отключайте проверку TLS-сертификата.
printf '%s\n' '2f9f1842bf53a87d19b30a90b05815caef1810a09cb79e3d359bb26b2094498d  xiot-14.19.deb' | sha256sum -c - &&
#: [[File:Xiot 47.png|602x602px]]
dpkg -i xiot-14.19.deb
#: [[File:Xiot 48.png|608x608px]]
</syntaxhighlight>
#: '''Ожидаемый результат:''' команда <code>dpkg</code> завершается без сообщения об ошибке установки.
 
# Проверьте службу XIOT-PLC:
Блок скачивает именно v14.19, проверяет SHA-256 и только затем устанавливает пакет. Операторы <code>&amp;&amp;</code> не позволяют перейти к установке при ошибке скачивания или проверки. Не отключайте проверку TLS-сертификата и не заменяйте контрольную сумму произвольным значением.
#: <pre>systemctl status xiot.service</pre>
 
#: [[File:Xiot 49.png|607x607px]]
'''Ожидаемый результат:''' проверка контрольной суммы успешна, а <code>dpkg</code> завершает установку без ошибки. Само сообщение установщика о запуске службы ещё не подтверждает её работоспособность — выполните следующие проверки.
#: '''Ожидаемый результат:''' служба имеет состояние <code>active (running)</code>.


== Проверка результата ==
== Проверка результата ==


Повторно выполните <code>systemctl status xiot.service</code> и убедитесь, что служба остаётся в состоянии <code>active (running)</code>. Эта проверка подтверждает запуск XIOT-PLC, но не заменяет последующую привязку к проекту и проверку физических устройств.
Проверьте установленный пакет:
 
<syntaxhighlight lang="bash">
dpkg-query -W -f='${Status} ${Version}\n' xiot
</syntaxhighlight>
 
Ожидаемый ответ: <code>install ok installed 14.19</code>.
 
Проверьте основную службу:
 
<syntaxhighlight lang="bash">
systemctl status xiot.service --no-pager
</syntaxhighlight>
 
Ожидаемое состояние — <code>active (running)</code>. Повторите проверку и убедитесь, что служба не завершается и не запускается по кругу. Плановая перезагрузка всей ОС в эти шаги не входит.
 
После обновления работающего объекта дождитесь восстановления связи в редакторе, сверьте выбранный проект и версию PLC, проверьте основные устройства и сценарии. Успешный запуск службы не заменяет эту проверку. После первой установки нового контроллера переходите к привязке ниже.


== Если установка не завершилась ==
== Если установка не завершилась ==


* Если <code>wget</code> сообщил об ошибке, не устанавливайте ранее оставшийся файл <code>xiot.deb</code>. Проверьте сеть, дату устройства и TLS-сертификаты, затем повторите скачивание.
* При ошибке скачивания или несовпадении SHA-256 не устанавливайте файл. Проверьте сеть, дату устройства и TLS-сертификаты. Не используйте ранее оставшийся пакет без проверки.
* Если <code>dpkg</code> завершился с ошибкой, сохраните полный текст сообщения. Не выполняйте универсальные <code>apt upgrade</code>, удаление системных пакетов или ручное редактирование <code>/opt/xiot</code> как способ исправления.
* Если <code>dpkg</code> завершился с ошибкой, сохраните её текст. Не выполняйте универсальное <code>apt upgrade</code>, удаление системных пакетов или очистку данных XIOT как способ исправления.
* Если служба не запустилась, соберите безопасную диагностику командами <code>systemctl status xiot.service</code> и <code>journalctl -u xiot.service -n 100 --no-pager</code>. До выяснения причины не привязывайте устройство к проекту.
* Если служба не запустилась либо постоянно перезапускается, соберите диагностику командами ниже. До выяснения причины не выполняйте новую привязку и не загружайте конфигурацию.
* Если обновлялась уже работающая установка, не удаляйте её данные вручную. Используйте сохранённую версию проекта и передайте диагностические сообщения в техническую поддержку.
 
<syntaxhighlight lang="bash">
systemctl status xiot.service --no-pager
journalctl -u xiot.service -n 100 --no-pager
</syntaxhighlight>
 
Перед передачей диагностики проверьте, что в ней нет паролей, кодов и токенов. Если обновлялся работающий объект, сохраните его данные и обратитесь в техническую поддержку; не отвязывайте контроллер и не повторяйте установку вслепую.


== Следующий шаг ==
== Следующий шаг ==


Перейдите к статье [[Connect-xiot-plc-to-editor|«Связываем XIOT-PLC с редактором XIOT»]]. Локальный интерфейс на порту <code>5551</code> используйте только из доверенной локальной сети и не публикуйте этот порт в интернет.
'''Новый, ещё не привязанный контроллер:''' перейдите к статье [[Connect-xiot-plc-to-editor|«Связываем XIOT-PLC с редактором XIOT»]]. Страница настройки на порту <code>5551</code> должна быть доступна только из доверенной сети или через ограниченный защищённый канал, не из открытого интернета.
 
'''Обновлённый контроллер с действующей привязкой:''' продолжайте работать с прежним проектом после проверки результата. Установка новой версии сама по себе не требует повторной привязки или повторной активации лицензии.
 
== Ранний видеобзор ==
 
[https://dzen.ru/video/watch/69f7d42078b10057d443de9c Установка XIOT-PLC на контроллер — видеобзор прежнего интерфейса]. Для установки v14.19 используйте актуальные команды и порядок проверки из этой статьи, а не показанные в ранней записи.


Связанные статьи: [[Wiren-board-connection|полный маршрут Wiren Board]], [[Wiren-board-basic-setup|Базовая настройка Wiren Board]], [[Wiren-board-8-first-start|Первое включение контроллера Wiren Board 8]], [[Wiren-board-driver-setup|Настройка драйвера Wiren Board в XIOT]], [[Editor-and-controller-updates|Обновление редактора и контроллера]].
Связанные статьи: [[Wiren-board-connection|полный маршрут Wiren Board]], [[Wiren-board-basic-setup|Базовая настройка Wiren Board]], [[Wiren-board-8-first-start|Первое включение контроллера Wiren Board 8]], [[Wiren-board-driver-setup|Настройка драйвера Wiren Board в XIOT]], [[Editor-and-controller-updates|Обновление редактора и контроллера]].

Текущая версия от 16:19, 14 октября 2026

Инструкция для интегратора с административным SSH-доступом к устройству-хосту. После установки нужно проверить версию пакета и запуск службы xiot.service. Новый контроллер затем привязывают к проекту; уже работающий контроллер после обычного обновления повторно привязывать не нужно.

Стабильная версия на 14 октября 2026 года — XIOT-PLC v14.19. Работайте с проектом в актуальном XIOT-EDITOR. Установка пакета XIOT-PLC не обновляет операционную систему устройства и не активирует лицензию проекта.

До установки проверьте номер редактора в открытом проекте и изучите порядок перехода и проверки совместимости. Проект может быть закреплён за определённой версией; открытие editor.xiot.pro само по себе её не переключает.

Скачать XIOT-PLC v14.19 (.deb)

В v14.19 исправлен вход по коду из письма при небольшом отставании часов контроллера. Синхронизация времени по NTP по-прежнему необходима.

Поддерживаемые платформы и архитектуры

Официально поддерживаются:

  • Wiren Board 6, 7, 8 и 9;
  • JetHome;
  • Raspberry Pi, Orange Pi и NanoPi;
  • x86-ПК, включая Intel NUC;
  • VDS/VPS с Debian-совместимой Linux-системой.

Поддерживаемые архитектуры: armhf, arm64 и amd64. Для конкретной модели и ревизии отдельно проверьте совместимость версии ОС, Python и используемых драйверов. Этот список не означает, что любая прошивка перечисленных устройств подходит без проверки. Универсальные минимальные версии Debian и Python здесь не задаются.

Текущая архитектура проекта

  • К одному проекту XIOT сейчас привязывается один XIOT-PLC (plc1).
  • Один XIOT-PLC может использовать до шести отдельных MQTT-подключений Wiren Board. Это не шесть XIOT-PLC, а шесть подключений к оборудованию Wiren Board.
  • Поддержка нескольких XIOT-PLC в одном проекте, в том числе для гостиничных объектов, планируется, но в текущей версии ещё не доступна.

Питание контроллера

Схему питания, диапазон напряжения и точки подключения выбирают по документации конкретной модели и ревизии. В проектах XIOT контроллеры обычно не питаются по PoE: PoE используется для сенсорных панелей. Для контроллера обычно применяется ИБП (UPS) Tantos 5 А с аккумулятором (АКБ) 12 В, 7 А·ч. Окончательную схему должен проверить специалист, отвечающий за электропитание объекта.

Перед началом работы

  • Обеспечьте стабильное питание, доверенную сеть и доступ устройства к интернету. Дата и время должны быть правильными для проверки HTTPS-сертификатов.
  • На устройстве должна быть совместимая Debian-подобная Linux-система с systemd и Python 3. Для команды ниже нужны wget, sha256sum и dpkg.
  • Установщик проверяет наличие не менее 100 МБ свободного места в /opt. Дополнительно нужен запас для файла пакета, данных проекта и резервной копии; 100 МБ — не рекомендация по общему объёму накопителя.
  • Подготовьте административный SSH-доступ. Используйте реквизиты и способ получения прав root, предусмотренные документацией вашей модели. Если пароль заводской, смените его.
  • Подключиться можно встроенным SSH-клиентом macOS/Linux, PuTTY или другим доверенным SSH-клиентом. IP-адрес устройства можно узнать в роутере.

Если это обновление работающего объекта

Во время обновления служба XIOT-PLC останавливается и запускается заново. Связь и управление могут временно прерваться. Выберите безопасное окно обслуживания и согласуйте его с ответственным за объект.

До установки сохраните проект, зафиксируйте текущие версии и подготовьте резервную копию контроллера штатным способом выбранной платформы. Убедитесь, что знаете порядок восстановления. Сохранение проекта не заменяет резервную копию ОС, драйверов и локальных данных контроллера. Копии с данными доступа храните закрыто.

Не отвязывайте контроллер, не удаляйте его настройки и не загружайте другую конфигурацию как обязательную часть обновления. Для обновления уже привязанного устройства повторный вход на странице привязки не требуется.

Установка

1. Подключитесь к устройству

Откройте SSH-соединение с IP-адресом своего устройства. В PuTTY укажите адрес в поле Host Name, выберите SSH и нажмите Open. При первом подключении сверьте отпечаток SSH-ключа по доверенному каналу.

Войдите под административной учётной записью. Если она не root, получите права root штатным способом вашей платформы. Следующий блок выполняется целиком в оболочке root на контроллере, а не на компьютере интегратора.

2. Скачайте, проверьте и установите пакет

cd /root &&
wget -O xiot-14.19.deb https://xiot.pro/system/plcversions/v14.19/xiot.deb &&
printf '%s\n' '2f9f1842bf53a87d19b30a90b05815caef1810a09cb79e3d359bb26b2094498d  xiot-14.19.deb' | sha256sum -c - &&
dpkg -i xiot-14.19.deb

Блок скачивает именно v14.19, проверяет SHA-256 и только затем устанавливает пакет. Операторы && не позволяют перейти к установке при ошибке скачивания или проверки. Не отключайте проверку TLS-сертификата и не заменяйте контрольную сумму произвольным значением.

Ожидаемый результат: проверка контрольной суммы успешна, а dpkg завершает установку без ошибки. Само сообщение установщика о запуске службы ещё не подтверждает её работоспособность — выполните следующие проверки.

Проверка результата

Проверьте установленный пакет:

dpkg-query -W -f='${Status} ${Version}\n' xiot

Ожидаемый ответ: install ok installed 14.19.

Проверьте основную службу:

systemctl status xiot.service --no-pager

Ожидаемое состояние — active (running). Повторите проверку и убедитесь, что служба не завершается и не запускается по кругу. Плановая перезагрузка всей ОС в эти шаги не входит.

После обновления работающего объекта дождитесь восстановления связи в редакторе, сверьте выбранный проект и версию PLC, проверьте основные устройства и сценарии. Успешный запуск службы не заменяет эту проверку. После первой установки нового контроллера переходите к привязке ниже.

Если установка не завершилась

  • При ошибке скачивания или несовпадении SHA-256 не устанавливайте файл. Проверьте сеть, дату устройства и TLS-сертификаты. Не используйте ранее оставшийся пакет без проверки.
  • Если dpkg завершился с ошибкой, сохраните её текст. Не выполняйте универсальное apt upgrade, удаление системных пакетов или очистку данных XIOT как способ исправления.
  • Если служба не запустилась либо постоянно перезапускается, соберите диагностику командами ниже. До выяснения причины не выполняйте новую привязку и не загружайте конфигурацию.
systemctl status xiot.service --no-pager
journalctl -u xiot.service -n 100 --no-pager

Перед передачей диагностики проверьте, что в ней нет паролей, кодов и токенов. Если обновлялся работающий объект, сохраните его данные и обратитесь в техническую поддержку; не отвязывайте контроллер и не повторяйте установку вслепую.

Следующий шаг

Новый, ещё не привязанный контроллер: перейдите к статье «Связываем XIOT-PLC с редактором XIOT». Страница настройки на порту 5551 должна быть доступна только из доверенной сети или через ограниченный защищённый канал, не из открытого интернета.

Обновлённый контроллер с действующей привязкой: продолжайте работать с прежним проектом после проверки результата. Установка новой версии сама по себе не требует повторной привязки или повторной активации лицензии.

Ранний видеобзор

Установка XIOT-PLC на контроллер — видеобзор прежнего интерфейса. Для установки v14.19 используйте актуальные команды и порядок проверки из этой статьи, а не показанные в ранней записи.

Связанные статьи: полный маршрут Wiren Board, Базовая настройка Wiren Board, Первое включение контроллера Wiren Board 8, Настройка драйвера Wiren Board в XIOT, Обновление редактора и контроллера.