Skip to content

Node-Red

Hilfe für Skripterstellung mit Node-RED

953 Topics 13.1k Posts

NEWS

  • Node Red schreibt keine Datenpunkte

    23
    3
    0 Votes
    23 Posts
    2k Views
    mickymM
    @joeysch Kannst du dann aber nach @joeysch sagte in Node Red schreibt keine Datenpunkte: Die Ordner haben aber nicht den Typ "folder". Wenn das so nicht deklariert ist lassen sich auch manuell keine DP's darin anlegen. Egal, ich habe sie nochma überschrieben und jetzt läuft alles. Kannst Du aber nachträglich im Objekt ändern, wenn Du das brauchst, um eigene Datenpunkte im Admin zu erstellen.
  • Node red ui scheduler

    1
    0 Votes
    1 Posts
    140 Views
    No one has replied
  • Shelly schaltet, aber keine Ahnung woher und warum ;-)

    14
    0 Votes
    14 Posts
    1k Views
    hotspot_2H
    @homoran Ich hab das Objekt (RPC) im Shelly geloggt über den History Adapter der den entsprechenden Shelly ansteuert über MQTT. Also der Shelly ist über den MQTT Adapter so angebunden. Die Änderungen die da kommen auf das Objekt (RPC) werden auch sauber geloggt, aber ich sehe eben kein true wenn dann das Licht plötzlich angeht. Loggen Quelle ist aber aktiviert. Es steht da immer "MQTT".
  • Gedankenanstoß bezüglich Umsetzung Lüftungsautomatisierung

    8
    0 Votes
    8 Posts
    573 Views
    A
    @schneidy76 Vielen Dank für deinen Beitrag. Das mit dem Kamin ist kein Problem, wir haben nämlich keinen. Ansonsten hast du recht, mir ist das zu trivial. Im Grunde hast du ja die Lüftung hinter einen Zeitschaltuhr gehängt, der du einen Aus-/Ein-Knopf verpasst hast. Das habe ich jetzt auch schon so ähnlich. Nur dass mein Ein-/Aus-Knopf ein Sommer-/Winter-Knopf ist. Ich denke ja schon ne ganze Weile darüber nach und meine oben genannten Kriterien sind ja genau aus solchen Überlegungen gewachsen. Mir ging es mehr darum, dass ich nicht wusste, wie ich meine Ideen in Node-Red umsetzen und zusammenbauen soll. Aber wie sagt man immer: "Wenn du es dir vorstellen kannst, kannst du es auch tun." Was mir bei dir z. B. im Sommer schon fehlen würde: Oft ist es ja in heißen Sommern manchmal bis 3 Uhr nachts draußen immer noch >Raumtemperatur. Dann saugst du dir also von Sonnenuntergang von z. B. 22Uhr - 3 Uhr die warme Luft rein. Am Beispiel von mickym sieht man ja, dass es logsicher/smarter geht. @mickym WOW! Vielen Dank für deinen Input. Du hast recht, es ist meinerseits stellenweise zu komplex gedacht. Aber mit deinen Ausführungen, glaube ich, aktuell alles nötige zu haben und werde mich am Wochenende mal raussetzen und versuchen, das umgesetzt zu bekommen. Es werden dabei sicherlich weitere Fragen auftauchen, daher werde ich mich bald mit dem Ergebnis wieder melden ;)
  • [gelöst] Wert für alle Objekte in einem Order setzen

    node-red
    19
    1
    0 Votes
    19 Posts
    1k Views
    S
    @mickym said in Wert für alle Objekte in einem Order setzen: Ja immer die Leute, die Sonderzeichen in Objekten verwenden. jaja, schon verstanden, bisher war es kein Problem... ;-) Aber nun zum wesentlichen: es funktioniert tatsächlich! Dankeschön!!!
  • Hilfe, Wert aus String anzeigen

    Moved
    37
    1
    0 Votes
    37 Posts
    3k Views
    E
    @mickym Herzlichen Dank...werde es morgen testen :+1:
  • Dashboard multiple Werte mit unterschiedlicher Range

    2
    1
    0 Votes
    2 Posts
    121 Views
    mickymM
    @schnuller Nein das geht nicht mit normalen Dashboardmitteln - da musst Du dann andere Tools verwenden, die sich auf das Charting spezialisiert haben - zum Beispiel wird ja oft Grafana genutzt.
  • Node Red Tasmota und Switsch

    Moved
    34
    1
    0 Votes
    34 Posts
    2k Views
    J
    @josefthal ``` [ { "id": "e4aa7e9b9fb405d9", "type": "tab", "label": "Tasmota Test1", "disabled": false, "info": "", "env": [] }, { "id": "e5c4d789e94d350e", "type": "debug", "z": "e4aa7e9b9fb405d9", "name": "debug 81", "active": false, "tosidebar": true, "console": false, "tostatus": false, "complete": "false", "statusVal": "", "statusType": "auto", "x": 1040, "y": 160, "wires": [] }, { "id": "7cf3622b17046eee", "type": "change", "z": "e4aa7e9b9fb405d9", "name": "Spannung", "rules": [ { "t": "move", "p": "payload.ENERGY.Voltage", "pt": "msg", "to": "payload", "tot": "msg" } ], "action": "", "property": "", "from": "", "to": "", "reg": false, "x": 580, "y": 160, "wires": [ [ "e5c4d789e94d350e", "a10b8a367682404e" ] ] }, { "id": "a10b8a367682404e", "type": "ui_gauge", "z": "e4aa7e9b9fb405d9", "name": "", "group": "04d5298db5344c1e", "order": 2, "width": 0, "height": 0, "gtype": "gage", "title": "volt Test 1", "label": "units", "format": "{{value}}", "min": 0, "max": "240", "colors": [ "#ff0000", "#ffff00", "#008000" ], "seg1": "200", "seg2": "220", "x": 760, "y": 160, "wires": [] }, { "id": "77456c5a3405fff3", "type": "debug", "z": "e4aa7e9b9fb405d9", "name": "debug 82", "active": false, "tosidebar": true, "console": false, "tostatus": false, "complete": "false", "statusVal": "", "statusType": "auto", "x": 440, "y": 100, "wires": [] }, { "id": "89e9cf65394790da", "type": "change", "z": "e4aa7e9b9fb405d9", "name": "Strom Filter", "rules": [ { "t": "move", "p": "payload.ENERGY.Current[1]", "pt": "msg", "to": "payload", "tot": "msg" } ], "action": "", "property": "", "from": "", "to": "", "reg": false, "x": 570, "y": 200, "wires": [ [ "e60c46e0c106e4dc" ] ] }, { "id": "318a5c613a88c769", "type": "debug", "z": "e4aa7e9b9fb405d9", "name": "debug 83", "active": false, "tosidebar": true, "console": false, "tostatus": false, "complete": "false", "statusVal": "", "statusType": "auto", "x": 1040, "y": 200, "wires": [] }, { "id": "401d1fdd51ecce14", "type": "victron-input-battery", "z": "e4aa7e9b9fb405d9", "service": "com.victronenergy.battery.socketcan_can1", "path": "/Soc", "serviceObj": { "service": "com.victronenergy.battery.socketcan_can1", "name": "Pylontech battery" }, "pathObj": { "path": "/Soc", "type": "float", "name": "State of charge (%)" }, "initial": "", "name": "", "onlyChanges": false, "x": 180, "y": 520, "wires": [ [ "6ddde74da4bb9545" ] ] }, { "id": "5369f8cb591ac34d", "type": "switch", "z": "e4aa7e9b9fb405d9", "name": "", "property": "payload", "propertyType": "msg", "rules": [ { "t": "gt", "v": "101", "vt": "num" }, { "t": "lt", "v": "70", "vt": "num" } ], "checkall": "false", "repair": false, "outputs": 2, "x": 390, "y": 1000, "wires": [ [ "e5fea5b934a2efc7", "b9ed6599cf70de74" ], [ "5012c46291e78a77", "cbe9c595bb01b81e" ] ] }, { "id": "f237aa09ab50cbd7", "type": "debug", "z": "e4aa7e9b9fb405d9", "name": "debug 84", "active": true, "tosidebar": true, "console": false, "tostatus": false, "complete": "payload", "targetType": "msg", "statusVal": "", "statusType": "auto", "x": 660, "y": 380, "wires": [] }, { "id": "5d01b124055bea37", "type": "debug", "z": "e4aa7e9b9fb405d9", "name": "State Of Charge", "active": false, "tosidebar": true, "console": false, "tostatus": false, "complete": "payload", "targetType": "msg", "statusVal": "", "statusType": "auto", "x": 800, "y": 580, "wires": [] }, { "id": "6ddde74da4bb9545", "type": "change", "z": "e4aa7e9b9fb405d9", "name": "", "rules": [ { "t": "set", "p": "StateOfCharge", "pt": "global", "to": "payload", "tot": "msg" } ], "action": "", "property": "", "from": "", "to": "", "reg": false, "x": 520, "y": 520, "wires": [ [ "5d01b124055bea37", "52e26a73c3b27f6e", "50eb11e95ce1c4f3" ] ] }, { "id": "bd97fddd9dcd4646", "type": "ui_slider", "z": "e4aa7e9b9fb405d9", "name": "", "label": "0 bis 100 test 1eingang", "tooltip": "", "group": "04d5298db5344c1e", "order": 4, "width": 0, "height": 0, "passthru": true, "outs": "all", "topic": "topic", "topicType": "msg", "min": 0, "max": "100", "step": 1, "x": 160, "y": 600, "wires": [ [ "1b2e513f58f2960b", "236cb5a6278abac6", "5ba74f68268192ec", "e5c7f72323657170", "dbc6348bafca49a8" ] ] }, { "id": "1b2e513f58f2960b", "type": "ui_gauge", "z": "e4aa7e9b9fb405d9", "name": "", "group": "04d5298db5344c1e", "order": 5, "width": 0, "height": 0, "gtype": "gage", "title": "0 bis 100 test 1 Ausgang", "label": "Batterie", "format": "{{value}}", "min": 0, "max": "100", "colors": [ "#ff0000", "#e6e600", "#00ff00" ], "seg1": "", "seg2": "", "x": 590, "y": 600, "wires": [] }, { "id": "0d5525e74b9b0109", "type": "debug", "z": "e4aa7e9b9fb405d9", "name": "debug 86", "active": false, "tosidebar": true, "console": false, "tostatus": false, "complete": "false", "statusVal": "", "statusType": "auto", "x": 880, "y": 1120, "wires": [] }, { "id": "73f440c9fc6e840c", "type": "debug", "z": "e4aa7e9b9fb405d9", "name": "debug 87", "active": false, "tosidebar": true, "console": false, "tostatus": false, "complete": "false", "statusVal": "", "statusType": "auto", "x": 1060, "y": 280, "wires": [] }, { "id": "6ebf1c2b99b260a0", "type": "debug", "z": "e4aa7e9b9fb405d9", "name": "debug 88", "active": false, "tosidebar": true, "console": false, "tostatus": true, "complete": "payload", "targetType": "msg", "statusVal": "payload", "statusType": "auto", "x": 940, "y": 760, "wires": [] }, { "id": "99db0d2dae9eefe5", "type": "change", "z": "e4aa7e9b9fb405d9", "name": "Strom power", "rules": [ { "t": "move", "p": "payload.Switch1", "pt": "msg", "to": "payload", "tot": "msg" }, { "t": "set", "p": "payload", "pt": "msg", "to": "on", "tot": "str" } ], "action": "", "property": "", "from": "", "to": "", "reg": false, "x": 570, "y": 280, "wires": [ [ "ec8f88403a3d804a" ] ] }, { "id": "d6f7d9277bab1b46", "type": "ui_chart", "z": "e4aa7e9b9fb405d9", "name": "", "group": "a9d0f0d6dc0f0a7e", "order": 11, "width": 0, "height": 0, "label": "1Strom Test1", "chartType": "bar", "legend": "true", "xformat": "HH:mm:ss", "interpolate": "linear", "nodata": "", "dot": false, "ymin": "", "ymax": "", "removeOlder": 1, "removeOlderPoints": "", "removeOlderUnit": "3600", "cutout": 0, "useOneColor": false, "useUTC": false, "colors": [ "#1f77b4", "#aec7e8", "#ff7f0e", "#2ca02c", "#98df8a", "#d62728", "#ff9896", "#9467bd", "#c5b0d5" ], "outputs": 1, "useDifferentColor": false, "x": 770, "y": 240, "wires": [ [ "eba281a8c7d862c3" ] ] }, { "id": "eba281a8c7d862c3", "type": "debug", "z": "e4aa7e9b9fb405d9", "name": "debug 89", "active": false, "tosidebar": true, "console": false, "tostatus": false, "complete": "false", "statusVal": "", "statusType": "auto", "x": 1060, "y": 240, "wires": [] }, { "id": "f5252ff2d2f5e5c1", "type": "change", "z": "e4aa7e9b9fb405d9", "name": "Strom Filter", "rules": [ { "t": "move", "p": "payload.ENERGY.Current[0]", "pt": "msg", "to": "payload", "tot": "msg" } ], "action": "", "property": "", "from": "", "to": "", "reg": false, "x": 570, "y": 240, "wires": [ [ "d6f7d9277bab1b46" ] ] }, { "id": "e60c46e0c106e4dc", "type": "ui_chart", "z": "e4aa7e9b9fb405d9", "name": "", "group": "04d5298db5344c1e", "order": 6, "width": 0, "height": 0, "label": "Strom Test1", "chartType": "bar", "legend": "false", "xformat": "HH:mm:ss", "interpolate": "linear", "nodata": "", "dot": false, "ymin": "", "ymax": "", "removeOlder": 1, "removeOlderPoints": "", "removeOlderUnit": "3600", "cutout": 0, "useOneColor": false, "useUTC": false, "colors": [ "#1f77b4", "#aec7e8", "#ff7f0e", "#2ca02c", "#98df8a", "#d62728", "#ff9896", "#9467bd", "#c5b0d5" ], "outputs": 1, "useDifferentColor": false, "x": 770, "y": 200, "wires": [ [ "318a5c613a88c769" ] ] }, { "id": "e5fea5b934a2efc7", "type": "change", "z": "e4aa7e9b9fb405d9", "name": "", "rules": [ { "t": "set", "p": "payload", "pt": "msg", "to": "ON", "tot": "str" } ], "action": "", "property": "", "from": "", "to": "", "reg": false, "x": 630, "y": 1020, "wires": [ [ "a3ff7d845272b908", "d00e1f649acb16f3" ] ] }, { "id": "7dd91967b9ae0e11", "type": "Tasmota Sensor", "z": "e4aa7e9b9fb405d9", "broker": "7a7b311bf649aa87", "device": "Tasmota_test1", "name": "", "outputs": 1, "uidisabler": false, "fullTopic": "", "cmndPrefix": "", "statPrefix": "", "telePrefix": "", "qos": 1, "retain": false, "rules": [], "outputTopic": "", "x": 240, "y": 140, "wires": [ [ "99db0d2dae9eefe5", "f5252ff2d2f5e5c1", "89e9cf65394790da", "7cf3622b17046eee", "77456c5a3405fff3" ] ] }, { "id": "ec8f88403a3d804a", "type": "ui_chart", "z": "e4aa7e9b9fb405d9", "name": "", "group": "04d5298db5344c1e", "order": 7, "width": 0, "height": 0, "label": "Pauer Test1", "chartType": "bar", "legend": "true", "xformat": "HH:mm:ss", "interpolate": "linear", "nodata": "", "dot": false, "ymin": "", "ymax": "", "removeOlder": 1, "removeOlderPoints": "", "removeOlderUnit": "3600", "cutout": 0, "useOneColor": false, "useUTC": false, "colors": [ "#1f77b4", "#aec7e8", "#ff7f0e", "#2ca02c", "#98df8a", "#d62728", "#ff9896", "#9467bd", "#c5b0d5" ], "outputs": 1, "useDifferentColor": false, "x": 770, "y": 280, "wires": [ [ "73f440c9fc6e840c" ] ] }, { "id": "d00e1f649acb16f3", "type": "mqtt out", "z": "e4aa7e9b9fb405d9", "name": "", "topic": "cmnd/Tasmota_test1/POWER1", "qos": "", "retain": "", "respTopic": "", "contentType": "", "userProps": "", "correl": "", "expiry": "", "broker": "b84a725bf6dd8e6b", "x": 1010, "y": 1020, "wires": [] }, { "id": "56a67d7f80182ecc", "type": "mqtt in", "z": "e4aa7e9b9fb405d9", "name": "", "topic": "tele/Tasmota_test1/SENSOR", "qos": "0", "datatype": "json", "broker": "b84a725bf6dd8e6b", "nl": false, "rap": true, "rh": 0, "inputs": 0, "x": 140, "y": 320, "wires": [ [ "a79580173aa2a19f", "0ae9a66a06af1dd3" ] ] }, { "id": "a3ff7d845272b908", "type": "debug", "z": "e4aa7e9b9fb405d9", "name": "debug 98", "active": false, "tosidebar": true, "console": false, "tostatus": false, "complete": "false", "statusVal": "", "statusType": "auto", "x": 980, "y": 980, "wires": [] }, { "id": "a79580173aa2a19f", "type": "debug", "z": "e4aa7e9b9fb405d9", "name": "debug 100", "active": true, "tosidebar": true, "console": false, "tostatus": false, "complete": "payload", "targetType": "msg", "statusVal": "", "statusType": "auto", "x": 660, "y": 320, "wires": [] }, { "id": "52e26a73c3b27f6e", "type": "ui_text", "z": "e4aa7e9b9fb405d9", "group": "71e172fc8641b4f7", "order": 6, "width": 6, "height": 1, "name": "", "label": "Batterie test 1", "format": "{{msg.payload}}", "layout": "row-spread", "x": 1090, "y": 560, "wires": [] }, { "id": "50eb11e95ce1c4f3", "type": "ui_gauge", "z": "e4aa7e9b9fb405d9", "name": "", "group": "04d5298db5344c1e", "order": 3, "width": 0, "height": 0, "gtype": "gage", "title": "Batterie Test 1", "label": "units", "format": "{{value}}", "min": 0, "max": "100", "colors": [ "#ff0000", "#ffff00", "#008000" ], "seg1": "30", "seg2": "75", "x": 1100, "y": 520, "wires": [] }, { "id": "5012c46291e78a77", "type": "change", "z": "e4aa7e9b9fb405d9", "name": "", "rules": [ { "t": "set", "p": "payload", "pt": "msg", "to": "OFF", "tot": "str" } ], "action": "", "property": "", "from": "", "to": "", "reg": false, "x": 630, "y": 1060, "wires": [ [ "0d5525e74b9b0109", "d00e1f649acb16f3" ] ] }, { "id": "b9ed6599cf70de74", "type": "debug", "z": "e4aa7e9b9fb405d9", "name": "debug 101", "active": false, "tosidebar": true, "console": false, "tostatus": true, "complete": "payload", "targetType": "msg", "statusVal": "payload", "statusType": "auto", "x": 720, "y": 940, "wires": [] }, { "id": "cbe9c595bb01b81e", "type": "debug", "z": "e4aa7e9b9fb405d9", "name": "debug 102", "active": false, "tosidebar": true, "console": false, "tostatus": false, "complete": "false", "statusVal": "", "statusType": "auto", "x": 640, "y": 1120, "wires": [] }, { "id": "934a40174dc661ef", "type": "function", "z": "e4aa7e9b9fb405d9", "name": "function 1", "func": "\nreturn msg;", "outputs": 1, "noerr": 0, "initialize": "", "finalize": "", "libs": [], "x": 1340, "y": 240, "wires": [ [] ] }, { "id": "7b549e85395e6e3a", "type": "function", "z": "e4aa7e9b9fb405d9", "name": "Zähler 1", "func": "var f_zaehler1 = flow.get(f_zaehler1) || 0;\nf_zaehler1 = 100;\nflow.set('f_zaehler1', f_zaehler1);\nmsg.payload = f_zaehler1;\nreturn msg;", "outputs": 1, "noerr": 0, "initialize": "", "finalize": "", "libs": [], "x": 860, "y": 440, "wires": [ [ "091cad702c61cd45" ] ] }, { "id": "091cad702c61cd45", "type": "debug", "z": "e4aa7e9b9fb405d9", "name": "debug 104", "active": false, "tosidebar": true, "console": false, "tostatus": true, "complete": "payload", "targetType": "msg", "statusVal": "payload", "statusType": "auto", "x": 1020, "y": 400, "wires": [] }, { "id": "89f93330dc0e65fa", "type": "debug", "z": "e4aa7e9b9fb405d9", "name": "debug 105", "active": false, "tosidebar": true, "console": false, "tostatus": true, "complete": "payload", "targetType": "msg", "statusVal": "payload", "statusType": "auto", "x": 920, "y": 700, "wires": [] }, { "id": "e14d12f8a327f7d2", "type": "debug", "z": "e4aa7e9b9fb405d9", "name": "debug 106", "active": false, "tosidebar": true, "console": false, "tostatus": false, "complete": "false", "statusVal": "", "statusType": "auto", "x": 120, "y": 920, "wires": [] }, { "id": "7f4199879ec3aeda", "type": "debug", "z": "e4aa7e9b9fb405d9", "name": "debug 107", "active": false, "tosidebar": true, "console": false, "tostatus": true, "complete": "payload", "targetType": "msg", "statusVal": "payload", "statusType": "auto", "x": 1020, "y": 480, "wires": [] }, { "id": "5ba74f68268192ec", "type": "switch", "z": "e4aa7e9b9fb405d9", "name": "", "property": "payload", "propertyType": "msg", "rules": [ { "t": "gt", "v": "1", "vt": "num" }, { "t": "lt", "v": "0", "vt": "num" } ], "checkall": "false", "repair": false, "outputs": 2, "x": 150, "y": 720, "wires": [ [], [] ] }, { "id": "dbc6348bafca49a8", "type": "function", "z": "e4aa7e9b9fb405d9", "name": "Zähler 2", "func": "var f_zaehler2 = flow.get(f_zaehler2) || 0;\nflow.set('f_zaehler2',msg.payload);\nreturn msg;", "outputs": 1, "noerr": 0, "initialize": "", "finalize": "", "libs": [], "x": 660, "y": 700, "wires": [ [ "89f93330dc0e65fa" ] ] }, { "id": "0ae9a66a06af1dd3", "type": "change", "z": "e4aa7e9b9fb405d9", "name": "Strom power", "rules": [ { "t": "move", "p": "payload.Switch1", "pt": "msg", "to": "payload", "tot": "msg" }, { "t": "set", "p": "payload", "pt": "msg", "to": "on", "tot": "str" } ], "action": "", "property": "", "from": "", "to": "", "reg": false, "x": 350, "y": 380, "wires": [ [ "f237aa09ab50cbd7", "799b36b1217126ae" ] ] }, { "id": "799b36b1217126ae", "type": "trigger", "z": "e4aa7e9b9fb405d9", "name": "", "op1": "ON", "op2": "ON", "op1type": "str", "op2type": "str", "duration": "18", "extend": false, "overrideDelay": false, "units": "s", "reset": "", "bytopic": "all", "topic": "topic", "outputs": 2, "x": 670, "y": 460, "wires": [ [ "7b549e85395e6e3a" ], [ "65753d1d393ce5f9" ] ] }, { "id": "65753d1d393ce5f9", "type": "function", "z": "e4aa7e9b9fb405d9", "name": "Zähler 1", "func": "var f_zaehler1 = flow.get(f_zaehler1) || 0;\nf_zaehler1 = 0;\nflow.set('f_zaehler1', f_zaehler1);\nmsg.payload = f_zaehler1;\nreturn msg;", "outputs": 1, "noerr": 0, "initialize": "", "finalize": "", "libs": [], "x": 860, "y": 480, "wires": [ [ "7f4199879ec3aeda" ] ] }, { "id": "3ce3731fa2de008c", "type": "function", "z": "e4aa7e9b9fb405d9", "name": "Zähler 4", "func": "var f_zaehler1 = flow.get(f_zaehler1) || 0;\nvar f_zaehler2 = flow.get(f_zaehler2) || 0;\nvar f_zaehler4 = flow.get(f_zaehler4) || 0;\nf_zaehler4 = f_zaehler1 + f_zaehler2;\nflow.set('f_zaehler4', f_zaehler4);\nmsg.payload = f_zaehler4;\nreturn msg;", "outputs": 1, "noerr": 0, "initialize": "", "finalize": "", "libs": [], "x": 720, "y": 760, "wires": [ [ "6ebf1c2b99b260a0" ] ] }, { "id": "236cb5a6278abac6", "type": "switch", "z": "e4aa7e9b9fb405d9", "name": "", "property": "payload", "propertyType": "msg", "rules": [ { "t": "gt", "v": "1", "vt": "num" } ], "checkall": "false", "repair": false, "outputs": 1, "x": 150, "y": 800, "wires": [ [ "e14d12f8a327f7d2", "1d22878d092191cd" ] ] }, { "id": "f18bedcfdbd9660f", "type": "debug", "z": "e4aa7e9b9fb405d9", "name": "debug 109", "active": false, "tosidebar": true, "console": false, "tostatus": true, "complete": "payload", "targetType": "msg", "statusVal": "payload", "statusType": "auto", "x": 960, "y": 880, "wires": [] }, { "id": "e5c7f72323657170", "type": "switch", "z": "e4aa7e9b9fb405d9", "name": "", "property": "payload", "propertyType": "msg", "rules": [ { "t": "gt", "v": "1", "vt": "num" } ], "checkall": "false", "repair": false, "outputs": 1, "x": 150, "y": 760, "wires": [ [ "5317e2e4064ae269" ] ] }, { "id": "241a3883ea624c8d", "type": "debug", "z": "e4aa7e9b9fb405d9", "name": "debug 110", "active": false, "tosidebar": true, "console": false, "tostatus": true, "complete": "payload", "targetType": "msg", "statusVal": "payload", "statusType": "auto", "x": 960, "y": 820, "wires": [] }, { "id": "aaf5f791f630a6a3", "type": "function", "z": "e4aa7e9b9fb405d9", "name": "Zähler 3", "func": "var f_zaehler4 = flow.get(f_zaehler4) || 0;\nvar f_zaehler3 = flow.get(f_zaehler3) || 0;\nf_zaehler3 = f_zaehler4;\nflow.set('f_zaehler3', f_zaehler3);\nmsg.payload = f_zaehler3;\nreturn msg;", "outputs": 1, "noerr": 0, "initialize": "", "finalize": "", "libs": [], "x": 720, "y": 820, "wires": [ [ "241a3883ea624c8d", "5369f8cb591ac34d" ] ] }, { "id": "47b0ef4a8fb9242e", "type": "debug", "z": "e4aa7e9b9fb405d9", "name": "debug 111", "active": false, "tosidebar": true, "console": false, "tostatus": true, "complete": "payload", "targetType": "msg", "statusVal": "payload", "statusType": "auto", "x": 180, "y": 1060, "wires": [] }, { "id": "f30c68af18f7aef1", "type": "ui_button", "z": "e4aa7e9b9fb405d9", "name": "", "group": "04d5298db5344c1e", "order": 1, "width": 0, "height": 0, "passthru": false, "label": "button", "tooltip": "", "color": "", "bgcolor": "", "icon": "", "payload": "", "payloadType": "str", "topic": "topic", "topicType": "msg", "x": 150, "y": 460, "wires": [ [ "799b36b1217126ae" ] ] }, { "id": "474cddab788eb28b", "type": "function", "z": "e4aa7e9b9fb405d9", "name": "Zähler 2", "func": "var f_zaehler2 = flow.get(f_zaehler2) || 0;\n\nif (msg.topic === "modbus/1/holdingRegisters/30/2600_L1_Power") context.set("L1",msg.payload);\nif (msg.topic === "modbus/1/holdingRegisters/30/2601_L2_Power") context.set("L2",msg.payload);\nif (msg.topic === "modbus/1/holdingRegisters/30/2602_L3_Power") context.set("L3",msg.payload);\n\nvar L1 = context.get("L1") || 0;\nvar L2 = context.get("L2") || 0;\nvar L3 = context.get("L3") || 0;\n\nmsg.payload = L1 + L2 + L3;\n\n\n\n\n\nflow.set('f_zaehler2',msg.payload);\nreturn msg;", "outputs": 1, "noerr": 0, "initialize": "", "finalize": "", "libs": [], "x": 220, "y": 980, "wires": [ [] ] }, { "id": "1d22878d092191cd", "type": "trigger", "z": "e4aa7e9b9fb405d9", "name": "", "op1": "ON", "op2": "Taster OFF", "op1type": "str", "op2type": "str", "duration": "-2", "extend": false, "overrideDelay": true, "units": "s", "reset": "", "bytopic": "all", "topic": "topic", "outputs": 1, "x": 500, "y": 820, "wires": [ [ "aaf5f791f630a6a3" ] ] }, { "id": "5317e2e4064ae269", "type": "trigger", "z": "e4aa7e9b9fb405d9", "name": "", "op1": "ON", "op2": "Taster OFF", "op1type": "str", "op2type": "str", "duration": "-2", "extend": false, "overrideDelay": true, "units": "s", "reset": "", "bytopic": "all", "topic": "topic", "outputs": 1, "x": 480, "y": 760, "wires": [ [ "3ce3731fa2de008c" ] ] }, { "id": "04d5298db5344c1e", "type": "ui_group", "name": "Test 1", "tab": "12a65f5c2118623e", "order": 3, "disp": true, "width": "6", "collapse": false }, { "id": "a9d0f0d6dc0f0a7e", "type": "ui_group", "name": "Default", "tab": "12a65f5c2118623e", "order": 4, "disp": true, "width": 6, "collapse": false }, { "id": "7a7b311bf649aa87", "type": "tasmota-mqtt-broker", "name": "", "broker": "localhost", "port": "1883", "clientid": "", "usetls": false, "keepalive": "60", "cleansession": true }, { "id": "b84a725bf6dd8e6b", "type": "mqtt-broker", "name": "CerboGX", "broker": "192.168.178.35", "port": "1883", "clientid": "", "autoConnect": true, "usetls": false, "protocolVersion": "4", "keepalive": "60", "cleansession": true, "birthTopic": "", "birthQos": "0", "birthPayload": "", "birthMsg": {}, "closeTopic": "", "closeQos": "0", "closePayload": "", "closeMsg": {}, "willTopic": "", "willQos": "0", "willPayload": "", "willMsg": {}, "userProps": "", "sessionExpiry": "" }, { "id": "71e172fc8641b4f7", "type": "ui_group", "name": "Stapler ", "tab": "12a65f5c2118623e", "order": 1, "disp": true, "width": "6", "collapse": false }, { "id": "12a65f5c2118623e", "type": "ui_tab", "name": "Home", "icon": "dashboard", "order": 2, "disabled": false, "hidden": false } ]
  • Shelly Plus 2PM schalten via MQTT und Nodered

    15
    4
    0 Votes
    15 Posts
    3k Views
    M
    @mickym habe das bereits angepasst.. und habs direkt mal simuliert mit einem Föhn und einem Eispad [image: 1708203182048-ed2dbce3-357f-437a-936f-5d8ea0205e65-image.png] klappt super! :smile:
  • S7 mit Node Red (node-red-contrib-s7)

    92
    0 Votes
    92 Posts
    12k Views
    apollon77A
    1.4.3 mit dem Fix auf den Weg ins latest ... npm und github wäre schon da. Latest dann heute nacht denke ich
  • NodeRED Logging mit InfluxDB 2.0

    14
    1
    0 Votes
    14 Posts
    2k Views
    mickymM
    @mike1976 sagte in NodeRED Logging mit InfluxDB 2.0: Wieso bist du eigentlich so gegen die Funktion-Node? Weil Du im Prinzip einen kompletten Flow in Javascript in eine function Node packen kannst und du damit den Sinn von Node Red der grafischen Programmierung mit seinen Debugging Möglichkeiten ad absurdum führst. Viel Spaß bei Debuggen in einer Function Node. Außerdem ist JSONATA so genial - dass Du damit ein Viertel des Codes brauchst, den Du mit Javascript brauchst. Es gibt bestimmte Funktionen, wie den NodeKontext, das nutzen externen NodeJS Module oder asynchrone Verarbeitung für die man function Nodes braucht und es sinnvoll ist, diese zu nutzen. Alles andere geht mit Standardnodes einfacher, kürzer insbesondere mit der genialen JSONATA implementierung.
  • Addieren von 2 Werten in Nod-RED

    6
    0 Votes
    6 Posts
    564 Views
    mickymM
    @siegfried56 Ich habe schon oft einige Links gepostet, wenn Du unbedingt eine Print Ausgabe suchst - habe ich mir das mal angeschaut, aber ob es Dir was bringt weiß ich nicht https://www.amazon.de/Node-RED-umfassende-Handbuch-Visuelles-Programmieren/dp/3836299089/ref=zg-te-pba_d_sccl_2_2/257-2787158-1208812?pd_rd_w=WKsCf&content-id=amzn1.sym.2773ee31-e1d7-4b66-89a3-82d27d16ebdc&pf_rd_p=2773ee31-e1d7-4b66-89a3-82d27d16ebdc&pf_rd_r=28D9HBN4Q0JWRDB9ZFCB&pd_rd_wg=T1CgC&pd_rd_r=787b60e4-19d0-4c94-acc7-81bf0becde76&pd_rd_i=3836299089&psc=1
  • Node-red und Zigbee

    2
    2
    0 Votes
    2 Posts
    306 Views
    andy6325A
    ok, habe es selber gefunden. Man muss den ioBroker out von Type "Value" auf type "Command" umstellen und dann geht es :-D [image: 1707464202352-83904cbb-da2e-4576-a094-d6dd4572eaf7-image.png]
  • Anlegen eines States

    1
    0 Votes
    1 Posts
    187 Views
    No one has replied
  • Anfänger braucht Hilfe zum Addieren von MQTT werten

    8
    1
    0 Votes
    8 Posts
    332 Views
    S
    Puh jetzt habe ich aber schelte eingefangen aber danke trotzdem, denk ich verstehe es jetzt besser entscheidend ist der Eintrag " $sum(payload.*) " alle payloads , die mit sum zusammenaddieren
  • HTTP Scraping - payload anpassen - InfluxDb

    node-red heating monitoring
    5
    0 Votes
    5 Posts
    229 Views
    T
    @mickym Tausend Dank! Du hast direkt noch weiter gedacht, sodass ich das ganze jetzt in meine Influx schreiben kann. Danke dafür!
  • Wie kann ich Zwei Analogwerte vergleichen.

    node-red
    18
    0 Votes
    18 Posts
    1k Views
    mickymM
    @armin-2 [image: 1706977482441-d95a2ba4-ef3c-43d8-8ec0-391d9cec6114-image.png] Also Du fügst in der JOIN Node ja nur die 3 Werte in ein Objekt zusammen. Wenn Du eine DebugNode hinter die JOIN Node machen würdest würdest Du sehen, wie das Objekt zusammengesetzt wird. [image: 1706978551038-45160f00-62aa-4066-bf88-97f568135b1d-image-resized.png] Also die Verwendung von Debug Nodes hilft in der Regel immer. Die JOIN Node setzt also die topics nur zusammen, addiert diese aber nicht, dass musst Du mit einer anschliessenden ChangeNode noch machen. das kannst Du entweder in diesem Fall mit der Summenfunktion von JSONATA machen: [image: 1706978774113-09c69200-ad70-43d4-90a2-cc239d499c8f-image-resized.png] oder in dem Du die Werte einzeln mit JSONATA addierst: [image: 1706978886301-b8991895-efa4-4b69-8696-12d9dc843f13-image-resized.png] Also in JSONATA in der ChangeNode entweder: payload.L1 + payload.L2 +payload.L3 oder $sum(payload.*) hier die Change node Spoiler [ { "id": "0eeff7bfe9f566bd", "type": "change", "z": "c38a1eccc4954015", "g": "f6a3a84cec843ef8", "name": "summieren", "rules": [ { "t": "set", "p": "payload", "pt": "msg", "to": "$sum(payload.*)", "tot": "jsonata" } ], "action": "", "property": "", "from": "", "to": "", "reg": false, "x": 890, "y": 480, "wires": [ [ "bc12eec763ba10c2", "2942bca022679e0e" ] ] } ]
  • Ahoy DTU Limit via Node-Red einstellen

    16
    2
    0 Votes
    16 Posts
    2k Views
    _
    @mickym Dann bin ich ja beruhigt. Das ist sehr nett Danke. Ich bin froh, dass es dich in diesem Forum hier gibt, denn ohne dich hätte ich viele Dinge nicht lösen können ;). Danke dafür :)
  • Nach Neuinstallation Node Red Backup einspielen

    9
    0 Votes
    9 Posts
    548 Views
    simatecS
    @netfritz In der latest Version von Backitup ist das bereits gefixt
  • node-red-contrib-wca-integration funktion-node befüllen

    node-red
    2
    2
    0 Votes
    2 Posts
    243 Views
    S
    Hi, habe es erst einmal mit dem Telegram Messenger gelöst. Das war relativ einfach, dank der Anleitung von @haus-automatisierung. Besten Dank dafür ;-) VG Torsten

549

Online

32.6k

Users

82.1k

Topics

1.3m

Posts