Пошаговое руководство: Установка Node-RED на PLCnext с использованием Podman
Как установить Node-RED в PLCnext с Podman
Начиная с прошивки 2023.0, Podman (https://podman.io/) установлен в операционной системе PLCnext. Podman выполняет ту же функцию, что и Docker. Эта реализация гарантирует более простую установку Node-RED для конечного пользователя.
ВАЖНО: Из-за изменений, которые PLCnext претерпевает с каждым обновлением прошивки, эти процедуры могут перестать работать в будущем. Если это случится, этот документ будет обновлен.
Создано 05-03-2024
Последнее изменение 11-03-2024
Требования
Контроллер: AXC F 1152 - AXC F 2152 - AXC F 3152
Накопитель: SD-память 2 ГБ или выше для AXC F 1152 / 2152
Прошивка: 2023.0 LTS или выше
1. Шаги установки:
1.1. Доступ через SSH-клиент:
Вы должны получить доступ, используя
Puttyили ваш любимыйSSH-клиент, используя IP вашего ПЛК. Помните, что IP по умолчанию —192.168.1.10.Войдите с именем пользователя
adminи паролем вашего PLCnext.
1.2. Доступ как root-пользователь:
- После входа в PLCnext вам нужно получить доступ как root-пользователь с помощью команды
su
su
- Если вы еще не создали пароль root, создайте его командой
sudo passwd root
sudo passwd root
ПРИМЕЧАНИЕ: Пользователи admin и root — разные. Установка другого пароля для root-пользователя не повлияет на пользователя «admin».
1.3. Установка Node-RED:
- После входа как root-пользователь вы можете установить официальный образ Node-RED версии 2.2.2 с помощью следующей команды:
podman run -d -p 1880:1880 --name nodered --restart always docker.io/nodered/node-red:2.2.2
1.4. Установка примеров:
Я создал контейнеры Node-RED для PLCnext AXC F 1152 / 2152, включающие библиотеки для работы с PLCnext. Эти контейнеры также включают примеры отправки тревог, чтения и записи с использованием OPC UA. Чтобы установить любой из этих примеров, используйте следующие команды:
Для установки примера «Alarm Sending» (Отправка тревог):
podman run -d -p 1880:1880 --name nodered --restart always docker.io/fellipem/noderedpxc:alarms
- Для установки примера «Reading and writing OPC UA» (Чтение и запись OPC UA):
podman run -d -p 1880:1880 --name nodered --restart always docker.io/fellipem/noderedpxc:opcua
1.5. Доступ к Node-RED:
- После завершения вы можете начать использовать Node-RED, введя
IP_PLC:1880в вашем веб-браузере. Например, если IP-адрес вашего ПЛК 192.168.1.10, вы введете192.168.1.10:1880.
ПРЕДУПРЕЖДЕНИЕ: В отличие от Docker, Podman не запускается как сервис в PLCnext. Поэтому Node-RED не запустится автоматически при включении ПЛК. Чтобы Node-RED запускался вместе с ПЛК, выполните следующие шаги:
2. Шаги для автозапуска Node-RED:
2.1. Создание скрипта запуска:
- Используйте следующую команду на вашем ПЛК для загрузки этого проекта:
git clone https://github.com/Fellipem1/PLCnext_Node-RED.git
2.2. Перемещение файла:
- Переместите файл
nodered.shв путь/etc/init.d/с помощью следующей команды:
mv /opt/plcnext/PLCnext_Node-RED/nodered.sh /etc/init.d/
2.3. Изменение прав файла:
- Выполните следующую команду для изменения прав файла
nodered.sh:
chmod +x /etc/init.d/nodered.sh
2.4. Добавление скрипта в автозагрузку:
- Метод добавления скрипта в автозагрузку зависит от используемого дистрибутива Linux. В случае PLCnext следует использовать следующую команду:
update-rc.d nodered.sh defaults
- Выполняя приведенные выше шаги, Node-RED будет готов к автоматическому запуску каждый раз при выключении или перезагрузке PLCnext.
ПРИМЕЧАНИЕ: Помните, что эти шаги всегда нужно выполнять от пользователя root.
3. Шаги установки библиотек в Node-RED:
3.1. Запуск Node-RED и вход в контейнер:
- Войдите как root-пользователь и введите следующие команды:
podman start nodered
podman exec -it nodered /bin/bash
cd /data
3.2. Установка библиотеки:
- Теперь вы можете установить любую библиотеку с помощью команд npm, например:
npm i node-red-contrib-iiot-opcua@3.11.1-4
3.3. Выход из контейнера и перезапуск Node-RED:
- После завершения введите Exit и перезапустите node-RED следующими командами:
podman stop nodered
podman start nodered
4. Частые ошибки
4.1. Ошибка 1: mkdir no such file or directory
- Следующая ошибка возникает, потому что пользователь
adminне имеет достаточных привилегий для установки Node-RED. Для решения проблемы нужно войти как пользовательroot.
4.2. Ошибка 2: Certificate Expired (Срок действия сертификата истек)
- Следующая ошибка возникает, потому что на PLCnext настроены неправильные время и дату. Вы можете проверить время и дату командой
date. - Чтобы изменить время на PLCnext, используйте следующую команду:
date -s “29 FEB 2024 11:25:39”
- Не забудьте изменить команду на текущее время и дату UTC: https://time.is/es/UTC
4.3. Ошибка 3: Failed, retrying timeout (Неудача, повторная попытка таймаута)
- Эта ошибка возникает, потому что PLCnext не имеет доступа в интернет. Вы можете проверить это командой
ping, например:
ping google.cl
- Если выводит
bad address, вы должны проверить конфигурацию IP, маски и шлюза PLCnext. Это можно сделать с веб-сервера, раздел Network (Сеть).
Больше информации: https://github.com/Fellipem1/PLCnext_Node-RED
Промышленные технологии
- Harting представляет три комплекта стартовых наборов для промышленных IoT-приложений
- Температурный коэффициент сопротивления: как температура меняет проводимость
- Исследование технологий 3D-печати: SLA, SLS, FDM, DLP, MJF, PolyJet, DMLS и другие
- Оптимизация сложных конструкций с помощью боковых механизмов в литье под давлением
- Водородные топливные элементы: новая граница устойчивого транспорта
- Экспорт данных PLCnext Datalogger в CSV: Пошаговое руководство
- Открываем jQuery 3: 17 мощных новых возможностей и как их использовать
- Восстановление коммунальных служб после природных катаклизмов: стратегии быстрого восстановления и устойчи…
- 7 проверенных стратегий для успешных плановых остановок завода
- Литье металлов в раскрытии: Четыре основных метода и основы проектирования