Установка Node-RED на контроллеры Wiren Board

Материал из Wiren Board
Node-RED на WB6
Установка WB Nodes на контроллер Wiren Board

Описание

Node-RED — это инструмент визуального программирования, основанный на Node.js и который разрабатывается и поддерживается открытым сообществом.

Подробное описание, инструкции и примеры использования можно найти на сайте nodered.org, а поддержку сообщества в телеграм-канале Node-RED.

Установка

Для установки Node-RED на Wiren board 6 подключитесь к контроллеру по SSH и введите в консоль несколько команд.

Установите необходимые компоненты:

apt install -y nodejs git make g++ gcc build-essential

Запустите установку Node-RED:

npm install -g --unsafe-perm node-red

Создание сервиса

Для автозапуска Node-RED необходимо настроить сервис. Для этого в папке /etc/systemd/system/ создайте файл nodered.service:

nano /etc/systemd/system/nodered.service

Затем вставьте в этот файл строки:

[Unit]
Description=Node-RED graphical event wiring tool
Wants=network.target

[Service]
Type=simple
User=root
Group=root
WorkingDirectory=/home

Nice=5
Environment="NODE_OPTIONS=--max_old_space_size=256"
ExecStart=/usr/bin/env node-red $NODE_OPTIONS $NODE_RED_OPTIONS
KillSignal=SIGINT
Restart=on-failure
SyslogIdentifier=Node-RED

[Install]
WantedBy=multi-user.target

Сохраните изменения и закройте файл. Теперь для включения сервиса нужно ввести команду:

systemctl enable nodered.service && systemctl start nodered.service

Запуск

После создания и настройки сервиса nodered его нужно запустить, для этого выполните команду:

service nodered start

Веб-интерфейс Node-RED

После запуска сервиса откройте браузер и введите адрес своего контроллера в сети и порт 1880. Например: http://192.168.42.1:1880

Инструкции по работе c Node-RED можно найти на сайте nodered.org

WB Nodes

Настройка соединения с контроллером Wiren Board

Чтобы упростить взаимодействие Node-RED с контроллером Wiren Board, пользователь Andrej_Popov написал модуль node-red-contrib-wirenboard.

Установка

Установим его через веб-интерфейс Node-RED:

  1. Зайдите в веб-интерфейс Node-RED.
  2. В правом верхнем углу вызовите меню.
  3. В открывшемся окне выберите вкладку Управление палитрой (Manager palette).
  4. Перейдите на вкладку Установка (Install), введите в поле поиска wirenboard и нажмите на клавиатуре Enter.
  5. Установите пакет с названием node-red-contrib-wirenboard.
  6. Закройте окно с настройками. Установка модуля завершена.

После установки, в левой панели появится секция Wiren Board.

Настройка

После того как вы установили WB Nodes, вам нужно настроить соединение с MQTT-брокером контроллера Wiren Board:

  1. Добавьте в рабочую область ноду WB-input, которая находится в левой панели, в секции Wiren Board.
  2. Дважды кликните на ней, откроется окно Edit in node.
  3. Найдите в нём поле Server и нажмите на кнопку с карандашом. Откроется окно Add new wirenboard-server config node.
  4. Заполните поля Name, Host и MQTT Port. Если Node-RED установлен на контроллере — в поле Host пропишите localhost.
  5. Сохраните настройки сервера нажатием на кнопку Done.
  6. Закройте окно Edit in node нажатием на Cansel.

После настройки подключения, примените настройку сервера нажатием кнопки Deploy справа вверху. Только после этого будет доступен список каналов контроллера Wiren Board.

Вы настроили WB Nodes и можете писать автоматизации с использованием Node-RED.

Проверка настроек

Чтобы проверить правильность настроек:

  1. Добавьте в рабочую область любую ноду из группы Wiren Board, например, WB-input.
  2. Дважды кликните на ноде WB-input, откроется окно Edit in node.
  3. В окне Edit in node нажмите кнопку Refresh Device List.

Если соединение настроено верно, то в выпадающем списке поля Cnahhel появится список доступных для использования каналов.

Пример

Пример работы с WB-Nodes смотрите в статье Настройка Telegram-бота.