Skip to content
  • Home
  • Recent
  • Tags
  • 0 Unread 0
  • Categories
  • Unreplied
  • Popular
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Русский
  3. ioBroker
  4. Скрипты
  5. node-red Скрипты (flows)
  6. Node-RED примеры, решения и и вопросы. Общая тема по Node-RED

NEWS

  • Monatsrückblick Januar/Februar 2026 ist online!
    BluefoxB
    Bluefox
    18
    1
    675

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    18
    1
    5.7k

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    13
    1
    1.5k

Node-RED примеры, решения и и вопросы. Общая тема по Node-RED

Scheduled Pinned Locked Moved node-red Скрипты (flows)
85 Posts 16 Posters 78.7k Views 3 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • S Offline
    S Offline
    Sergey777
    wrote on last edited by
    #32

    Арифметические операции в NODE-RED, сложение, умножение, вычитание, деление,.. Округление, и т.д.

    Есть у меня сенсоры под таким длинным названием "XIAOMI AQARA SMART HOME TEMPERATURE HUMIDITY PRESSURE SENSOR ZIGBEE". Это беспроводной датчик, работающий по протоколу ZigBee
    5574_temper.png
    Он отправляет следующие данные в систему iobroker:

    1. Влажность, %

    2. Температура, °C

    ****3. Давление, гПа *****

    4. Заряд батареи, %

    5. Напряжение батареи, V

    6. Также на этом сенсоре есть кнопка, и её состояние отображается как false или true, при не нажатом и нажатом состоянии соответственно.

    ********* Гектопаскаль. Вся неудобность в том, что у нас, в России, принято измерять давление в миллиметрах ртутного столба ( мм.рт.ст.) А датчик даёт в Гектопаскалях.

    ! Гектопаскаль (гПа) — единица измерения давления, механического напряжения и модуля Юнга (модуля упругости) в Международной системе единиц (СИ), кратная паскалю. Паскаль равен давлению (механическому напряжению), вызываемому силой, равной одному ньютону, равномерно распределённой по перпендикулярной к ней поверхности площадью один квадратный метр.
    Значит нужно конвертировать одно значение в другое. Для этого сначала создадим переменную, в которой будет храниться значение в мм.рт.ст. Я решил создать её в той же папке датчика, где другие его переменные. Для этого идём в меню "Объекты", выбираем mihome.0, далее devices и выбираем папку weather_v1_158d0002271cea. В верхней панели жмём плюс - "добавить объект к выделенному элементу"

    Имя вводим "Pressure_mm_rt_st", далее "состояние" далее "логическая переменная".

    Если заглянуть в настройки, то у меня выглядит так:

    ! 5574_vv.png
    5574_mm.png
    И наконец-то мы готовы идти в Node-RED.

    Тут вся наша конвертация сводится к двум операциям, умножению и округлению, которые выполняются в блоке function

    Код такой:

    msg.payload = Number((msg.payload * 0.750062).toFixed(1));
    return msg;
    
    

    1. Number - указываем функцию "force-number", для работы с числами.

    Подробнее: https://www.npmjs.com/package/force-number

    2. Число полученное из msg.payload умножаем на константу 0.750062,

    тем самым преобразовав величину давления "гПа" в "мм.рт.ст"

    3. К результату умножения применяем округление до 1 знака

    в дробной части - функция .toFixed(1) , Для округления до целых - .toFixed()

    Сам не знал как, подсказали ссылки

    1. https://community.openenergymonitor.org … -help/2939

    2. https://stackoverflow.com/questions/398 … tion-block

    Ну и код:

    ! [ { "id": "c03c9ab1.dac5c8", "type": "debug", "z": "5c8c6088.754b2", "name": "Давление гПа (1cea)", "active": true, "tosidebar": true, "console": false, "tostatus": false, "complete": "payload", "x": 380, "y": 60, "wires": [] }, { "id": "72319ea.5b38e6", "type": "ioBroker in", "z": "5c8c6088.754b2", "name": "Pressure Pa (1cea)", "topic": "mihome.0.devices.weather_v1_158d0002271cea.pressure", "payloadType": "value", "onlyack": "", "func": "all", "gap": "", "x": 110, "y": 120, "wires": [ [ "55984769.8246b8", "c03c9ab1.dac5c8" ] ] }, { "id": "391cd606.2d382a", "type": "ioBroker out", "z": "5c8c6088.754b2", "name": "Pressure_mm_rt_st", "topic": "mihome.0.devices.weather_v1_158d0002271cea.Pressure_mm_rt_st", "ack": "true", "autoCreate": "false", "x": 670, "y": 120, "wires": [] }, { "id": "55984769.8246b8", "type": "function", "z": "5c8c6088.754b2", "name": "х 0.750062", "func": "msg.payload = Number((msg.payload * 0.750062).toFixed(1));\nreturn msg;\n\n/*\n1.\nNumber - указываем функцию \"force-number\", для работы с числами.\nПодробнее: https://www.npmjs.com/package/force-number\n\n2.\nЧисло полученное из msg.payload умножаем на константу 0.750062,\nтем самым преобразовав величину давления \"гПа\" в \"мм.рт.ст\"\n\n3.\nК результату умножения применяем округление до 1 знака\nв дробной части - функция .toFixed(1)\nДля округления до целых - .toFixed()\n*/\n", "outputs": 1, "noerr": 0, "x": 350, "y": 120, "wires": [ [ "391cd606.2d382a", "8b093ee8.87f8" ] ] }, { "id": "8b093ee8.87f8", "type": "debug", "z": "5c8c6088.754b2", "name": "Давление мм.рт.ст (1cea)", "active": true, "tosidebar": true, "console": false, "tostatus": false, "complete": "payload", "x": 700, "y": 60, "wires": [] } ] !
    5574_fun.png

    Вот и всё, теперь в переменой mihome.0.devices.weather_v1_158d0002271cea.Pressure_mm_rt_st мы видим давление в мм.рт.ст.

    1 Reply Last reply
    0
    • O Offline
      O Offline
      OlegJktu
      wrote on last edited by
      #33
      1. Sergey777 За математику спасибо. Как всегда оформлено все на 5+ .

      2. я добавил новые "интересные материалы по nod-red" в первый пост этой темы. Если кто еще что интересное знает пишите - добавлю. Что бы всем было легче осваивать Nod-red.

      1 Reply Last reply
      0
      • B Offline
        B Offline
        Beer100
        wrote on last edited by
        #34

        Помогите, плиз. Пока изучаю Ноде с нуля.

        После установки НодеРед - день поработал, поучился, все было норм. На следующий день комп с утра стал грузить проц на 100 с лишним процентов. Закрытие Нода в браузере не помогло. Проблема решилась только после полной деинсталляции программы.

        Что я делаю не так?

        1 Reply Last reply
        0
        • O Offline
          O Offline
          OlegJktu
          wrote on last edited by
          #35

          Скорее всего сделали цикл где-нибудь бесконечный.

          Я так один раз написал в один поток который включал-выключал лампы по кругу. Вот тогда 90% проца и выжрало. Выжрало-бы и все, но у меня УД в контейнере. В его ограничения аппетит nod-red и уперся.

          1 Reply Last reply
          0
          • O Offline
            O Offline
            OlegJktu
            wrote on last edited by
            #36

            Сломал Nod-red при попытке установить node-red-contrib-xiaomi-miio.

            В драйверах горел зеленным, правила неработали, вебморду Nod-red не открывал.

            Перезапуск/Удаление/установка не помогли.

            Я раскатал бекап всего IoBroker.

            Нужно сделать скрипт на бекапа IoBroker или разобраться с новым драйвером для бекапа.

            И разобраться где flow лежат в файлах.

            1 Reply Last reply
            0
            • A Offline
              A Offline
              ap2017
              wrote on last edited by
              #37

              Что лучше для тех кто не пишет скрипты: Нод Ред или Блокли?

              Sent from my SM-N920V using Tapatalk

              1 Reply Last reply
              0
              • O Offline
                O Offline
                OlegJktu
                wrote on last edited by
                #38

                Без разницы. Фунционал по логике аналогичен.

                Есть небольшие плюшки node-red можно взять нормально написанный кусок, допусти bigtimer

                https://tech.scargill.net/big-timer/

                и там куча проблемм за вас уже решили. Но если очень хочется, то такое можно и в блокли собрать.

                Дополнительная плюшка node-red можно втянуть оборудование которое в iobroker еще нет, а в node-red уже есть. Но и там можно скриптами на js или blokly вкарачиться.

                1 Reply Last reply
                0
                • A Offline
                  A Offline
                  ap2017
                  wrote on last edited by
                  #39

                  Спасибо. А по надёжности работы в среде IOB они одинаковы?

                  Sent from my SM-N920V using Tapatalk

                  1 Reply Last reply
                  0
                  • O Offline
                    O Offline
                    OlegJktu
                    wrote on last edited by
                    #40

                    По надёжности одинаково.

                    Но в русскоязычное ветке js и блокли более распространена

                    1 Reply Last reply
                    0
                    • A Offline
                      A Offline
                      ap2017
                      wrote on last edited by
                      #41

                      @OlegJktu:

                      По надёжности одинаково.

                      Но в русскоязычное ветке js и блокли более распространена ` Спасибо

                      Sent from my SM-N920V using Tapatalk

                      1 Reply Last reply
                      0
                      • G Offline
                        G Offline
                        Golan
                        wrote on last edited by
                        #42

                        Приветствую всех пользователей Node-Red.

                        Ребята подскажите пожалуйста как в dashboard, менять расположение виджетов, у меня только вертикально все стоят, никак не получается их расположить например горизонтально.

                        Буду очень признателен за любой ответ.

                        Спасибо.

                        ! 8555_5.jpg

                        Добро не ценится в современном мире, люди от него наглеют.

                        1 Reply Last reply
                        0
                        • O Offline
                          O Offline
                          OlegJktu
                          wrote on last edited by
                          #43

                          @Golan:

                          Буду очень признателен за любой ответ.

                          Спасибо. `

                          1. Честно говоря я с nod-red dashboard еще не разбирался (пока хватает визуализаций завязанных на iobroker (вообще основной у меня habpanel она в iob полностью затащена ).

                          но у меня в закладках вот такой пример термостата

                          https://tech.scargill.net/a-thermostat-weekend/

                          Кажется его можно затащить к себе и посмотреть.

                          1. В шапке есть ссылка на телеграмм канал, там водяться гуру.
                          1 Reply Last reply
                          0
                          • O Offline
                            O Offline
                            OlegJktu
                            wrote on last edited by
                            #44

                            Нашел пример управления xiaomi пылесосом с уборкой по комнатам

                            https://flows.nodered.org/flow/6d284006 … 78568f179c

                            Решил сюда положить, что бы не потерять. Давно хочу сделать кнопки - вызов пылесоса для уборки в комнату.

                            1 Reply Last reply
                            0
                            • G Offline
                              G Offline
                              Golan
                              wrote on last edited by
                              #45

                              @OlegJktu:

                              пока хватает визуализаций завязанных на iobroker `
                              А можно поинтересоваться какие на IoBrokere есть? Я там вижу именно Dashboard

                              Добро не ценится в современном мире, люди от него наглеют.

                              1 Reply Last reply
                              0
                              • O Offline
                                O Offline
                                OlegJktu
                                wrote on last edited by
                                #46
                                1. ну я думал что выше мы обсуждали nod-red dashboard. Его в драйверах (адаптерах) ioBroker не видно (он целиком на Node-red завязан).

                                2. vis https://github.com/iobroker/iobroker.vi … /README.md (он кстати в читый nod-red портирован)

                                3. материал https://github.com/ioBroker/ioBroker.ma ... /README.md

                                4. мобайл https://github.com/ioBroker/ioBroker.mo ... /README.md

                                5. мой любимый хаб панель https://github.com/ioBroker/ioBroker.ha ... /README.md

                                Немного особняком стоят:

                                1. приложение для андроид iogo https://github.com/nisiode/ioBroker.iog ... /README.md

                                2. возможность создавать бота с кнопками, графиками и пр. в мессенджере телеграмм

                                Я на хабпанели и телеграмм, немного тыкаюсь в material

                                1 Reply Last reply
                                0
                                • G Offline
                                  G Offline
                                  Golan
                                  wrote on last edited by
                                  #47

                                  Ребят, подскажите пожалуйста.

                                  Поставил брокер на Windows 7, и не вижу драйверов кроме

                                  ! 8555_1.jpg
                                  Как мне их подгрузить или что еще сделать?

                                  Добро не ценится в современном мире, люди от него наглеют.

                                  1 Reply Last reply
                                  0
                                  • O Offline
                                    O Offline
                                    OlegJktu
                                    wrote on last edited by
                                    #48

                                    такое лучше всего на канале в телеграмм спрашивать

                                    https://web.telegram.org/#/im?p=@iobroker

                                    PS лучше конечно было виртуалку поднимать win хост, linux гость. Настроить что бы дестопная win не ломала софт УД местами очень тяжело. Одни перезагрузки чего стоят.

                                    1 Reply Last reply
                                    0
                                    • G Offline
                                      G Offline
                                      Golan
                                      wrote on last edited by
                                      #49

                                      Спасибо, ссылка ведет на пустую страницу, к сожалению.

                                      Добро не ценится в современном мире, люди от него наглеют.

                                      1 Reply Last reply
                                      0
                                      • O Offline
                                        O Offline
                                        OlegJktu
                                        wrote on last edited by
                                        #50

                                        :oops:

                                        https://t.me/iobroker

                                        Так наверно правильно.

                                        В общем в телеграмме поиск канала iobroker

                                        1 Reply Last reply
                                        0
                                        • O Offline
                                          O Offline
                                          OlegJktu
                                          wrote on last edited by
                                          #51

                                          Пришлось разобраться с неработоспособностью некоторых flow после перезагрузки сервера.

                                          Как и подозревал, проблема была в том что при старте (перезагрузке) Nod-red состояния некоторых Flow были не определенными - в итоге сообщение дальше них и не шло.

                                          Разыскал и установил вот такой кубик

                                          https://flows.nodered.org/node/node-red-contrib-config

                                          Собственно при запуске Nod-red устанавливает flow в определенное значение.

                                          ! 3955_screenshot_20181122_133619.png

                                          Собственно можно было и как нибудь через переменную хранящуюся в базе данных переписать. Но так вроде сущностей меньше.

                                          upd вот это правило и поправил viewtopic.php?f=48&t=11969&p=146339#p146339

                                          1 Reply Last reply
                                          0

                                          Hello! It looks like you're interested in this conversation, but you don't have an account yet.

                                          Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.

                                          With your input, this post could be even better 💗

                                          Register Login
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          473

                                          Online

                                          32.7k

                                          Users

                                          82.6k

                                          Topics

                                          1.3m

                                          Posts
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Login

                                          • Don't have an account? Register

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • Home
                                          • Recent
                                          • Tags
                                          • Unread 0
                                          • Categories
                                          • Unreplied
                                          • Popular
                                          • GitHub
                                          • Docu
                                          • Hilfe