16 433
правки
(Прибил гвоздями версию 3.1.11) |
|||
(не показано 20 промежуточных версий 4 участников) | |||
Строка 18: | Строка 18: | ||
== Установка == <!--T:23--> | == Установка == <!--T:23--> | ||
{{Wbincludes:Installing Software In Console Catalog And Update}} | |||
{{Wbincludes:Installing Software In Console}} | |||
<!--T:24--> | <!--T:24--> | ||
Строка 28: | Строка 31: | ||
<!--T:25--> | <!--T:25--> | ||
Запустите установку Node-RED: | Запустите установку Node-RED: | ||
:<syntaxhighlight lang="bash"> | |||
npm install -g --unsafe-perm node-red@3.1.11 | |||
npm install -g --unsafe-perm node-red@ | |||
</syntaxhighlight> | </syntaxhighlight> | ||
<!--T:26--> | <!--T:26--> | ||
Если потребуется обновить версию Node-RED, выполните команду установки ещё раз. | Если потребуется обновить версию Node-RED, выполните команду установки ещё раз. | ||
В релизах wb-2207 и старее устаревшая версия NodeJS, поэтому свежий Node-RED можно поставить только в docker — [[Node-RED_docker|инструкция по установке Node-RED в docker]]. | |||
Также в docker следует устанавливать если требуется версия более новая чем из пакетов. | |||
== Создание сервиса == <!--T:27--> | == Создание сервиса == <!--T:27--> | ||
Строка 47: | Строка 48: | ||
<!--T:29--> | <!--T:29--> | ||
<syntaxhighlight lang="bash"> | <syntaxhighlight lang="bash"> | ||
nano /etc/systemd/system/nodered.service | |||
</syntaxhighlight> | </syntaxhighlight> | ||
Строка 131: | Строка 132: | ||
Инструкции по работе c Node-RED можно найти на [https://nodered.org/docs/getting-started/ сайте nodered.org] | Инструкции по работе c Node-RED можно найти на [https://nodered.org/docs/getting-started/ сайте nodered.org] | ||
== WB Nodes == <!--T:42--> | == Ноды ''mqtt in'' и ''mqtt out'' (рекомендуется) == <!--T:49--> | ||
=== Настройка подключения === | |||
[[Image: NodeRed_mqtt_nodes.jpg |300px|thumb|right| Ноды MQTT в Node-Red ]] | |||
Для работы по MQTT используются ноды '''mqtt in''' и '''mqtt out'''. Также вам понадобятся адреса топиков, взять их можно в веб-интерфейсе контроллера на странице [[Wiren Board Web Interface#mqtt-channels |MQTT-каналы]]. | |||
<!--T:50--> | |||
Для настройки MQTT-соединения в Node-RED выполните следующие действия: | |||
#Перетащите ноду '''mqtt in''' в рабочую область. | |||
#Войдите в конфигурацию ноды и нажмите на '''Карандаш''' напротив поля '''Server'''. | |||
#На вкладке '''Connecting''' задайте адрес брокера и номер порта. | |||
#:В поле '''Name''' введите любое имя сервера. | |||
#:На вкладке '''Security''' можно указать Имя пользователя и Пароль для подключения к брокеру. Если в качестве брокера выступает контроллер Wiren Board, это поле нужно оставить пустым. | |||
#После заполнения всех полей нажмите кнопку '''Update'''. Созданный брокер теперь можно использовать для настройки всех подключений. | |||
#Выберите созданные брокер из списка в поле '''Server'''. | |||
#Введите адрес mqtt-топика в поле '''Topic'''. | |||
#Нажмите кнопку '''Done'''. | |||
<!--T:51--> | |||
По такому же принципу настраивается нода '''mqtt out'''. | |||
<gallery mode="packed" heights="150px" caption="Настройка MQTT-брокера (Server)> | |||
Image: NodeRed_mqtt2.jpg | Вкладка ''Connecting'' | |||
Image: NodeRed_mqtt3.jpg | Вкладка ''Security'' | |||
</gallery> | |||
=== Отправка команд === <!--T:52--> | |||
Для отправки команды контроллеру по MQTT используется нода '''mqtt out'''. При этом в поле '''Topic''' указывается адрес mqtt-топика контроллера, в который необходимо записать параметр. Нужно учитывать, что в конце адреса ноды '''mqtt out''' нужно написать <code>/on</code>, иначе параметр в топик не запишется. Например, <code>/devices/wb-mrgbw-d-fw3_129/controls/RGB Strip/on</code>. Подробнее читайте на странице [[MQTT | MQTT]]. | |||
<gallery mode="packed" heights="150px" caption="Настройка нод для работы с MQTT"> | |||
Image: NodeRed_mqtt4.jpg | Пример настройки ноды '''mqtt in''' | |||
Image: mqtt_out_no.jpg | Пример настройки ноды '''mqtt out''' | |||
Image: NodeRed_mqtt1.jpg | Обмен данными через MQTT в Node-Red | |||
</gallery> | |||
Для отправки параметра в ноду '''mqtt out''' можно использовать ноду '''inject'''. | |||
#Перетащите ноду '''inject''' в рабочую область. | |||
#Подключите ее ко входу ноды '''mqtt out'''. | |||
#Зайдите в настройки ноды '''inject''' и задайте ''Имя'' ноды, ''Тип переменной'' и ее ''Значение''. Нажмите кнопку '''Done'''. | |||
<gallery mode="packed" heights="130px"> | |||
Image: Inject1.jpg | Пример настроек ноды '''inject''' для управления дискретным параметром | |||
Image: Inject2.jpg | Поле настройки периодов повторения отправки ноды '''inject''' | |||
</gallery> | |||
<gallery mode="packed" heights="100px"> | |||
Image: Node_inject.jpg | Пример использования ноды '''inject''' | |||
</gallery> | |||
<!--T:53--> | |||
После настройки ввода и вывода можно обрабатывать данные внутри Node-RED и настроить использование сторонних сервисов, например, [[Node-RED_Alice | Умный дом с Алисой]]. | |||
<!--T:54--> | |||
<gallery mode="packed" heights="150px"> | |||
Image: NodeRed_mqtt5.jpg | Пример управления с помощью Алисы | |||
</gallery> | |||
== WB Nodes (решение сообщества) == <!--T:42--> | |||
[[Файл:Installing node-red-contrib-wirenboard.PNG|500px|thumb|right| Установка WB Nodes на контроллер Wiren Board]] | [[Файл:Installing node-red-contrib-wirenboard.PNG|500px|thumb|right| Установка WB Nodes на контроллер Wiren Board]] | ||
[[Image: nr+wb-settings.png |600px|thumb|right|Настройка соединения с контроллером Wiren Board]] | [[Image: nr+wb-settings.png |600px|thumb|right|Настройка соединения с контроллером Wiren Board]] | ||
Строка 193: | Строка 246: | ||
</syntaxhighlight> | </syntaxhighlight> | ||
Если вы ставили Node-RED в docker, воспользуйтесь инструкцией на странице [[Node-RED_docker|Установка Node-RED в docker]]. | |||
== Примеры использования == <!--T:55--> | == Примеры использования == <!--T:55--> | ||
Строка 252: | Строка 256: | ||
* [https://youtu.be/cKQmU4LZo4c Видео от нашего партнёра: Wiren Board + Node-RED] | * [https://youtu.be/cKQmU4LZo4c Видео от нашего партнёра: Wiren Board + Node-RED] | ||
</translate> | </translate> | ||
* [https://habr.com/ru/company/wirenboard/blog/689098/ Умный дом на Wiren Board и Node-RED: четыре полезных сценария без программирования] | |||
* [https://habr.com/ru/company/wirenboard/blog/689826/ Умный дом на Wiren Board и Node-RED: ещё три полезных сценария без программирования] | |||
* [https://habr.com/ru/company/wirenboard/blog/713274/ Работаем с Zigbee-устройствами через Zigbee2mqtt и Node-RED] |