🔴

Node-RED

Визуальное программирование сценариев и потоков данных
Расширенная автоматизация RealIoT
Node-RED в RealIoT используется не только для сложных сценариев, но и для работы с виртуальными устройствами, историей, расписаниями, уведомлениями и MQTT-потоками. Это основной инструмент, когда логика уже выходит за рамки обычных If-Else сценариев.

Как открыть Node-RED

Node-RED встроен в систему и открывается из интерфейса RealIoT.

  1. Откройте рабочее поле.
  2. Перейдите в раздел сценариев.
  3. Нажмите кнопку Node-RED.
Как открыть Node-RED
Если появляется страница входа, используйте те же логин и пароль, что и для входа в RealIoT.

Актуальные узлы RealIoT

В палитре realiot доступны узлы для чтения состояний, управления устройствами, истории и виртуальных сущностей.

Узлы устройств и состояний

  • mqtt input — реагирует на изменение состояния устройства.
  • state trigger — триггер для запуска потока по условию.
  • device state — получить текущее состояние одного устройства.
  • get multi — получить состояния нескольких устройств сразу.
  • actuator — отправить команду устройству.
  • multi actuator — отправить команды нескольким устройствам.

Узлы истории и ожидания

  • get history — получить исторические точки параметра.
  • history stats — агрегировать историю: минимум, максимум, среднее и другие показатели.
  • wait until — ждать, пока устройство перейдёт в нужное состояние.
  • schedule link — читать состояние расписания из рабочего поля.

Узлы виртуальных устройств

  • virtual switch — виртуальный переключатель.
  • virtual number — виртуальное числовое значение.
  • virtual sensor — виртуальный датчик для передачи произвольного параметра в UI.
  • thermostat — логика для виджета VirtualThermostat.
  • db-writer — запись вычисленных значений обратно в интерфейс и базу.

Узлы сообщений

  • telegram — отправка Telegram сообщений.
  • email — отправка email.
  • sms — отправка SMS.
В тексте ниже используются именно названия нод из палитры Node-RED: mqtt input, actuator, device state, schedule link.

Что обязательно заполнить

Для большинства узлов RealIoT критичны два поля формы:
  • Рабочее поле — имя рабочего поля.
  • Device SN — точный идентификатор устройства или виджета.

Если одно из этих полей заполнено неверно, узел не найдёт устройство и поток не будет работать.

Типовые потоки

Датчик движения включает свет
[mqtt input] → [switch] → [actuator]
  • В mqtt input укажите датчик и параметр occupancy или другой нужный параметр.
  • В switch проверьте значение true или on.
  • В actuator отправьте on на нужное реле.
Автовыключение через delay

Чтобы сделать задержку выключения, добавьте стандартный узел delay:

[mqtt input] → [actuator: on] → [delay] → [actuator: off]

Так удобно делать автоотключение света, вентиляции, сирены или кратковременный импульс управления.

Расписание из рабочего поля

Для чтения расписания используйте schedule link. Он берёт данные из виджета Virtual Schedule.

  • Укажите поля Рабочее поле и Device SN расписания.
  • На выходе доступны текущее состояние on/off и информация о следующем событии.
  • Редактирование интервалов выполняется на рабочем поле, а не внутри узла.
Термостат через VirtualThermostat

Для климатической логики используется связка:

[датчик температуры] → [thermostat] → [actuator / реле] ↓ [db-writer]

Подробная логика виджета описана на странице VirtualThermostat.

Виртуальные устройства как интерфейс
  • virtual switch — для режимов типа «Авто/Ручной».
  • virtual number — для уставок и числовых параметров.
  • virtual sensor + db-writer — для вывода вычисленных значений в интерфейс.

Это особенно удобно для статусов, расчётных величин и промежуточных логических флагов.

История и аналитика в потоках

Если у параметра включено хранение истории, Node-RED может работать с архивом напрямую:

  • get history — выгружает сырые исторические данные.
  • history stats — считает агрегаты по окну времени.
  • Дальше можно использовать стандартные узлы function, switch, change, template.
Если история у параметра не включена в свойствах устройства, архивные узлы не смогут получить данные.

Полезные стандартные узлы

  • inject — периодический запуск потока.
  • switch — развилка по условиям.
  • change — преобразование структуры msg.
  • function — JavaScript логика.
  • delay — задержка, rate limit и буферизация.
  • debug — проверка, что именно выходит из узла.

Сохранение и перенос flow

После любых изменений нажимайте Deploy.

  1. Для резервной копии откройте меню Export и сохраните JSON flow.
  2. Для переноса используйте меню Import.
  3. После импорта обязательно проверьте значения полей Рабочее поле и Device SN.

Типичные проблемы

  • Опечатка в имени рабочего поля.
  • Неправильный Device SN.
  • Забыт Deploy после изменения flow.
  • Выбран не тот параметр устройства.
  • История не включена, но поток пытается читать архив.

✅ Node-RED в RealIoT готов к работе

Используйте Node-RED для сложной логики, виртуальных устройств, истории и интеграций, а простые автоматизации оставляйте в обычных сценариях If-Else.

← Назад к справке