Weiter zum Inhalt

Node-Red

961 Themen 13.2k Beiträge

Hilfe für Skripterstellung mit Node-RED

NEWS

  • [gelöst]Node Red leseanfrage auf KNX-Adresse

    11
    0 Stimmen
    11 Beiträge
    3k Aufrufe
    T
    @lessthanmore Danke für Deine Antworten! Habe die Nodes installiert und mit der KNX Device einen read auf die Adresse gemacht. Hier meine Nodes [image: 1634646800554-smelly-zyklisch.jpg] Der Codeschloss (Dummy) bringt mir ein konstantes "false". Den KNX-Device habe ich wie folgt eingestellt [image: 1634647089985-einstellungen-1.jpg] [image: 1634647109506-einstellungen-2.jpg] So funktioniert es! Danke! Wenn noch Korrekturbedarf besteht bitte melden!
  • S7Time in Auswerten

    2
    0 Stimmen
    2 Beiträge
    248 Aufrufe
    VumerV
    @system-9 Haben wir mal für die LOGO!8 gebastelt LOGO! & Wochenschaltuhr
  • wait until-ähnliche Node / Arbeit mit "Context"

    13
    2
    0 Stimmen
    13 Beiträge
    2k Aufrufe
    mickymM
    @noah3112 Hatte ich schon mal gepostet - deshalb hier einfach noch mal rauskopiert: ;) Hier gibts ein paar deutschsprachige Videos: https://haus-automatisierung.com/nodered-tutorial-reihe/ Nur die Function Nodes würde ich nie nutzen, dass geht mit Change Nodes viel einfacher!!! Die besten Tutorials sind in Englisch - aber ich finde den Typ eigentlich super - sodass man es auch als nicht nativ-Speaker versteht. aber empfehlen würde ich Dir diese Seite: http://www.steves-internet-guide.com/node-red-overview/ dann die ersten Videos von Steve unter Using Node-Red Nodes startet hier: Beginners Guide to Node Red Inject and Debug Nodes Ich finde, selbst wenn man nicht gut Englisch kann, kann mir hier durch Zuschauen viel von Steve lernen. Ausserdem hast Du wenn Du eine Node in Deinen Flow ziehst - über die Node Hilfe eine Beschreibung, wie der Node funktioniert. Schau mal ob Dir das hilft. Ich selbst habe kein Tutorial verfasst. ;) Ansonsten hier noch der Link zum Forum: https://nodered.org/ Und falls ich Dir anhand einer konkreten Aufgabenstellung helfen soll, dann melde Dich einfach über einen Thread - da konnte ich ja schon manches erklären. Ich muss gestehen das mir zB Blockly leichter fällt und mich sehr viel schneller ans Ziel bringt. Das kann ich ja gar nicht verstehen. Ist bei mir umgekehrt - aber vielleicht kann ich ja was dafür tun, dass sich an der Geschwindigkeit was ändert. ;) Ach und am Besten Du nimmst ein bestehendes Blockly und versuchst das mal in NodeRed umzusetzen - dann siehst ja wie beides funktioniert und was ggf. einfacher ist. Das Prinzip ist nämlich immer das Gleiche - egal was Du nutzt: Trigger => Verarbeitung => Steuerung bzw. Ausgabe
  • Zwei Bewegungsmelder

    9
    0 Stimmen
    9 Beiträge
    1k Aufrufe
    mickymM
    @frank-harmsen Ob die Logik wirklich durchdacht ist, weiß ich nicht - aber es macht das was Du oben beschrieben hast. [image: 1633557805336-4fa44048-fbc2-4289-9f07-fa89973a8bd6-image.png] Spoiler [ { "id": "abfb39e8.5bf0e8", "type": "inject", "z": "169f5b00.a13415", "name": "BWM1 = true", "props": [ { "p": "payload" } ], "repeat": "", "crontab": "", "once": false, "onceDelay": 0.1, "topic": "", "payload": "true", "payloadType": "bool", "x": 650, "y": 1280, "wires": [ [ "26863212.2a10de", "415ed3df.e71bfc" ] ] }, { "id": "26863212.2a10de", "type": "change", "z": "169f5b00.a13415", "name": "", "rules": [ { "t": "set", "p": "bwm1", "pt": "flow", "to": "payload", "tot": "msg" } ], "action": "", "property": "", "from": "", "to": "", "reg": false, "x": 860, "y": 1300, "wires": [ [] ] }, { "id": "91480312.9782d", "type": "inject", "z": "169f5b00.a13415", "name": "BWM1 = false", "props": [ { "p": "payload" } ], "repeat": "", "crontab": "", "once": false, "onceDelay": 0.1, "topic": "", "payload": "false", "payloadType": "bool", "x": 650, "y": 1320, "wires": [ [ "26863212.2a10de" ] ] }, { "id": "d0f7b0a7.4ca66", "type": "inject", "z": "169f5b00.a13415", "name": "BWM2 = true", "props": [ { "p": "payload" } ], "repeat": "", "crontab": "", "once": false, "onceDelay": 0.1, "topic": "", "payload": "true", "payloadType": "bool", "x": 650, "y": 1440, "wires": [ [ "846fad4e.5e4b3", "30e465a4.93956a" ] ] }, { "id": "1d50e327.49c71d", "type": "inject", "z": "169f5b00.a13415", "name": "BWM2 = false", "props": [ { "p": "payload" } ], "repeat": "", "crontab": "", "once": false, "onceDelay": 0.1, "topic": "", "payload": "false", "payloadType": "bool", "x": 650, "y": 1480, "wires": [ [ "846fad4e.5e4b3" ] ] }, { "id": "846fad4e.5e4b3", "type": "change", "z": "169f5b00.a13415", "name": "", "rules": [ { "t": "set", "p": "bwm2", "pt": "flow", "to": "payload", "tot": "msg" } ], "action": "", "property": "", "from": "", "to": "", "reg": false, "x": 860, "y": 1460, "wires": [ [] ] }, { "id": "30e465a4.93956a", "type": "switch", "z": "169f5b00.a13415", "name": "bwm1 = true?", "property": "bwm1", "propertyType": "flow", "rules": [ { "t": "true" } ], "checkall": "true", "repair": false, "outputs": 1, "x": 860, "y": 1400, "wires": [ [ "34c75b61.666904" ] ] }, { "id": "34c75b61.666904", "type": "debug", "z": "169f5b00.a13415", "name": "schalte Lampe 1", "active": true, "tosidebar": true, "console": false, "tostatus": false, "complete": "payload", "targetType": "msg", "statusVal": "", "statusType": "auto", "x": 1100, "y": 1400, "wires": [] }, { "id": "415ed3df.e71bfc", "type": "switch", "z": "169f5b00.a13415", "name": "bwm2 = true?", "property": "bwm2", "propertyType": "flow", "rules": [ { "t": "true" } ], "checkall": "true", "repair": false, "outputs": 1, "x": 860, "y": 1240, "wires": [ [ "f82d9d1b.6bc16" ] ] }, { "id": "f82d9d1b.6bc16", "type": "debug", "z": "169f5b00.a13415", "name": "schalte Lampe 2", "active": true, "tosidebar": true, "console": false, "tostatus": false, "complete": "payload", "targetType": "msg", "statusVal": "", "statusType": "auto", "x": 1080, "y": 1240, "wires": [] } ] Statt den 4 Inject Nodes nimms natürlich die 2 Trigger Nodes des BWM1 bzw BWM2 (iobroker In) Nodes. Aber zum Simulieren eignet es sich gut. Du kannst das natürlich auch Hucke-Pack mit einer iobroker-get Node auslesen, ob der jeweils andere BWM bereits true ist. Man könnte ggf. mit Schalten der Lampe die Flowvariable zurücksetzen und muss nicht warten bis der BWM das macht, dann würde er sogar schneller auf eine Wechselbewegung reagieren, wenn der ursprüngliche BWM sich nur aktualisiert. Das wäre dann die Version, die quasi den BWM der als erstes triggert zurückzusetzen - ausser wird erneut getriggert. Das kann man falls auch noch gewünscht entprellen: [image: 1633559409834-38ca1336-7f41-4711-bc51-8223eb6c10d9-image.png] Spoiler [ { "id": "abfb39e8.5bf0e8", "type": "inject", "z": "169f5b00.a13415", "name": "BWM1 = true", "props": [ { "p": "payload" } ], "repeat": "", "crontab": "", "once": false, "onceDelay": 0.1, "topic": "", "payload": "true", "payloadType": "bool", "x": 510, "y": 1220, "wires": [ [ "26863212.2a10de", "415ed3df.e71bfc" ] ] }, { "id": "26863212.2a10de", "type": "change", "z": "169f5b00.a13415", "name": "", "rules": [ { "t": "set", "p": "bwm1", "pt": "flow", "to": "payload", "tot": "msg" } ], "action": "", "property": "", "from": "", "to": "", "reg": false, "x": 720, "y": 1240, "wires": [ [] ] }, { "id": "91480312.9782d", "type": "inject", "z": "169f5b00.a13415", "name": "BWM1 = false", "props": [ { "p": "payload" } ], "repeat": "", "crontab": "", "once": false, "onceDelay": 0.1, "topic": "", "payload": "false", "payloadType": "bool", "x": 510, "y": 1260, "wires": [ [ "26863212.2a10de" ] ] }, { "id": "d0f7b0a7.4ca66", "type": "inject", "z": "169f5b00.a13415", "name": "BWM2 = true", "props": [ { "p": "payload" } ], "repeat": "", "crontab": "", "once": false, "onceDelay": 0.1, "topic": "", "payload": "true", "payloadType": "bool", "x": 510, "y": 1380, "wires": [ [ "846fad4e.5e4b3", "30e465a4.93956a" ] ] }, { "id": "1d50e327.49c71d", "type": "inject", "z": "169f5b00.a13415", "name": "BWM2 = false", "props": [ { "p": "payload" } ], "repeat": "", "crontab": "", "once": false, "onceDelay": 0.1, "topic": "", "payload": "false", "payloadType": "bool", "x": 510, "y": 1420, "wires": [ [ "846fad4e.5e4b3" ] ] }, { "id": "846fad4e.5e4b3", "type": "change", "z": "169f5b00.a13415", "name": "", "rules": [ { "t": "set", "p": "bwm2", "pt": "flow", "to": "payload", "tot": "msg" } ], "action": "", "property": "", "from": "", "to": "", "reg": false, "x": 720, "y": 1400, "wires": [ [] ] }, { "id": "30e465a4.93956a", "type": "switch", "z": "169f5b00.a13415", "name": "bwm1 = true?", "property": "bwm1", "propertyType": "flow", "rules": [ { "t": "true" } ], "checkall": "true", "repair": false, "outputs": 1, "x": 720, "y": 1340, "wires": [ [ "34c75b61.666904", "35c51752.9b9468" ] ] }, { "id": "34c75b61.666904", "type": "debug", "z": "169f5b00.a13415", "name": "schalte Lampe 1", "active": true, "tosidebar": true, "console": false, "tostatus": false, "complete": "payload", "targetType": "msg", "statusVal": "", "statusType": "auto", "x": 940, "y": 1340, "wires": [] }, { "id": "415ed3df.e71bfc", "type": "switch", "z": "169f5b00.a13415", "name": "bwm2 = true?", "property": "bwm2", "propertyType": "flow", "rules": [ { "t": "true" } ], "checkall": "true", "repair": false, "outputs": 1, "x": 720, "y": 1180, "wires": [ [ "f82d9d1b.6bc16", "3a2a0f43.6fe38" ] ] }, { "id": "f82d9d1b.6bc16", "type": "debug", "z": "169f5b00.a13415", "name": "schalte Lampe 2", "active": true, "tosidebar": true, "console": false, "tostatus": false, "complete": "payload", "targetType": "msg", "statusVal": "", "statusType": "auto", "x": 940, "y": 1180, "wires": [] }, { "id": "3a2a0f43.6fe38", "type": "change", "z": "169f5b00.a13415", "name": "setze bwm2 auf false", "rules": [ { "t": "set", "p": "bwm2", "pt": "flow", "to": "false", "tot": "bool" } ], "action": "", "property": "", "from": "", "to": "", "reg": false, "x": 960, "y": 1240, "wires": [ [] ] }, { "id": "35c51752.9b9468", "type": "change", "z": "169f5b00.a13415", "name": "setze bwm1 auf false", "rules": [ { "t": "set", "p": "bwm1", "pt": "flow", "to": "false", "tot": "bool" } ], "action": "", "property": "", "from": "", "to": "", "reg": false, "x": 960, "y": 1400, "wires": [ [] ] } ]
  • Rollladen per Alexa Befehl steuern

    2
    5
    0 Stimmen
    2 Beiträge
    402 Aufrufe
    P
    @matzeit Wenn du hoch, besser heller und dunkler sagst, ändert Alexa den bri. Um heller, bzw. Dunkler zu erkennen, kann man z.b. immer den bri auf 50 an Alexa zurück melden. Kommt jetzt was kleiner 50, hat Alexa dunkler verstanden. Größer 50 wäre dann heller
  • Anfäger Frage Note-Red "gelöst"

    10
    0 Stimmen
    10 Beiträge
    397 Aufrufe
    Walter.O.W
    Okay. Danke euch.
  • Dashboard Layout fixieren

    1
    1
    0 Stimmen
    1 Beiträge
    190 Aufrufe
    Niemand hat geantwortet
  • Welches Node brauche ich

    2
    1
    0 Stimmen
    2 Beiträge
    261 Aufrufe
    mickymM
    @lieggie nimm eine Change Node und setze die payload auf die gewünschte Temperatur.
  • Signal Kommandozeile in node-red nutzen

    3
    2
    0 Stimmen
    3 Beiträge
    1k Aufrufe
    H
    @mickym es ist wie immer mit mir. Ich Vogel hatte ein Leerzeichen in der exec über den msg.payload.
  • Number in Object "umwandeln"

    3
    3
    0 Stimmen
    3 Beiträge
    390 Aufrufe
    H
    @mickym Ach wie einfach :) Danke dir für die schnelle Hilfe!! Gruß Tom
  • zweimal einen Datenpunkt Button schalten

    42
    1
    0 Stimmen
    42 Beiträge
    2k Aufrufe
    AphofisA
    @mickym ich habe ja gut 37 Flows in denen jeweils einer der Alexa Nodes drin ist wo sich nur der port nicht wiederholen darf und die geräte funktionieren einwandfrei sind halt schaltbare Datenpunkte die entweder Geräte schalten oder Status informationen auslösen die dann je nach steuerung per alexa oder per telegram ausgegeben werden können. also Programm nummer 5 und 21-40 fehlen also ist es ja eigntl nur logisch das hlat die programm plätze für den einen Node voll sind dann ein neues Flow erstellen mit den programmen und gucken wie viele erkannt werden ansonsten eine dritte flow dann habe ich alle 40 meiner wichtigsten TV kanäle
  • Hilfe bei Node-Red OPC UA Server

    2
    0 Stimmen
    2 Beiträge
    432 Aufrufe
    G
    ist erledigt...
  • Node-Red Homekit und Rollladen Problem

    6
    1
    0 Stimmen
    6 Beiträge
    700 Aufrufe
    mickymM
    @typ1er Ich importiere zwar Deine Flows - um es nachzuvolliehen, wäre aber schön wenn Du den Code nicht nur in dem Spoiler verpackst, sondern in die CodeTags packst, dann kann man das nämlich mit einem Click in die Zwischenablage kopieren und muss nicht den ganzen Code abscrollen. ;) Gut Du hast das jetzt mit der switch Node rausgefiltert, aber wäre es nicht mit einer Debug Node interssant (das Nachrichtenobjekt) zu anaylisieren, woher das kommt? Das Filtern hilft - ich würde aber ggf. die Ursache abstellen - aber das ist dann wohl eine philosophische Frage. Kann das Problem an sich nicht nachvollziehen. Bei mir kommen die Nachrichten auch nach einem Deploy als Objekte raus: [image: 1628124380160-128c0677-f41c-41dd-af10-dc6eefb7f66b-image.png]
  • Node-Red - Topic / State auslesen

    Ungelöst node-red
    3
    2
    0 Stimmen
    3 Beiträge
    262 Aufrufe
    J
    @mickym Danke - einfach nur den richtigen Node nehmen. Hat geklappt :)
  • Email Weiterleiten

    22
    0 Stimmen
    22 Beiträge
    3k Aufrufe
    mickymM
    @david-g Wurde in Windows 10 abgelöst - existiert aber immer noch: [image: 1626775843887-ebdbff73-e23b-4d11-aae9-0f60cb1c7db0-image.png]
  • Sprachansage nacheinander abspielen?

    7
    1
    0 Stimmen
    7 Beiträge
    743 Aufrufe
    mickymM
    @hc-yami Vielleicht wäre es sogar mit Deinem ursprünglichen Flow gegangen und es hätte gelangt da einfach die delay Node mit der Nachrichtenbegrenzung pro Zeit dazwischen zu klemmen (also vor die iobroker OUT Node). Kannst vielleicht mal ausprobieren - würde mich selbst interessieren. ;) EDIT: Habe es gerade selbst ausprobiert und in dem Fall haben wir viel zu kompliziert gedacht - das tut es auch: [image: 1626249043638-3b5f89f2-37fc-4e96-a355-1d7e2f549feb-image.png] Ich lerne auch noch. ;)
  • [Gelöst] Alexa-Steuerung geht nicht mit Echo Dot (4th)

    5
    0 Stimmen
    5 Beiträge
    576 Aufrufe
    L
    So. Mein Problem ist gelöst. Es geht also doch auch mit dem Echo Dot 4. Es lag eindeutig an der Portweiterleitung. Obwohl ich etliche Male unterschiedlichste Befehle ausprobierte habe, ging es zum Schluss. Mit diesen Befehlen hat es bei meinem Raspberry Pi 3 geklappt (Quelle: https://github.com/datech/node-red-contrib-amazon-echo/issues/66) sudo iptables -t nat -L --line-numbers Wenn hier nichts von 8083/euren Port steht, dann ist es klar, dass es nicht geht. sudo iptables -I INPUT 1 -p tcp --dport 80 -j ACCEPT sudo iptables -A PREROUTING -t nat -i eth0 -p tcp --dport 80 -j REDIRECT --to-port 8083 Bei dem Node-Red Adapter bei dem "Amazon Echo Hub" Node den Port 8083 einfügen und oben rechts deploy klicken und es funktioniert bzw. er findet nun die Geräte und es ist grün. Nochmal ... sudo iptables -t nat -L --line-numbers ...gucken ob da nun 8083 steht, wenn ja dann sollte es gehen Nun muss das Ganze noch dauerhaft gespeichert werden falls das Gerät neugestartet wird sudo apt-get install iptables-persistent sudo bash -c "iptables-save > /etc/iptables/rules" oder service iptables save falls das erste nicht gehen sollte, auf jeden Fall ist die Speicherung das Problem Es geht bei den meisten nicht da es so nicht dauerhaft gespeichert wird und beim nächsten Neustart die Portweiterleitung wieder weg ist. Deshalb am Ende das iptable bzw. die Portweiterleitung speichern.
  • HUE Gruppen ansteuern

    node-red communication
    7
    0 Stimmen
    7 Beiträge
    691 Aufrufe
    V
    Also ich habe jetzt mal die Ansteuerung auf jede einzelne Leuchte anstelle der Gruppe gemacht und da funzt es! Irgendwie nicht nachvollziehbar (für mich)
  • [erledigt] Zahl an Serielle senden, wenn es angef. wird.

    2
    0 Stimmen
    2 Beiträge
    130 Aufrufe
    M
    Hat sich erledigt. Die Lösung war eine Variable zu erstellen. Die kann man dann weiterverwenden.
  • [gelöst] Überwachung eingeschaltete Verbraucher

    9
    1
    0 Stimmen
    9 Beiträge
    1k Aufrufe
    T
    @mickym Danke! Das war der entscheidende Hinweis für mich als Anfänger! Im Node "ioBroker in", "Fire by start: send message at start (only without wildcards in ID)" auswählen. Gruß Hans

163

Online

33.0k

Benutzer

83.3k

Themen

1.3m

Beiträge