Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Nulleinspeisung mit Tibber Puls und opendtu

    NEWS

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    Nulleinspeisung mit Tibber Puls und opendtu

    This topic has been deleted. Only users with topic management privileges can see it.
    • M
      MASHpony last edited by

      Hallo,

      ich weiß das es wahrscheinlich schon sehr viele beitrage zu diesem Thema gibt, ich hoffe allerdings trotzdem das sich jemand meinem Problem annehmen möchte oder mir den schups in die richtige Richtung gibt.

      Ich habe nun schon sehr viele Skripte und Anleitungen in blockly und node red getestet aber nichts zum laufen bekommen 😕

      mein Setup:

      Tibber Puls (in node red habe ich die Tibber api schon installiert und eingerichtet)
      OpenDTU / HM-1600
      Node red / Blockly

      ich hätte gerne eine einfaches script mit dem ich das ganze zum laufen bekomme und anhand dessen verstehe wie es funktioniert.

      ich freue mich und hoffe auf antworten

      vielen Dank

      liebe grüße

      Samson71 1 Reply Last reply Reply Quote 0
      • Samson71
        Samson71 Global Moderator @MASHpony last edited by

        @mashpony sagte in Nulleinspeisung mit Tibber Puls und opendtu:

        Ich habe nun schon sehr viele Skripte und Anleitungen in blockly und node red getestet aber nichts zum laufen bekommen 😕

        Dann zeig mal die Ansätze, damit potentielle Helfer darauf aufbauen können.

        M 1 Reply Last reply Reply Quote 0
        • M
          MASHpony @Samson71 last edited by

          @samson71

          gerne

          ein node red an dem ich mich immer wieder spiele ist zb dieses:

          [
              {
                  "id": "da8ec46371f0db9b",
                  "type": "tab",
                  "label": "Flow 1",
                  "disabled": false,
                  "info": "",
                  "env": []
              },
              {
                  "id": "ef6c3ce925d406a5",
                  "type": "mqtt out",
                  "z": "da8ec46371f0db9b",
                  "name": "WR MQTT",
                  "topic": "solar/116484658617/cmd/limit_nonpersistent_absolute",
                  "qos": "",
                  "retain": "",
                  "respTopic": "",
                  "contentType": "",
                  "userProps": "",
                  "correl": "",
                  "expiry": "",
                  "broker": "87b2d138566ff5cc",
                  "x": 910,
                  "y": 160,
                  "wires": []
              },
              {
                  "id": "dd099805a5d7f908",
                  "type": "inject",
                  "z": "da8ec46371f0db9b",
                  "name": "alle 10 sekunden",
                  "props": [
                      {
                          "p": "payload"
                      },
                      {
                          "p": "topic",
                          "vt": "str"
                      }
                  ],
                  "repeat": "10",
                  "crontab": "",
                  "once": false,
                  "onceDelay": 0.1,
                  "topic": "",
                  "payload": "",
                  "payloadType": "date",
                  "x": 370,
                  "y": 80,
                  "wires": [
                      [
                          "bc06481a7c421b2c"
                      ]
                  ]
              },
              {
                  "id": "bc06481a7c421b2c",
                  "type": "function",
                  "z": "da8ec46371f0db9b",
                  "name": "Berechnung für WR Limit",
                  "func": "// MAX generation of the inverter Watts\nvar maxPower = 1600;\n\n// Get current power limit or default\nvar power = context.get('power') || maxPower;\npower += msg.payload;\n\n// clamp power between 0 and max\nif (power > maxPower) power = maxPower;\nif (power < 0) power = 1;\n\n\n// store current powerlimit and update message\ncontext.set('power', power);\nmsg.payload = power;\n\nreturn msg;",
                  "outputs": 1,
                  "timeout": "",
                  "noerr": 0,
                  "initialize": "",
                  "finalize": "",
                  "libs": [],
                  "x": 650,
                  "y": 160,
                  "wires": [
                      [
                          "ef6c3ce925d406a5"
                      ]
                  ]
              },
              {
                  "id": "8e35940b3495969d",
                  "type": "tibber-feed",
                  "z": "da8ec46371f0db9b",
                  "name": "daheim",
                  "active": true,
                  "apiEndpointRef": "acaea9118c2d1751",
                  "homeId": "XXXXXXXXXXX",
                  "timestamp": false,
                  "power": "1",
                  "lastMeterConsumption": false,
                  "accumulatedConsumption": false,
                  "accumulatedProduction": false,
                  "accumulatedConsumptionLastHour": false,
                  "accumulatedProductionLastHour": false,
                  "accumulatedCost": false,
                  "accumulatedReward": false,
                  "currency": false,
                  "minPower": false,
                  "averagePower": false,
                  "maxPower": false,
                  "powerProduction": false,
                  "minPowerProduction": false,
                  "maxPowerProduction": false,
                  "lastMeterProduction": false,
                  "powerFactor": false,
                  "voltagePhase1": false,
                  "voltagePhase2": false,
                  "voltagePhase3": false,
                  "currentL1": false,
                  "currentL2": false,
                  "currentL3": false,
                  "signalStrength": false,
                  "x": 330,
                  "y": 160,
                  "wires": [
                      [
                          "bc06481a7c421b2c"
                      ]
                  ]
              },
              {
                  "id": "87b2d138566ff5cc",
                  "type": "mqtt-broker",
                  "name": "",
                  "broker": "opendtu",
                  "port": "1883",
                  "clientid": "",
                  "autoConnect": true,
                  "usetls": false,
                  "protocolVersion": "4",
                  "keepalive": "60",
                  "cleansession": true,
                  "autoUnsubscribe": true,
                  "birthTopic": "",
                  "birthQos": "0",
                  "birthPayload": "",
                  "birthMsg": {},
                  "closeTopic": "",
                  "closeQos": "0",
                  "closePayload": "",
                  "closeMsg": {},
                  "willTopic": "",
                  "willQos": "0",
                  "willPayload": "",
                  "willMsg": {},
                  "userProps": "",
                  "sessionExpiry": ""
              },
              {
                  "id": "acaea9118c2d1751",
                  "type": "tibber-api-endpoint",
                  "queryUrl": "https://api.tibber.com/v1-beta/gql",
                  "feedConnectionTimeout": "30",
                  "feedTimeout": "60",
                  "queryRequestTimeout": "30",
                  "name": "XXXXXXX"
              }
          ]
          

          ich bin mir allerdings nicht sicher ob ich den richtigen Tibber node dafür gewählt habe.

          M 1 Reply Last reply Reply Quote 0
          • M
            MASHpony @MASHpony last edited by MASHpony

            @mashpony

            okay

            also mit meinem Shelly habe ich es jetzt hinbekommen auch wenn das etwas umständlich ist wegen dem addieren der 3 Phasen.

            [
                {
                    "id": "7bf3afac51a18e13",
                    "type": "tab",
                    "label": "PVNull",
                    "disabled": false,
                    "info": "",
                    "env": []
                },
                {
                    "id": "2dacc22b5419c832",
                    "type": "mqtt out",
                    "z": "7bf3afac51a18e13",
                    "name": "WR MQTT",
                    "topic": "solar/116484658617/cmd/limit_nonpersistent_absolute",
                    "qos": "",
                    "retain": "",
                    "respTopic": "",
                    "contentType": "",
                    "userProps": "",
                    "correl": "",
                    "expiry": "",
                    "broker": "87b2d138566ff5cc",
                    "x": 1410,
                    "y": 280,
                    "wires": []
                },
                {
                    "id": "018ba02f54239b1e",
                    "type": "inject",
                    "z": "7bf3afac51a18e13",
                    "name": "alle 10 sekunden",
                    "props": [
                        {
                            "p": "payload"
                        },
                        {
                            "p": "topic",
                            "vt": "str"
                        }
                    ],
                    "repeat": "10",
                    "crontab": "",
                    "once": false,
                    "onceDelay": 0.1,
                    "topic": "",
                    "payload": "",
                    "payloadType": "date",
                    "x": 130,
                    "y": 280,
                    "wires": [
                        [
                            "b6808f9bf8e46e84"
                        ]
                    ]
                },
                {
                    "id": "992140f008964c0e",
                    "type": "function",
                    "z": "7bf3afac51a18e13",
                    "name": "Berechnung für WR Limit",
                    "func": "// MAX generation of the inverter Watts\nvar maxPower = 1600;\n\n// Get current power limit or default\nvar power = context.get('power') || maxPower;\npower += msg.payload;\n\n// clamp power between 0 and max\nif (power > maxPower) power = maxPower;\nif (power < 10) power = 1;\n\n\n// store current powerlimit and update message\ncontext.set('power', power);\nmsg.payload = power;\n\nreturn msg;",
                    "outputs": 1,
                    "timeout": "",
                    "noerr": 0,
                    "initialize": "",
                    "finalize": "",
                    "libs": [],
                    "x": 1050,
                    "y": 360,
                    "wires": [
                        [
                            "cfc7a51cd2515e7c",
                            "2dacc22b5419c832"
                        ]
                    ]
                },
                {
                    "id": "b6808f9bf8e46e84",
                    "type": "shelly-gen1",
                    "z": "7bf3afac51a18e13",
                    "hostname": "192.168.1.54",
                    "description": "Shelly Wohnung",
                    "mode": "polling",
                    "server": "",
                    "outputmode": "event",
                    "uploadretryinterval": 5000,
                    "pollinginterval": "1000",
                    "pollstatus": false,
                    "getstatusoncommand": true,
                    "devicetype": "Measure",
                    "outputs": 2,
                    "x": 340,
                    "y": 420,
                    "wires": [
                        [
                            "ee18e34a4514e7ec",
                            "d38b40647d27b12f",
                            "3df2e3c3fca50f91",
                            "457a4a19b2bc1313"
                        ],
                        [
                            "ee18e34a4514e7ec"
                        ]
                    ],
                    "outputLabels": [
                        "ou1 ",
                        "ou2"
                    ]
                },
                {
                    "id": "cfc7a51cd2515e7c",
                    "type": "debug",
                    "z": "7bf3afac51a18e13",
                    "name": "debug 92",
                    "active": true,
                    "tosidebar": true,
                    "console": false,
                    "tostatus": false,
                    "complete": "false",
                    "statusVal": "",
                    "statusType": "auto",
                    "x": 1400,
                    "y": 440,
                    "wires": []
                },
                {
                    "id": "ee18e34a4514e7ec",
                    "type": "debug",
                    "z": "7bf3afac51a18e13",
                    "name": "debug 93",
                    "active": false,
                    "tosidebar": true,
                    "console": false,
                    "tostatus": false,
                    "complete": "true",
                    "targetType": "full",
                    "statusVal": "",
                    "statusType": "auto",
                    "x": 600,
                    "y": 460,
                    "wires": []
                },
                {
                    "id": "d38b40647d27b12f",
                    "type": "change",
                    "z": "7bf3afac51a18e13",
                    "name": "",
                    "rules": [
                        {
                            "t": "set",
                            "p": "payload",
                            "pt": "msg",
                            "to": "status.emeters[0].power",
                            "tot": "msg"
                        }
                    ],
                    "action": "",
                    "property": "",
                    "from": "",
                    "to": "",
                    "reg": false,
                    "x": 630,
                    "y": 540,
                    "wires": [
                        [
                            "07ae2369fe461fbe"
                        ]
                    ]
                },
                {
                    "id": "3df2e3c3fca50f91",
                    "type": "change",
                    "z": "7bf3afac51a18e13",
                    "name": "",
                    "rules": [
                        {
                            "t": "set",
                            "p": "payload",
                            "pt": "msg",
                            "to": "status.emeters[1].power",
                            "tot": "msg"
                        }
                    ],
                    "action": "",
                    "property": "",
                    "from": "",
                    "to": "",
                    "reg": false,
                    "x": 630,
                    "y": 620,
                    "wires": [
                        [
                            "bf7144a4e29d4279"
                        ]
                    ]
                },
                {
                    "id": "457a4a19b2bc1313",
                    "type": "change",
                    "z": "7bf3afac51a18e13",
                    "name": "",
                    "rules": [
                        {
                            "t": "set",
                            "p": "payload",
                            "pt": "msg",
                            "to": "status.emeters[2].power",
                            "tot": "msg"
                        }
                    ],
                    "action": "",
                    "property": "",
                    "from": "",
                    "to": "",
                    "reg": false,
                    "x": 630,
                    "y": 700,
                    "wires": [
                        [
                            "64441cb4c466b694"
                        ]
                    ]
                },
                {
                    "id": "a244a31c5bcbea91",
                    "type": "join",
                    "z": "7bf3afac51a18e13",
                    "name": "",
                    "mode": "custom",
                    "build": "object",
                    "property": "payload",
                    "propertyType": "msg",
                    "key": "topic",
                    "joiner": "\\n",
                    "joinerType": "str",
                    "accumulate": true,
                    "timeout": "",
                    "count": "3",
                    "reduceRight": false,
                    "reduceExp": "",
                    "reduceInit": "",
                    "reduceInitType": "",
                    "reduceFixup": "",
                    "x": 1090,
                    "y": 640,
                    "wires": [
                        [
                            "add94d9ab1b506bd"
                        ]
                    ]
                },
                {
                    "id": "3ceea4dfeb31a8e4",
                    "type": "debug",
                    "z": "7bf3afac51a18e13",
                    "name": "",
                    "active": false,
                    "tosidebar": true,
                    "console": false,
                    "tostatus": false,
                    "complete": "false",
                    "statusVal": "",
                    "statusType": "auto",
                    "x": 1510,
                    "y": 840,
                    "wires": []
                },
                {
                    "id": "add94d9ab1b506bd",
                    "type": "change",
                    "z": "7bf3afac51a18e13",
                    "name": "",
                    "rules": [
                        {
                            "t": "set",
                            "p": "payload",
                            "pt": "msg",
                            "to": "payload.L1 + payload.L2 +payload.L3",
                            "tot": "jsonata"
                        },
                        {
                            "t": "set",
                            "p": "topic",
                            "pt": "msg",
                            "to": "Summe von L1,L2,L3",
                            "tot": "str"
                        }
                    ],
                    "action": "",
                    "property": "",
                    "from": "",
                    "to": "",
                    "reg": false,
                    "x": 1290,
                    "y": 640,
                    "wires": [
                        [
                            "3ceea4dfeb31a8e4",
                            "992140f008964c0e"
                        ]
                    ]
                },
                {
                    "id": "64441cb4c466b694",
                    "type": "change",
                    "z": "7bf3afac51a18e13",
                    "name": "topic: L3",
                    "rules": [
                        {
                            "t": "set",
                            "p": "topic",
                            "pt": "msg",
                            "to": "L3",
                            "tot": "str"
                        }
                    ],
                    "action": "",
                    "property": "",
                    "from": "",
                    "to": "",
                    "reg": false,
                    "x": 900,
                    "y": 700,
                    "wires": [
                        [
                            "a244a31c5bcbea91"
                        ]
                    ]
                },
                {
                    "id": "bf7144a4e29d4279",
                    "type": "change",
                    "z": "7bf3afac51a18e13",
                    "name": "topic: L2",
                    "rules": [
                        {
                            "t": "set",
                            "p": "topic",
                            "pt": "msg",
                            "to": "L2",
                            "tot": "str"
                        }
                    ],
                    "action": "",
                    "property": "",
                    "from": "",
                    "to": "",
                    "reg": false,
                    "x": 900,
                    "y": 640,
                    "wires": [
                        [
                            "a244a31c5bcbea91"
                        ]
                    ]
                },
                {
                    "id": "07ae2369fe461fbe",
                    "type": "change",
                    "z": "7bf3afac51a18e13",
                    "name": "topic: L1",
                    "rules": [
                        {
                            "t": "set",
                            "p": "topic",
                            "pt": "msg",
                            "to": "L1",
                            "tot": "str"
                        }
                    ],
                    "action": "",
                    "property": "",
                    "from": "",
                    "to": "",
                    "reg": false,
                    "x": 900,
                    "y": 580,
                    "wires": [
                        [
                            "a244a31c5bcbea91"
                        ]
                    ]
                },
                {
                    "id": "87b2d138566ff5cc",
                    "type": "mqtt-broker",
                    "name": "",
                    "broker": "192.168.1.2",
                    "port": "1883",
                    "clientid": "",
                    "autoConnect": true,
                    "usetls": false,
                    "protocolVersion": "4",
                    "keepalive": "60",
                    "cleansession": true,
                    "autoUnsubscribe": true,
                    "birthTopic": "",
                    "birthQos": "0",
                    "birthPayload": "",
                    "birthMsg": {},
                    "closeTopic": "",
                    "closeQos": "0",
                    "closePayload": "",
                    "closeMsg": {},
                    "willTopic": "",
                    "willQos": "0",
                    "willPayload": "",
                    "willMsg": {},
                    "userProps": "",
                    "sessionExpiry": ""
                }
            ]
            

            Bildschirmfoto 2024-01-29 um 16.46.57.png

            Was mir jetzt noch fehlt ist die info wie ich an Daten in dem Tibber query komme.
            Wenn ich ein Debug an den Tibber Node hänge kommt folgendes zurück:

            {"responseMessage":"GraphQL queries must be strings.","httpCode":400,"statusCode":400,"statusMessage":"Bad Request"}
            

            Bildschirmfoto 2024-01-29 um 16.45.38.png

            wenn mir das jemand verraten könnte 🙂

            M 1 Reply Last reply Reply Quote 0
            • M
              MASHpony @MASHpony last edited by

              @mashpony

              Geil ich habe es hinbekommen 🙂

              [
                  {
                      "id": "7bf3afac51a18e13",
                      "type": "tab",
                      "label": "PVNull",
                      "disabled": false,
                      "info": "",
                      "env": []
                  },
                  {
                      "id": "2dacc22b5419c832",
                      "type": "mqtt out",
                      "z": "7bf3afac51a18e13",
                      "name": "WR MQTT",
                      "topic": "solar/116484658617/cmd/limit_nonpersistent_absolute",
                      "qos": "",
                      "retain": "",
                      "respTopic": "",
                      "contentType": "",
                      "userProps": "",
                      "correl": "",
                      "expiry": "",
                      "broker": "87b2d138566ff5cc",
                      "x": 1370,
                      "y": 300,
                      "wires": []
                  },
                  {
                      "id": "992140f008964c0e",
                      "type": "function",
                      "z": "7bf3afac51a18e13",
                      "name": "Berechnung für WR Limit",
                      "func": "// MAX generation of the inverter Watts\nvar maxPower = 1600;\n\n// Get current power limit or default\nvar power = context.get('power') || maxPower;\npower += msg.payload;\n\n// clamp power between 0 and max\nif (power > maxPower) power = maxPower;\nif (power < 10) power = 1;\n\n\n// store current powerlimit and update message\ncontext.set('power', power);\nmsg.payload = power;\n\nreturn msg;",
                      "outputs": 1,
                      "timeout": "",
                      "noerr": 0,
                      "initialize": "",
                      "finalize": "",
                      "libs": [],
                      "x": 1070,
                      "y": 300,
                      "wires": [
                          [
                              "cfc7a51cd2515e7c",
                              "2dacc22b5419c832"
                          ]
                      ]
                  },
                  {
                      "id": "cfc7a51cd2515e7c",
                      "type": "debug",
                      "z": "7bf3afac51a18e13",
                      "name": "WR Wert",
                      "active": true,
                      "tosidebar": true,
                      "console": false,
                      "tostatus": false,
                      "complete": "payload",
                      "targetType": "msg",
                      "statusVal": "",
                      "statusType": "auto",
                      "x": 1360,
                      "y": 220,
                      "wires": []
                  },
                  {
                      "id": "7c9607b020e57be9",
                      "type": "tibber-feed",
                      "z": "7bf3afXXXXXXXXXXX",
                      "name": "B4D",
                      "active": true,
                      "apiEndpointRef": "acaea9118c2d1751",
                      "homeId": "6453fa8f-XXXXXXXXXXX",
                      "timestamp": false,
                      "power": "1",
                      "lastMeterConsumption": false,
                      "accumulatedConsumption": false,
                      "accumulatedProduction": false,
                      "accumulatedConsumptionLastHour": false,
                      "accumulatedProductionLastHour": false,
                      "accumulatedCost": false,
                      "accumulatedReward": false,
                      "currency": false,
                      "minPower": false,
                      "averagePower": false,
                      "maxPower": false,
                      "powerProduction": false,
                      "minPowerProduction": false,
                      "maxPowerProduction": false,
                      "lastMeterProduction": false,
                      "powerFactor": false,
                      "voltagePhase1": false,
                      "voltagePhase2": false,
                      "voltagePhase3": false,
                      "currentL1": false,
                      "currentL2": false,
                      "currentL3": false,
                      "signalStrength": false,
                      "x": 190,
                      "y": 300,
                      "wires": [
                          [
                              "303c3a9e684e3aca",
                              "727ade03c58e2d2b"
                          ]
                      ]
                  },
                  {
                      "id": "303c3a9e684e3aca",
                      "type": "debug",
                      "z": "7bf3afac51a18e13",
                      "name": "Tibber output",
                      "active": false,
                      "tosidebar": true,
                      "console": false,
                      "tostatus": false,
                      "complete": "payload",
                      "targetType": "msg",
                      "statusVal": "",
                      "statusType": "auto",
                      "x": 440,
                      "y": 220,
                      "wires": []
                  },
                  {
                      "id": "f2cca6ecae7ad5fc",
                      "type": "debug",
                      "z": "7bf3afac51a18e13",
                      "name": "Tibber output payload",
                      "active": false,
                      "tosidebar": true,
                      "console": false,
                      "tostatus": false,
                      "complete": "payload",
                      "targetType": "msg",
                      "statusVal": "",
                      "statusType": "auto",
                      "x": 740,
                      "y": 220,
                      "wires": []
                  },
                  {
                      "id": "727ade03c58e2d2b",
                      "type": "change",
                      "z": "7bf3afac51a18e13",
                      "name": "",
                      "rules": [
                          {
                              "t": "set",
                              "p": "payload",
                              "pt": "msg",
                              "to": "payload.power",
                              "tot": "msg"
                          }
                      ],
                      "action": "",
                      "property": "",
                      "from": "",
                      "to": "",
                      "reg": false,
                      "x": 450,
                      "y": 300,
                      "wires": [
                          [
                              "f2cca6ecae7ad5fc",
                              "52b31c00780196ab"
                          ]
                      ]
                  },
                  {
                      "id": "52b31c00780196ab",
                      "type": "delay",
                      "z": "7bf3afac51a18e13",
                      "name": "",
                      "pauseType": "rate",
                      "timeout": "10",
                      "timeoutUnits": "seconds",
                      "rate": "1",
                      "nbRateUnits": "10",
                      "rateUnits": "second",
                      "randomFirst": "1",
                      "randomLast": "5",
                      "randomUnits": "seconds",
                      "drop": true,
                      "allowrate": false,
                      "outputs": 1,
                      "x": 750,
                      "y": 300,
                      "wires": [
                          [
                              "992140f008964c0e",
                              "aed44dec4557ee97"
                          ]
                      ]
                  },
                  {
                      "id": "aed44dec4557ee97",
                      "type": "debug",
                      "z": "7bf3afac51a18e13",
                      "name": "nach delay",
                      "active": true,
                      "tosidebar": true,
                      "console": false,
                      "tostatus": false,
                      "complete": "payload",
                      "targetType": "msg",
                      "statusVal": "",
                      "statusType": "auto",
                      "x": 1030,
                      "y": 220,
                      "wires": []
                  },
                  {
                      "id": "87b2d138566ff5cc",
                      "type": "mqtt-broker",
                      "name": "",
                      "broker": "192.168.1.2",
                      "port": "1883",
                      "clientid": "",
                      "autoConnect": true,
                      "usetls": false,
                      "protocolVersion": "4",
                      "keepalive": "60",
                      "cleansession": true,
                      "autoUnsubscribe": true,
                      "birthTopic": "",
                      "birthQos": "0",
                      "birthPayload": "",
                      "birthMsg": {},
                      "closeTopic": "",
                      "closeQos": "0",
                      "closePayload": "",
                      "closeMsg": {},
                      "willTopic": "",
                      "willQos": "0",
                      "willPayload": "",
                      "willMsg": {},
                      "userProps": "",
                      "sessionExpiry": ""
                  },
                  {
                      "id": "acaea9118c2d1751",
                      "type": "tibber-api-endpoint",
                      "queryUrl": "https://api.tibber.com/v1-beta/gql",
                      "feedConnectionTimeout": "30",
                      "feedTimeout": "60",
                      "queryRequestTimeout": "30",
                      "name": "B4D"
                  }
              ]
              

              Bildschirmfoto 2024-01-29 um 17.46.05.png

              also ich gehe davon aus das es geht - testen kann ich es jetzt ohne sonne natürlich nicht...

              Step zwei das script zu stoppen nach Sonnenuntergang und mit Sonnenaufgang zu starten 😄

              M 1 Reply Last reply Reply Quote 0
              • M
                MASHpony @MASHpony last edited by

                @mashpony
                ich musste nochmal das ganze etwas optimieren.

                Der Tibber node unterteilt die leistungswerte in +. und -
                Deswegen die Funktion um Einspeisung vom Bezug abzuziehen.

                Hinten habe ich mit dem deadband das ganze noch etwas geglättet das es nicht immer wie wild regelt.
                außerdem ist der WR jetzt nach unten auf 10% limitiert.

                [
                    {
                        "id": "7bf3afac51a18e13",
                        "type": "tab",
                        "label": "PVNull",
                        "disabled": false,
                        "info": "",
                        "env": []
                    },
                    {
                        "id": "2dacc22b5419c832",
                        "type": "mqtt out",
                        "z": "7bf3afac51a18e13",
                        "name": "WR MQTT",
                        "topic": "solar/116484658617/cmd/limit_nonpersistent_absolute",
                        "qos": "",
                        "retain": "",
                        "respTopic": "",
                        "contentType": "",
                        "userProps": "",
                        "correl": "",
                        "expiry": "",
                        "broker": "87b2d138566ff5cc",
                        "x": 1910,
                        "y": 300,
                        "wires": []
                    },
                    {
                        "id": "992140f008964c0e",
                        "type": "function",
                        "z": "7bf3afac51a18e13",
                        "name": "Berechnung für WR Limit",
                        "func": "// MAX generation of the inverter Watts\nvar maxPower = 1600;\n\n// Get current power limit or default\nvar power = context.get('power') || maxPower;\npower += msg.payload;\n\n// clamp power between 0 and max\nif (power > maxPower) power = maxPower;\nif (power > 0) power = power + 150;\nif (power < 10) power = 160;\n\n// Wenn keine Werte vom Zähler kommen dann 600 W\n//if (power == 0) power = 1600;\n\n// store current powerlimit and update message\ncontext.set('power', power);\nmsg.payload = power;\n\nreturn msg;",
                        "outputs": 1,
                        "timeout": "",
                        "noerr": 0,
                        "initialize": "",
                        "finalize": "",
                        "libs": [],
                        "x": 1430,
                        "y": 300,
                        "wires": [
                            [
                                "cfc7a51cd2515e7c",
                                "50883943a3e33578"
                            ]
                        ]
                    },
                    {
                        "id": "cfc7a51cd2515e7c",
                        "type": "debug",
                        "z": "7bf3afac51a18e13",
                        "name": "WR Wert",
                        "active": false,
                        "tosidebar": true,
                        "console": false,
                        "tostatus": false,
                        "complete": "payload",
                        "targetType": "msg",
                        "statusVal": "",
                        "statusType": "auto",
                        "x": 1680,
                        "y": 220,
                        "wires": []
                    },
                    {
                        "id": "7c9607b020e57be9",
                        "type": "tibber-feed",
                        "z": "7bf3afac51a18e13",
                        "name": "B4D",
                        "active": true,
                        "apiEndpointRef": "acaea9XXXXXXXXXX",
                        "homeId": "6453fa8f-XXXXXXXXXXXXX",
                        "timestamp": false,
                        "power": true,
                        "lastMeterConsumption": false,
                        "accumulatedConsumption": false,
                        "accumulatedProduction": false,
                        "accumulatedConsumptionLastHour": false,
                        "accumulatedProductionLastHour": false,
                        "accumulatedCost": false,
                        "accumulatedReward": false,
                        "currency": false,
                        "minPower": false,
                        "averagePower": false,
                        "maxPower": false,
                        "powerProduction": true,
                        "minPowerProduction": false,
                        "maxPowerProduction": false,
                        "lastMeterProduction": false,
                        "powerFactor": false,
                        "voltagePhase1": false,
                        "voltagePhase2": false,
                        "voltagePhase3": false,
                        "currentL1": false,
                        "currentL2": false,
                        "currentL3": false,
                        "signalStrength": false,
                        "x": 50,
                        "y": 300,
                        "wires": [
                            [
                                "303c3a9e684e3aca",
                                "acd3b41ba56f0995"
                            ]
                        ]
                    },
                    {
                        "id": "303c3a9e684e3aca",
                        "type": "debug",
                        "z": "7bf3afac51a18e13",
                        "name": "Tibber output",
                        "active": false,
                        "tosidebar": true,
                        "console": false,
                        "tostatus": false,
                        "complete": "payload",
                        "targetType": "msg",
                        "statusVal": "",
                        "statusType": "auto",
                        "x": 260,
                        "y": 220,
                        "wires": []
                    },
                    {
                        "id": "f2cca6ecae7ad5fc",
                        "type": "debug",
                        "z": "7bf3afac51a18e13",
                        "name": "Tibber positiv",
                        "active": false,
                        "tosidebar": true,
                        "console": false,
                        "tostatus": false,
                        "complete": "positiv",
                        "targetType": "msg",
                        "statusVal": "",
                        "statusType": "auto",
                        "x": 640,
                        "y": 220,
                        "wires": []
                    },
                    {
                        "id": "727ade03c58e2d2b",
                        "type": "change",
                        "z": "7bf3afac51a18e13",
                        "name": "Positiv",
                        "rules": [
                            {
                                "t": "set",
                                "p": "positiv",
                                "pt": "msg",
                                "to": "payload.power",
                                "tot": "msg"
                            }
                        ],
                        "action": "",
                        "property": "",
                        "from": "",
                        "to": "",
                        "reg": false,
                        "x": 430,
                        "y": 300,
                        "wires": [
                            [
                                "f2cca6ecae7ad5fc",
                                "e957d8fb0f0bd489"
                            ]
                        ]
                    },
                    {
                        "id": "52b31c00780196ab",
                        "type": "delay",
                        "z": "7bf3afac51a18e13",
                        "name": "",
                        "pauseType": "rate",
                        "timeout": "10",
                        "timeoutUnits": "seconds",
                        "rate": "1",
                        "nbRateUnits": "10",
                        "rateUnits": "second",
                        "randomFirst": "1",
                        "randomLast": "5",
                        "randomUnits": "seconds",
                        "drop": true,
                        "allowrate": false,
                        "outputs": 1,
                        "x": 1110,
                        "y": 300,
                        "wires": [
                            [
                                "992140f008964c0e",
                                "aed44dec4557ee97"
                            ]
                        ]
                    },
                    {
                        "id": "aed44dec4557ee97",
                        "type": "debug",
                        "z": "7bf3afac51a18e13",
                        "name": "nach delay",
                        "active": true,
                        "tosidebar": true,
                        "console": false,
                        "tostatus": false,
                        "complete": "payload",
                        "targetType": "msg",
                        "statusVal": "",
                        "statusType": "auto",
                        "x": 1390,
                        "y": 220,
                        "wires": []
                    },
                    {
                        "id": "50883943a3e33578",
                        "type": "rbe",
                        "z": "7bf3afac51a18e13",
                        "name": "",
                        "func": "deadband",
                        "gap": "30",
                        "start": "",
                        "inout": "out",
                        "septopics": true,
                        "property": "payload",
                        "topi": "topic",
                        "x": 1690,
                        "y": 300,
                        "wires": [
                            [
                                "2dacc22b5419c832",
                                "fb6e2a22c5dd3e5f"
                            ]
                        ]
                    },
                    {
                        "id": "fb6e2a22c5dd3e5f",
                        "type": "debug",
                        "z": "7bf3afac51a18e13",
                        "name": "nach Filter",
                        "active": true,
                        "tosidebar": true,
                        "console": false,
                        "tostatus": false,
                        "complete": "payload",
                        "targetType": "msg",
                        "statusVal": "",
                        "statusType": "auto",
                        "x": 1910,
                        "y": 220,
                        "wires": []
                    },
                    {
                        "id": "acd3b41ba56f0995",
                        "type": "time-switch",
                        "z": "7bf3afac51a18e13",
                        "name": "zeitschaltung",
                        "lat": "48.1492455",
                        "lon": "12.0148575",
                        "startTime": "sunrise",
                        "endTime": "sunset",
                        "startOffset": 0,
                        "endOffset": 0,
                        "x": 250,
                        "y": 300,
                        "wires": [
                            [
                                "727ade03c58e2d2b"
                            ],
                            []
                        ]
                    },
                    {
                        "id": "779a354a9c204395",
                        "type": "inject",
                        "z": "7bf3afac51a18e13",
                        "name": "",
                        "props": [
                            {
                                "p": "payload"
                            },
                            {
                                "p": "topic",
                                "vt": "str"
                            }
                        ],
                        "repeat": "",
                        "crontab": "00 22 * * *",
                        "once": false,
                        "onceDelay": 0.1,
                        "topic": "",
                        "payload": "1600",
                        "payloadType": "num",
                        "x": 1370,
                        "y": 360,
                        "wires": [
                            [
                                "50883943a3e33578"
                            ]
                        ]
                    },
                    {
                        "id": "e957d8fb0f0bd489",
                        "type": "change",
                        "z": "7bf3afac51a18e13",
                        "name": "Negativ",
                        "rules": [
                            {
                                "t": "set",
                                "p": "negativ",
                                "pt": "msg",
                                "to": "payload.powerProduction",
                                "tot": "msg"
                            }
                        ],
                        "action": "",
                        "property": "",
                        "from": "",
                        "to": "",
                        "reg": false,
                        "x": 620,
                        "y": 300,
                        "wires": [
                            [
                                "7576e3b12206f405",
                                "cac94db4ac79fe23"
                            ]
                        ]
                    },
                    {
                        "id": "7576e3b12206f405",
                        "type": "debug",
                        "z": "7bf3afac51a18e13",
                        "name": "Tibber - negativ",
                        "active": false,
                        "tosidebar": true,
                        "console": false,
                        "tostatus": false,
                        "complete": "negativ",
                        "targetType": "msg",
                        "statusVal": "",
                        "statusType": "auto",
                        "x": 840,
                        "y": 400,
                        "wires": []
                    },
                    {
                        "id": "6f770f0a3305a631",
                        "type": "debug",
                        "z": "7bf3afac51a18e13",
                        "name": "nach rechner",
                        "active": true,
                        "tosidebar": true,
                        "console": false,
                        "tostatus": false,
                        "complete": "payload",
                        "targetType": "msg",
                        "statusVal": "",
                        "statusType": "auto",
                        "x": 1070,
                        "y": 360,
                        "wires": []
                    },
                    {
                        "id": "cac94db4ac79fe23",
                        "type": "change",
                        "z": "7bf3afac51a18e13",
                        "name": "Suptrahieren",
                        "rules": [
                            {
                                "t": "set",
                                "p": "payload",
                                "pt": "msg",
                                "to": "msg.positiv - msg.negativ",
                                "tot": "jsonata"
                            }
                        ],
                        "action": "",
                        "property": "",
                        "from": "",
                        "to": "",
                        "reg": false,
                        "x": 830,
                        "y": 300,
                        "wires": [
                            [
                                "52b31c00780196ab",
                                "6f770f0a3305a631"
                            ]
                        ]
                    },
                    {
                        "id": "87b2d138566ff5cc",
                        "type": "mqtt-broker",
                        "name": "",
                        "broker": "192.168.1.2",
                        "port": "1883",
                        "clientid": "",
                        "autoConnect": true,
                        "usetls": false,
                        "protocolVersion": "4",
                        "keepalive": "60",
                        "cleansession": true,
                        "autoUnsubscribe": true,
                        "birthTopic": "",
                        "birthQos": "0",
                        "birthPayload": "",
                        "birthMsg": {},
                        "closeTopic": "",
                        "closeQos": "0",
                        "closePayload": "",
                        "closeMsg": {},
                        "willTopic": "",
                        "willQos": "0",
                        "willPayload": "",
                        "willMsg": {},
                        "userProps": "",
                        "sessionExpiry": ""
                    },
                    {
                        "id": "acaea9118c2d1751",
                        "type": "tibber-api-endpoint",
                        "queryUrl": "https://api.tibber.com/v1-beta/gql",
                        "feedConnectionTimeout": "30",
                        "feedTimeout": "60",
                        "queryRequestTimeout": "30",
                        "name": "B4D"
                    }
                ]
                

                Bildschirmfoto 2024-01-30 um 10.40.44.png

                1 Reply Last reply Reply Quote 0
                • First post
                  Last post

                Support us

                ioBroker
                Community Adapters
                Donate

                841
                Online

                31.7k
                Users

                79.8k
                Topics

                1.3m
                Posts

                2
                6
                1169
                Loading More Posts
                • Oldest to Newest
                • Newest to Oldest
                • Most Votes
                Reply
                • Reply as topic
                Log in to reply
                Community
                Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                The ioBroker Community 2014-2023
                logo