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

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Einsteigerfragen
  4. Automatisierung
  5. goto in node red

NEWS

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    23
    1
    1.3k

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    9.2k

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    14
    1
    2.5k

goto in node red

Geplant Angeheftet Gesperrt Verschoben Automatisierung
77 Beiträge 6 Kommentatoren 6.5k Aufrufe 4 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • OliverIOO OliverIO

    @bynight sagte in goto in node red:

    In Batch Dateien und Visual Basic, was ich am Meisten nutze, ist es gebräuchlich.

    aber auch dort nicht gut. ist halt noch das erbe, das es in basic enthalten ist.
    auch dort kann man goto vermeiden (ausser bei der fehler behandlung on error goto)

    hier ein artikel, der versucht es verständlich zu machen.
    wen dein code nur 20/30 zeilen hat ok,

    nur der browseranteil für meine widgets zu rssfeed hat fast 900 zeilen.
    wenn da wild mit goto rumgesprungen wird bist du verloren.
    https://craftofcoding.wordpress.com/2022/03/28/ever-wondered-why-goto-is-considered-harmful/

    B Offline
    B Offline
    bynight
    schrieb am zuletzt editiert von
    #31

    @oliverio
    meine batch Dateien haben im Laufe der Jahre auch 300 bis 400 Zeilen gekriegt, bei 10 -15 goto Sprüngen, meist ans Ende oder zum Folgeabschnitt... aber noch nicht wild und nicht unübersichtlich... :-) Da habe ich mit komplexen Schleifen viel mehr Probleme...

    Gruß,
    Ronald

    1 Antwort Letzte Antwort
    0
    • mickymM mickym

      @bynight Das mit dem return msg sieht hier nur als Abbruchbedingung aus. Das ist es aber nicht.
      Mit return mit msg gibst du nur die Kontrolle von der function Node wieder an den Flow zurück. Je nachdem was Du zurückgibst, also einfaches Objekt, Array von Objekten kannst Du ein oder mehrere Nachrichten an verschiedene Ausgänge des Flows zurückgeben.

      8977ec3f-291e-4011-89b3-899e1e980cd0-image.png

      Der Vorteil einer function Node ist auch, dass Du komplett neue Nachrichtenobjekte erzeugen kannst und Dich so einfach von den Eigenschaften des bisherigen Nachrichtenobjektes entledigen kannst.

      Aber wie gesagt meide function Nodes. Sie sind vor allem dann nützlich, wenn Du in einem NodeKontext Zustände speichern möchtest, um dann Berechnungen durchzuführen oder wenn Du andere NodeJS Module verwenden willst. Ansonsten schau Dir die Hilfe zu den Nodes an, auch zu der function Node:

      Neben return msg - kannst Du auch asynchron über node.send Nachrichten erzeugen. In der Hilfe ist außerdem ein Link zur Onlinedokumentation:
      15588c70-4d43-4b44-ae8f-3d428041ae85-image.png

      https://nodered.org/docs/user-guide/writing-functions

      Dort siehst Du wie Du über ein Array mehrere Ausgänge bedienen kannst

      2a99cecf-3448-41d5-b105-6e29cdd9ca96-image.png

      oder bei Arrays in Arrays mehrere Nachrichten aufeinmal an einen Ausgang schicken kannst.

      Im Übrigen ist es KEIN guter Stil mit return msg die function Node an unterschiedlichen Stellen abzubrechen, das macht das Debuggen unter Umständen schwierig und musst mit node.warn arbeiten. Aber das ist genau einer der Gründe warum man function NOdes meiden sollte.

      B Offline
      B Offline
      bynight
      schrieb am zuletzt editiert von
      #32

      @mickym

      hab noch ne Frage... ist es möglich die Bezeichung der Nodes auf 2 oder 3 Zeilen umzubrechen, also untereinander zu schreiben?

      Gruß,
      Ronald

      mickymM 1 Antwort Letzte Antwort
      0
      • B bynight

        @codierknecht
        na ich bin ja auch aus der Steinzeit, und ich werde mit 58 sicher kein Hochleistungsprogrammierer mehr. :-)) Da bremsen mich ein paar seltene Goto Sprünge nicht aus. Mit nem 3 Seiten Bauernhof hat man auch reichlich anderes zu tun... :-))

        Gruß,
        Ronald

        CodierknechtC Online
        CodierknechtC Online
        Codierknecht
        Developer Most Active
        schrieb am zuletzt editiert von
        #33

        @bynight sagte in goto in node red:

        ich werde mit 58

        Willkommen im Club :grinning:

        "Any fool can write code that a computer can understand. Good programmers write code that humans can understand." (Martin Fowler, "Refactoring")

        Proxmox 9.1.1 LXC|8 GB|Core i7-6700
        HmIP|ZigBee|Tasmota|Unifi
        Zabbix Certified Specialist
        Konnte ich Dir helfen? Dann benutze bitte das Voting unten rechts im Beitrag

        1 Antwort Letzte Antwort
        0
        • B bynight

          @mickym

          hab noch ne Frage... ist es möglich die Bezeichung der Nodes auf 2 oder 3 Zeilen umzubrechen, also untereinander zu schreiben?

          Gruß,
          Ronald

          mickymM Offline
          mickymM Offline
          mickym
          Most Active
          schrieb am zuletzt editiert von mickym
          #34

          @bynight nein. Aber du kannst zu jeder Node eigene Texte verfassen und die kann man formatieren. Die stehen dann im info tab

          Jeder Flow bzw. jedes Script, das ich hier poste implementiert jeder auf eigene Gefahr. Flows und Scripts können Fehler aufweisen und weder der Seitenbetreiber noch ich persönlich können hierfür haftbar gemacht werden. Das gleiche gilt für Empfehlungen aller Art.

          B 1 Antwort Letzte Antwort
          0
          • mickymM mickym

            @bynight nein. Aber du kannst zu jeder Node eigene Texte verfassen und die kann man formatieren. Die stehen dann im info tab

            B Offline
            B Offline
            bynight
            schrieb am zuletzt editiert von
            #35

            @mickym das weiße comment?

            mickymM 1 Antwort Letzte Antwort
            0
            • B bynight

              @mickym das weiße comment?

              mickymM Offline
              mickymM Offline
              mickym
              Most Active
              schrieb am zuletzt editiert von
              #36

              @bynight sagte in goto in node red:

              @mickym das weiße comment?

              Wenn ich daheim bin schicke ich dir ein Screenshot

              Jeder Flow bzw. jedes Script, das ich hier poste implementiert jeder auf eigene Gefahr. Flows und Scripts können Fehler aufweisen und weder der Seitenbetreiber noch ich persönlich können hierfür haftbar gemacht werden. Das gleiche gilt für Empfehlungen aller Art.

              B 1 Antwort Letzte Antwort
              0
              • mickymM mickym

                @bynight sagte in goto in node red:

                @mickym das weiße comment?

                Wenn ich daheim bin schicke ich dir ein Screenshot

                B Offline
                B Offline
                bynight
                schrieb am zuletzt editiert von
                #37

                @mickym
                Danke vielmals,

                ich glaub für's erste hab ich's nun... :-))
                node red Snap3.jpg

                Gruß Ronald

                mickymM 1 Antwort Letzte Antwort
                0
                • B bynight

                  @mickym
                  Danke vielmals,

                  ich glaub für's erste hab ich's nun... :-))
                  node red Snap3.jpg

                  Gruß Ronald

                  mickymM Offline
                  mickymM Offline
                  mickym
                  Most Active
                  schrieb am zuletzt editiert von
                  #38

                  @bynight

                  f8b03ea1-495f-47ac-942f-4aa7b60b23cc-image.png

                  Grundsätzlich kannst Du über die Beschreibung/Comment Schaltfläche Deinen eigenen Text schreiben und den siehst Du dann beim Anklicken in dem Info Tab rechts.

                  Jeder Flow bzw. jedes Script, das ich hier poste implementiert jeder auf eigene Gefahr. Flows und Scripts können Fehler aufweisen und weder der Seitenbetreiber noch ich persönlich können hierfür haftbar gemacht werden. Das gleiche gilt für Empfehlungen aller Art.

                  B 1 Antwort Letzte Antwort
                  0
                  • mickymM mickym

                    @bynight

                    f8b03ea1-495f-47ac-942f-4aa7b60b23cc-image.png

                    Grundsätzlich kannst Du über die Beschreibung/Comment Schaltfläche Deinen eigenen Text schreiben und den siehst Du dann beim Anklicken in dem Info Tab rechts.

                    B Offline
                    B Offline
                    bynight
                    schrieb am zuletzt editiert von
                    #39

                    @mickym
                    Ja, aber da sieht man eben auch immer nur den Node den man angeklickt hat... Aber Danke für die Info!

                    mickymM 1 Antwort Letzte Antwort
                    0
                    • B bynight

                      @mickym
                      Ja, aber da sieht man eben auch immer nur den Node den man angeklickt hat... Aber Danke für die Info!

                      mickymM Offline
                      mickymM Offline
                      mickym
                      Most Active
                      schrieb am zuletzt editiert von
                      #40

                      @bynight Du kannst auch noch comment Nodes verwenden - oder Gruppen verwenden und diese beschriften.

                      Jeder Flow bzw. jedes Script, das ich hier poste implementiert jeder auf eigene Gefahr. Flows und Scripts können Fehler aufweisen und weder der Seitenbetreiber noch ich persönlich können hierfür haftbar gemacht werden. Das gleiche gilt für Empfehlungen aller Art.

                      B 1 Antwort Letzte Antwort
                      0
                      • mickymM mickym

                        @bynight Du kannst auch noch comment Nodes verwenden - oder Gruppen verwenden und diese beschriften.

                        B Offline
                        B Offline
                        bynight
                        schrieb am zuletzt editiert von
                        #41

                        @mickym noch eine Frage... wie macht man aus einem fortlaufenden Wert einen täglichen Wert, also aus total kWh daily kWh? Dafür gibt es doch bestimmt auch einen Node?

                        mickymM 1 Antwort Letzte Antwort
                        0
                        • B bynight

                          @mickym noch eine Frage... wie macht man aus einem fortlaufenden Wert einen täglichen Wert, also aus total kWh daily kWh? Dafür gibt es doch bestimmt auch einen Node?

                          mickymM Offline
                          mickymM Offline
                          mickym
                          Most Active
                          schrieb am zuletzt editiert von
                          #42

                          @bynight Na so einfach ist das nicht. Ich weiß auch nichts über Deine Daten. Ich habe mal einen Subflow gemacht, der prüft die Zählerstände (als Deinen totalen Wert) aber in Verbindung mit dem iobroker.

                          Ich hab mal einen eigenen Subflow gemacht, https://forum.iobroker.net/post/1148029

                          Da kannst ja schauen, ob der Dir was hilft.

                          Jeder Flow bzw. jedes Script, das ich hier poste implementiert jeder auf eigene Gefahr. Flows und Scripts können Fehler aufweisen und weder der Seitenbetreiber noch ich persönlich können hierfür haftbar gemacht werden. Das gleiche gilt für Empfehlungen aller Art.

                          B 1 Antwort Letzte Antwort
                          0
                          • mickymM mickym

                            @bynight Na so einfach ist das nicht. Ich weiß auch nichts über Deine Daten. Ich habe mal einen Subflow gemacht, der prüft die Zählerstände (als Deinen totalen Wert) aber in Verbindung mit dem iobroker.

                            Ich hab mal einen eigenen Subflow gemacht, https://forum.iobroker.net/post/1148029

                            Da kannst ja schauen, ob der Dir was hilft.

                            B Offline
                            B Offline
                            bynight
                            schrieb am zuletzt editiert von
                            #43

                            @mickym Danke! Das muß ich gleich mal schauen...
                            In Homeassist gibt es unter Helfern eine Subroutine "Verbrauchszähler" Da läßt sich aus jedem Wert ein viertelstündlicher, täglicher, wöchentlicher, monatlicher... Wert kreieren. Den brauche ich ja z.B. bei allen Energiesteckdosen oder -schaltern die keinen täglichen Wert ausgeben, wie z.B. Shelly Geräte... Die Solarenergie messe ich z.B. mit einem Shelly 3EM vor dem Victron MPII. Die tägliche Anzeige sollte in dem Fall um Mitternacht wieder auf 0 springen...

                            mickymM 1 Antwort Letzte Antwort
                            0
                            • B bynight

                              @mickym Danke! Das muß ich gleich mal schauen...
                              In Homeassist gibt es unter Helfern eine Subroutine "Verbrauchszähler" Da läßt sich aus jedem Wert ein viertelstündlicher, täglicher, wöchentlicher, monatlicher... Wert kreieren. Den brauche ich ja z.B. bei allen Energiesteckdosen oder -schaltern die keinen täglichen Wert ausgeben, wie z.B. Shelly Geräte... Die Solarenergie messe ich z.B. mit einem Shelly 3EM vor dem Victron MPII. Die tägliche Anzeige sollte in dem Fall um Mitternacht wieder auf 0 springen...

                              mickymM Offline
                              mickymM Offline
                              mickym
                              Most Active
                              schrieb am zuletzt editiert von
                              #44

                              @bynight Ja dann musst Dir selber einen Flow basteln - ich würde Dir für die Zeiten die cronplus Node empfehlen, die ist am flexibelsten und am mächtigsten. Du musst halt die Daten irgendwo hinschreiben, wenn Du kein iobroker nutzt.

                              Jeder Flow bzw. jedes Script, das ich hier poste implementiert jeder auf eigene Gefahr. Flows und Scripts können Fehler aufweisen und weder der Seitenbetreiber noch ich persönlich können hierfür haftbar gemacht werden. Das gleiche gilt für Empfehlungen aller Art.

                              B 1 Antwort Letzte Antwort
                              0
                              • mickymM mickym

                                @bynight Ja dann musst Dir selber einen Flow basteln - ich würde Dir für die Zeiten die cronplus Node empfehlen, die ist am flexibelsten und am mächtigsten. Du musst halt die Daten irgendwo hinschreiben, wenn Du kein iobroker nutzt.

                                B Offline
                                B Offline
                                bynight
                                schrieb am zuletzt editiert von bynight
                                #45

                                @mickym klappt nicht so recht... verstehe auch den Cron-plus nicht so recht... Es wird wohl je nach Einstellung alle Sekunden oder Minuten oder Stunden der aktuelle Zeitstempel ausgegeben. Aber die Trigger davor ändern daran gar nichts. Ich habe noch minutlich und sekundlich hinzugefügt. Aber die Ausgabe erfolgt immer sekündlich und minütlich. Hab dann sekündlich gelöscht dann erfolgt die Ausgabe minütlich. Ich dachte daß man mit den Triggern den Startpunkt von z.B. Minuten auf :00 setzen kann aber die Ausgabe erfolgt bei mir immer :51. Keine Ahnung wie ich das auf 00 bekomme und wofür diese Inject Nodes überhaupt gut sind.

                                Der Verbrauchszähler funktioniert auch nicht, da es kein iO Broker.get und .out gibt. Weiß nicht wie das im Node Red von Cerbo GX aussehen müßte...

                                Desweiteren ist mir nicht klar wie der Flow aussehen müßte. Ist der Shelly eine Eingangsgröße oder kommt er ans Ende wie bei Dir die Fritzboxen?
                                Shelly Daily Snap1.jpg

                                mickymM 2 Antworten Letzte Antwort
                                0
                                • B bynight

                                  @mickym klappt nicht so recht... verstehe auch den Cron-plus nicht so recht... Es wird wohl je nach Einstellung alle Sekunden oder Minuten oder Stunden der aktuelle Zeitstempel ausgegeben. Aber die Trigger davor ändern daran gar nichts. Ich habe noch minutlich und sekundlich hinzugefügt. Aber die Ausgabe erfolgt immer sekündlich und minütlich. Hab dann sekündlich gelöscht dann erfolgt die Ausgabe minütlich. Ich dachte daß man mit den Triggern den Startpunkt von z.B. Minuten auf :00 setzen kann aber die Ausgabe erfolgt bei mir immer :51. Keine Ahnung wie ich das auf 00 bekomme und wofür diese Inject Nodes überhaupt gut sind.

                                  Der Verbrauchszähler funktioniert auch nicht, da es kein iO Broker.get und .out gibt. Weiß nicht wie das im Node Red von Cerbo GX aussehen müßte...

                                  Desweiteren ist mir nicht klar wie der Flow aussehen müßte. Ist der Shelly eine Eingangsgröße oder kommt er ans Ende wie bei Dir die Fritzboxen?
                                  Shelly Daily Snap1.jpg

                                  mickymM Offline
                                  mickymM Offline
                                  mickym
                                  Most Active
                                  schrieb am zuletzt editiert von mickym
                                  #46

                                  @bynight Das ist ja auch verkehrt - du sollst ja nicht den Shellyausgabe in die cron node stecken.

                                  Dir cron node triggert Dir zu bestimmten Zeitpunkten und da musst Du den Verbrauch ablesen und die Differenz bilden.

                                  Du musst also den Verbrauch in einen Kontext schreiben und dann aus den verschiedenen Zählerständen den Verbrauch errechnen. Die Cron Node triggert also nur die Berechnung musst Du schon selbst machen.

                                  Also als erstes speicherst Du die den Zählerstand und berechnest aus dem vorangegangenen den Verbrauch.

                                  Also speichere den aktuellen Zählerstand im Kontext. Am Besten unter Shellyname.Aktuell

                                  Jeder Flow bzw. jedes Script, das ich hier poste implementiert jeder auf eigene Gefahr. Flows und Scripts können Fehler aufweisen und weder der Seitenbetreiber noch ich persönlich können hierfür haftbar gemacht werden. Das gleiche gilt für Empfehlungen aller Art.

                                  1 Antwort Letzte Antwort
                                  0
                                  • B bynight

                                    @mickym klappt nicht so recht... verstehe auch den Cron-plus nicht so recht... Es wird wohl je nach Einstellung alle Sekunden oder Minuten oder Stunden der aktuelle Zeitstempel ausgegeben. Aber die Trigger davor ändern daran gar nichts. Ich habe noch minutlich und sekundlich hinzugefügt. Aber die Ausgabe erfolgt immer sekündlich und minütlich. Hab dann sekündlich gelöscht dann erfolgt die Ausgabe minütlich. Ich dachte daß man mit den Triggern den Startpunkt von z.B. Minuten auf :00 setzen kann aber die Ausgabe erfolgt bei mir immer :51. Keine Ahnung wie ich das auf 00 bekomme und wofür diese Inject Nodes überhaupt gut sind.

                                    Der Verbrauchszähler funktioniert auch nicht, da es kein iO Broker.get und .out gibt. Weiß nicht wie das im Node Red von Cerbo GX aussehen müßte...

                                    Desweiteren ist mir nicht klar wie der Flow aussehen müßte. Ist der Shelly eine Eingangsgröße oder kommt er ans Ende wie bei Dir die Fritzboxen?
                                    Shelly Daily Snap1.jpg

                                    mickymM Offline
                                    mickymM Offline
                                    mickym
                                    Most Active
                                    schrieb am zuletzt editiert von
                                    #47

                                    @bynight So hier mal ein Flow - in dem ich für einen Zähler viertelstündlich und stündlich checke.

                                    155c1d13-3444-4f78-9556-1d6b7cac29ea-image.png

                                    Hier der Flow zum Import - anstelle der Inject Node musst halt die Shelly Node setzen.

                                    [{"id":"3a481b4daeef078d","type":"inject","z":"7e6af0015415146d","name":"","props":[{"p":"payload"},{"p":"topic","vt":"str"}],"repeat":"","crontab":"","once":false,"onceDelay":0.1,"topic":"Shelly3EM#01","payload":"37.056","payloadType":"num","x":340,"y":6020,"wires":[["6cdb8f59eda7bded"]]},{"id":"6cdb8f59eda7bded","type":"change","z":"7e6af0015415146d","name":"","rules":[{"t":"set","p":"Shelly3EM#01.aktuell","pt":"flow","to":"payload","tot":"msg"}],"action":"","property":"","from":"","to":"","reg":false,"x":610,"y":6020,"wires":[[]]},{"id":"57adaa2ffed38c8b","type":"change","z":"7e6af0015415146d","name":"","rules":[{"t":"set","p":"aktuell","pt":"msg","to":"Shelly3EM#01.aktuell","tot":"flow"},{"t":"set","p":"payload","pt":"msg","to":"payload ? aktuell - payload : 0","tot":"jsonata"}],"action":"","property":"","from":"","to":"","reg":false,"x":430,"y":6160,"wires":[["ae9b10042be8b940","44678f3d1d770869"]]},{"id":"6d1ac2c12b999a5e","type":"cronplus","z":"7e6af0015415146d","name":"","outputField":"payload","timeZone":"","storeName":"","commandResponseMsgOutput":"output1","defaultLocation":"","defaultLocationType":"default","outputs":1,"options":[{"name":"quartely","topic":"viertelstündlich","payloadType":"flow","payload":"Shelly3EM#01.viertelstündlich","expressionType":"cron","expression":"0 */15 * * * * *","location":"","offset":"0","solarType":"all","solarEvents":"sunrise,sunset"},{"name":"hourly","topic":"stündlich","payloadType":"flow","payload":"Shelly3EM#01.stündlich","expressionType":"cron","expression":"0 0 * * * * *","location":"","offset":"0","solarType":"all","solarEvents":"sunrise,sunset"}],"x":240,"y":6160,"wires":[["6a9f0c984ef45955","57adaa2ffed38c8b"]]},{"id":"6a9f0c984ef45955","type":"debug","z":"7e6af0015415146d","name":"trigger","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"true","targetType":"full","statusVal":"","statusType":"auto","x":410,"y":6220,"wires":[]},{"id":"ae9b10042be8b940","type":"switch","z":"7e6af0015415146d","name":"","property":"topic","propertyType":"msg","rules":[{"t":"eq","v":"viertelstündlich","vt":"str"},{"t":"eq","v":"stündlich","vt":"str"}],"checkall":"true","repair":false,"outputs":2,"x":710,"y":6160,"wires":[["107d399886391267"],["4e998ae87fb1b1c4"]]},{"id":"107d399886391267","type":"change","z":"7e6af0015415146d","name":"","rules":[{"t":"set","p":"Shelly3EM#01.viertelstündlich","pt":"flow","to":"Shelly3EM#01.aktuell","tot":"flow"}],"action":"","property":"","from":"","to":"","reg":false,"x":960,"y":6100,"wires":[[]]},{"id":"44678f3d1d770869","type":"debug","z":"7e6af0015415146d","name":"Verbrauch","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"payload","targetType":"msg","statusVal":"","statusType":"auto","x":650,"y":6220,"wires":[]},{"id":"4e998ae87fb1b1c4","type":"change","z":"7e6af0015415146d","name":"","rules":[{"t":"set","p":"Shelly3EM#01.stündlich","pt":"flow","to":"Shelly3EM#01.aktuell","tot":"flow"}],"action":"","property":"","from":"","to":"","reg":false,"x":940,"y":6160,"wires":[[]]}]
                                    

                                    Jeder Flow bzw. jedes Script, das ich hier poste implementiert jeder auf eigene Gefahr. Flows und Scripts können Fehler aufweisen und weder der Seitenbetreiber noch ich persönlich können hierfür haftbar gemacht werden. Das gleiche gilt für Empfehlungen aller Art.

                                    B 1 Antwort Letzte Antwort
                                    0
                                    • mickymM mickym

                                      @bynight So hier mal ein Flow - in dem ich für einen Zähler viertelstündlich und stündlich checke.

                                      155c1d13-3444-4f78-9556-1d6b7cac29ea-image.png

                                      Hier der Flow zum Import - anstelle der Inject Node musst halt die Shelly Node setzen.

                                      [{"id":"3a481b4daeef078d","type":"inject","z":"7e6af0015415146d","name":"","props":[{"p":"payload"},{"p":"topic","vt":"str"}],"repeat":"","crontab":"","once":false,"onceDelay":0.1,"topic":"Shelly3EM#01","payload":"37.056","payloadType":"num","x":340,"y":6020,"wires":[["6cdb8f59eda7bded"]]},{"id":"6cdb8f59eda7bded","type":"change","z":"7e6af0015415146d","name":"","rules":[{"t":"set","p":"Shelly3EM#01.aktuell","pt":"flow","to":"payload","tot":"msg"}],"action":"","property":"","from":"","to":"","reg":false,"x":610,"y":6020,"wires":[[]]},{"id":"57adaa2ffed38c8b","type":"change","z":"7e6af0015415146d","name":"","rules":[{"t":"set","p":"aktuell","pt":"msg","to":"Shelly3EM#01.aktuell","tot":"flow"},{"t":"set","p":"payload","pt":"msg","to":"payload ? aktuell - payload : 0","tot":"jsonata"}],"action":"","property":"","from":"","to":"","reg":false,"x":430,"y":6160,"wires":[["ae9b10042be8b940","44678f3d1d770869"]]},{"id":"6d1ac2c12b999a5e","type":"cronplus","z":"7e6af0015415146d","name":"","outputField":"payload","timeZone":"","storeName":"","commandResponseMsgOutput":"output1","defaultLocation":"","defaultLocationType":"default","outputs":1,"options":[{"name":"quartely","topic":"viertelstündlich","payloadType":"flow","payload":"Shelly3EM#01.viertelstündlich","expressionType":"cron","expression":"0 */15 * * * * *","location":"","offset":"0","solarType":"all","solarEvents":"sunrise,sunset"},{"name":"hourly","topic":"stündlich","payloadType":"flow","payload":"Shelly3EM#01.stündlich","expressionType":"cron","expression":"0 0 * * * * *","location":"","offset":"0","solarType":"all","solarEvents":"sunrise,sunset"}],"x":240,"y":6160,"wires":[["6a9f0c984ef45955","57adaa2ffed38c8b"]]},{"id":"6a9f0c984ef45955","type":"debug","z":"7e6af0015415146d","name":"trigger","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"true","targetType":"full","statusVal":"","statusType":"auto","x":410,"y":6220,"wires":[]},{"id":"ae9b10042be8b940","type":"switch","z":"7e6af0015415146d","name":"","property":"topic","propertyType":"msg","rules":[{"t":"eq","v":"viertelstündlich","vt":"str"},{"t":"eq","v":"stündlich","vt":"str"}],"checkall":"true","repair":false,"outputs":2,"x":710,"y":6160,"wires":[["107d399886391267"],["4e998ae87fb1b1c4"]]},{"id":"107d399886391267","type":"change","z":"7e6af0015415146d","name":"","rules":[{"t":"set","p":"Shelly3EM#01.viertelstündlich","pt":"flow","to":"Shelly3EM#01.aktuell","tot":"flow"}],"action":"","property":"","from":"","to":"","reg":false,"x":960,"y":6100,"wires":[[]]},{"id":"44678f3d1d770869","type":"debug","z":"7e6af0015415146d","name":"Verbrauch","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"payload","targetType":"msg","statusVal":"","statusType":"auto","x":650,"y":6220,"wires":[]},{"id":"4e998ae87fb1b1c4","type":"change","z":"7e6af0015415146d","name":"","rules":[{"t":"set","p":"Shelly3EM#01.stündlich","pt":"flow","to":"Shelly3EM#01.aktuell","tot":"flow"}],"action":"","property":"","from":"","to":"","reg":false,"x":940,"y":6160,"wires":[[]]}]
                                      

                                      B Offline
                                      B Offline
                                      bynight
                                      schrieb am zuletzt editiert von bynight
                                      #48

                                      Puh... fällt mir echt schwer das zu verstehen... wieso liefert der cron-plus den "Shelly3EM#01.aktuell" Wert? Wo kriegt der den her?
                                      Was wird in Shelly3EM#01.aktuell gespeichert? Der Anfangswert oder der Endwert?
                                      Ich hab das noch bissel erweitert auf Minuten und Mitternacht, aber so richtig klar ist mir das alles nicht. Vor allem denke ich, daß der mir dann um Mitternacht den Tagesverbrauch ausgibt. Das ist aber nicht das was ich haben möchte. Ich brauche wie bei einem Verbrauchszähler den ganzen Tag über den den aktuellen Wert, nur daß der Zähler um Mitternacht wieder bei 0 beginnen soll... Mein erster Versuch mit dem Spoiler hier...

                                      [{"id":"3a481b4daeef078d","type":"inject","z":"76cd52c3e34e6dc1","name":"","props":[{"p":"payload"},{"p":"topic","vt":"str"}],"repeat":"","crontab":"","once":false,"onceDelay":0.1,"topic":"Shelly3EM#01","payload":"37.056","payloadType":"num","x":200,"y":1840,"wires":[["6cdb8f59eda7bded"]]},{"id":"6cdb8f59eda7bded","type":"change","z":"76cd52c3e34e6dc1","name":"","rules":[{"t":"set","p":"Shelly3EM#01.aktuell","pt":"flow","to":"payload","tot":"msg"}],"action":"","property":"","from":"","to":"","reg":false,"x":530,"y":1880,"wires":[["ba579aa08515a4c2"]]},{"id":"57adaa2ffed38c8b","type":"change","z":"76cd52c3e34e6dc1","name":"","rules":[{"t":"set","p":"aktuell","pt":"msg","to":"Shelly3EM#01.aktuell","tot":"flow"},{"t":"set","p":"payload","pt":"msg","to":"payload ? aktuell - payload : 0","tot":"jsonata"}],"action":"","property":"","from":"","to":"","reg":false,"x":306,"y":2012,"wires":[["ae9b10042be8b940","44678f3d1d770869"]]},{"id":"6d1ac2c12b999a5e","type":"cronplus","z":"76cd52c3e34e6dc1","name":"","outputField":"payload","timeZone":"","storeName":"","commandResponseMsgOutput":"output1","defaultLocation":"","defaultLocationType":"default","outputs":1,"options":[{"name":"minutly","topic":"minütlich","payloadType":"flow","payload":"Shelly3EM#01.minütlich","expressionType":"cron","expression":"0 * * * * *","location":"","offset":"0","solarType":"all","solarEvents":"sunrise,sunset"},{"name":"quartely","topic":"viertelstündlich","payloadType":"flow","payload":"Shelly3EM#01.viertelstündlich","expressionType":"cron","expression":"0 */15 * * * * *","location":"","offset":"0","solarType":"all","solarEvents":"sunrise,sunset"},{"name":"hourly","topic":"stündlich","payloadType":"flow","payload":"Shelly3EM#01.stündlich","expressionType":"cron","expression":"0 0 * * * * *","location":"","offset":"0","solarType":"all","solarEvents":"sunrise,sunset"},{"name":"Midnight","topic":"Mitternacht","payloadType":"flow","payload":"Shelly3EM#01.mitternacht","expressionType":"cron","expression":"0 0 0 * * *","location":"","offset":"0","solarType":"all","solarEvents":"sunrise,sunset"}],"x":116,"y":2012,"wires":[["6a9f0c984ef45955","57adaa2ffed38c8b"]]},{"id":"6a9f0c984ef45955","type":"debug","z":"76cd52c3e34e6dc1","name":"trigger","active":true,"tosidebar":true,"console":true,"tostatus":true,"complete":"true","targetType":"full","statusVal":"payload","statusType":"auto","x":320,"y":2100,"wires":[]},{"id":"ae9b10042be8b940","type":"switch","z":"76cd52c3e34e6dc1","name":"","property":"topic","propertyType":"msg","rules":[{"t":"eq","v":"minütlich","vt":"str"},{"t":"eq","v":"viertelstündlich","vt":"str"},{"t":"eq","v":"stündlich","vt":"str"},{"t":"eq","v":"Mitternacht","vt":"str"}],"checkall":"true","repair":false,"outputs":4,"x":586,"y":2012,"wires":[["c1f2e69416cc6ecc"],["107d399886391267"],["4e998ae87fb1b1c4"],["f288cfe26574c280"]]},{"id":"107d399886391267","type":"change","z":"76cd52c3e34e6dc1","name":"","rules":[{"t":"set","p":"Shelly3EM#01.viertelstündlich","pt":"flow","to":"Shelly3EM#01.aktuell","tot":"flow"}],"action":"","property":"","from":"","to":"","reg":false,"x":840,"y":2000,"wires":[["8d4c322a61fcd044"]]},{"id":"44678f3d1d770869","type":"debug","z":"76cd52c3e34e6dc1","name":"Verbrauch","active":true,"tosidebar":true,"console":true,"tostatus":true,"complete":"payload","targetType":"msg","statusVal":"payload","statusType":"auto","x":550,"y":2100,"wires":[]},{"id":"4e998ae87fb1b1c4","type":"change","z":"76cd52c3e34e6dc1","name":"","rules":[{"t":"set","p":"Shelly3EM#01.stündlich","pt":"flow","to":"Shelly3EM#01.aktuell","tot":"flow"}],"action":"","property":"","from":"","to":"","reg":false,"x":820,"y":2040,"wires":[["c72456c538daaaea"]]},{"id":"9c72b19be318fdfa","type":"link in","z":"76cd52c3e34e6dc1","name":"Shelly 3EM #01 Total Energy","links":["09af2ae564c66baf"],"x":200,"y":1880,"wires":[["6cdb8f59eda7bded"]],"l":true},{"id":"ba579aa08515a4c2","type":"debug","z":"76cd52c3e34e6dc1","name":"debug 23","active":true,"tosidebar":true,"console":true,"tostatus":true,"complete":"payload","targetType":"msg","statusVal":"payload","statusType":"auto","x":770,"y":1880,"wires":[]},{"id":"fec39c74ddd83bfd","type":"debug","z":"76cd52c3e34e6dc1","name":"debug 25","active":true,"tosidebar":true,"console":true,"tostatus":true,"complete":"payload","targetType":"msg","statusVal":"payload","statusType":"auto","x":1110,"y":1880,"wires":[]},{"id":"c1f2e69416cc6ecc","type":"change","z":"76cd52c3e34e6dc1","name":"","rules":[{"t":"set","p":"Shelly3EM#01.minütlich","pt":"flow","to":"Shelly3EM#01.aktuell","tot":"flow"}],"action":"","property":"","from":"","to":"","reg":false,"x":820,"y":1960,"wires":[["fec39c74ddd83bfd"]]},{"id":"8d4c322a61fcd044","type":"debug","z":"76cd52c3e34e6dc1","name":"debug 26","active":true,"tosidebar":true,"console":true,"tostatus":true,"complete":"payload","targetType":"msg","statusVal":"payload","statusType":"auto","x":1110,"y":1940,"wires":[]},{"id":"c72456c538daaaea","type":"debug","z":"76cd52c3e34e6dc1","name":"debug 27","active":true,"tosidebar":true,"console":true,"tostatus":true,"complete":"payload","targetType":"msg","statusVal":"payload","statusType":"auto","x":1110,"y":2000,"wires":[]},{"id":"d39393ea29c380db","type":"inject","z":"76cd52c3e34e6dc1","name":"","props":[{"p":"payload"},{"p":"topic","vt":"str"}],"repeat":"","crontab":"","once":false,"onceDelay":0.1,"topic":"Shelly3EM#01","payload":"0","payloadType":"num","x":180,"y":1680,"wires":[["6cdb8f59eda7bded"]]},{"id":"426bbd93b7619a53","type":"inject","z":"76cd52c3e34e6dc1","name":"","props":[{"p":"payload"},{"p":"topic","vt":"str"}],"repeat":"","crontab":"","once":false,"onceDelay":0.1,"topic":"Shelly3EM#01","payload":"8","payloadType":"num","x":180,"y":1800,"wires":[["6cdb8f59eda7bded"]]},{"id":"8e7c92ac4cfa6b68","type":"inject","z":"76cd52c3e34e6dc1","name":"","props":[{"p":"payload"},{"p":"topic","vt":"str"}],"repeat":"","crontab":"","once":false,"onceDelay":0.1,"topic":"Shelly3EM#01","payload":"2","payloadType":"num","x":180,"y":1720,"wires":[["6cdb8f59eda7bded"]]},{"id":"5f4ea30e341e5a43","type":"inject","z":"76cd52c3e34e6dc1","name":"","props":[{"p":"payload"},{"p":"topic","vt":"str"}],"repeat":"","crontab":"","once":false,"onceDelay":0.1,"topic":"Shelly3EM#01","payload":"5","payloadType":"num","x":180,"y":1760,"wires":[["6cdb8f59eda7bded"]]},{"id":"f288cfe26574c280","type":"change","z":"76cd52c3e34e6dc1","name":"","rules":[{"t":"set","p":"Shelly3EM#01.Mitternacht","pt":"flow","to":"Shelly3EM#01.aktuell","tot":"flow"}],"action":"","property":"","from":"","to":"","reg":false,"x":830,"y":2080,"wires":[["7b678790bb2bb1bc","527d74db9188a40c"]]},{"id":"7b678790bb2bb1bc","type":"debug","z":"76cd52c3e34e6dc1","name":"debug 28","active":true,"tosidebar":true,"console":true,"tostatus":true,"complete":"payload","targetType":"msg","statusVal":"payload","statusType":"auto","x":1110,"y":2060,"wires":[]},{"id":"44d53d8ba7feb2a4","type":"ui_artlessgauge","z":"76cd52c3e34e6dc1","group":"95fef75fbb31f51e","order":16,"width":0,"height":0,"name":"PV Yield","icon":"fa-area-chart","label":"Solar Ertrag aktueller Tag","unit":"kWh","layout":"linear","decimals":"1","differential":false,"minmax":false,"colorTrack":"#555555","style":"","colorFromTheme":true,"property":"payload","secondary":"secondary","inline":true,"animate":true,"sectors":[{"val":0,"col":"#ffff00","t":"min","dot":0},{"val":100,"col":"#ffff00","t":"max","dot":0}],"lineWidth":"7","bgcolorFromTheme":true,"diffCenter":"","x":1320,"y":2100,"wires":[]},{"id":"527d74db9188a40c","type":"change","z":"76cd52c3e34e6dc1","name":"","rules":[{"t":"set","p":"payload","pt":"msg","to":"Shelly3EM#01.Mitternacht","tot":"flow"}],"action":"","property":"","from":"","to":"","reg":false,"x":1130,"y":2100,"wires":[["44d53d8ba7feb2a4"]]},{"id":"95fef75fbb31f51e","type":"ui_group","name":"mitte","tab":"2dbf5f84d75bd5b7","order":2,"disp":false,"width":8,"collapse":false,"className":""},{"id":"2dbf5f84d75bd5b7","type":"ui_tab","name":"ATB18 Dashboard","icon":"fa-flash","order":1,"disabled":false,"hidden":false}]
                                      

                                      AsgothianA mickymM 2 Antworten Letzte Antwort
                                      0
                                      • B bynight

                                        Puh... fällt mir echt schwer das zu verstehen... wieso liefert der cron-plus den "Shelly3EM#01.aktuell" Wert? Wo kriegt der den her?
                                        Was wird in Shelly3EM#01.aktuell gespeichert? Der Anfangswert oder der Endwert?
                                        Ich hab das noch bissel erweitert auf Minuten und Mitternacht, aber so richtig klar ist mir das alles nicht. Vor allem denke ich, daß der mir dann um Mitternacht den Tagesverbrauch ausgibt. Das ist aber nicht das was ich haben möchte. Ich brauche wie bei einem Verbrauchszähler den ganzen Tag über den den aktuellen Wert, nur daß der Zähler um Mitternacht wieder bei 0 beginnen soll... Mein erster Versuch mit dem Spoiler hier...

                                        [{"id":"3a481b4daeef078d","type":"inject","z":"76cd52c3e34e6dc1","name":"","props":[{"p":"payload"},{"p":"topic","vt":"str"}],"repeat":"","crontab":"","once":false,"onceDelay":0.1,"topic":"Shelly3EM#01","payload":"37.056","payloadType":"num","x":200,"y":1840,"wires":[["6cdb8f59eda7bded"]]},{"id":"6cdb8f59eda7bded","type":"change","z":"76cd52c3e34e6dc1","name":"","rules":[{"t":"set","p":"Shelly3EM#01.aktuell","pt":"flow","to":"payload","tot":"msg"}],"action":"","property":"","from":"","to":"","reg":false,"x":530,"y":1880,"wires":[["ba579aa08515a4c2"]]},{"id":"57adaa2ffed38c8b","type":"change","z":"76cd52c3e34e6dc1","name":"","rules":[{"t":"set","p":"aktuell","pt":"msg","to":"Shelly3EM#01.aktuell","tot":"flow"},{"t":"set","p":"payload","pt":"msg","to":"payload ? aktuell - payload : 0","tot":"jsonata"}],"action":"","property":"","from":"","to":"","reg":false,"x":306,"y":2012,"wires":[["ae9b10042be8b940","44678f3d1d770869"]]},{"id":"6d1ac2c12b999a5e","type":"cronplus","z":"76cd52c3e34e6dc1","name":"","outputField":"payload","timeZone":"","storeName":"","commandResponseMsgOutput":"output1","defaultLocation":"","defaultLocationType":"default","outputs":1,"options":[{"name":"minutly","topic":"minütlich","payloadType":"flow","payload":"Shelly3EM#01.minütlich","expressionType":"cron","expression":"0 * * * * *","location":"","offset":"0","solarType":"all","solarEvents":"sunrise,sunset"},{"name":"quartely","topic":"viertelstündlich","payloadType":"flow","payload":"Shelly3EM#01.viertelstündlich","expressionType":"cron","expression":"0 */15 * * * * *","location":"","offset":"0","solarType":"all","solarEvents":"sunrise,sunset"},{"name":"hourly","topic":"stündlich","payloadType":"flow","payload":"Shelly3EM#01.stündlich","expressionType":"cron","expression":"0 0 * * * * *","location":"","offset":"0","solarType":"all","solarEvents":"sunrise,sunset"},{"name":"Midnight","topic":"Mitternacht","payloadType":"flow","payload":"Shelly3EM#01.mitternacht","expressionType":"cron","expression":"0 0 0 * * *","location":"","offset":"0","solarType":"all","solarEvents":"sunrise,sunset"}],"x":116,"y":2012,"wires":[["6a9f0c984ef45955","57adaa2ffed38c8b"]]},{"id":"6a9f0c984ef45955","type":"debug","z":"76cd52c3e34e6dc1","name":"trigger","active":true,"tosidebar":true,"console":true,"tostatus":true,"complete":"true","targetType":"full","statusVal":"payload","statusType":"auto","x":320,"y":2100,"wires":[]},{"id":"ae9b10042be8b940","type":"switch","z":"76cd52c3e34e6dc1","name":"","property":"topic","propertyType":"msg","rules":[{"t":"eq","v":"minütlich","vt":"str"},{"t":"eq","v":"viertelstündlich","vt":"str"},{"t":"eq","v":"stündlich","vt":"str"},{"t":"eq","v":"Mitternacht","vt":"str"}],"checkall":"true","repair":false,"outputs":4,"x":586,"y":2012,"wires":[["c1f2e69416cc6ecc"],["107d399886391267"],["4e998ae87fb1b1c4"],["f288cfe26574c280"]]},{"id":"107d399886391267","type":"change","z":"76cd52c3e34e6dc1","name":"","rules":[{"t":"set","p":"Shelly3EM#01.viertelstündlich","pt":"flow","to":"Shelly3EM#01.aktuell","tot":"flow"}],"action":"","property":"","from":"","to":"","reg":false,"x":840,"y":2000,"wires":[["8d4c322a61fcd044"]]},{"id":"44678f3d1d770869","type":"debug","z":"76cd52c3e34e6dc1","name":"Verbrauch","active":true,"tosidebar":true,"console":true,"tostatus":true,"complete":"payload","targetType":"msg","statusVal":"payload","statusType":"auto","x":550,"y":2100,"wires":[]},{"id":"4e998ae87fb1b1c4","type":"change","z":"76cd52c3e34e6dc1","name":"","rules":[{"t":"set","p":"Shelly3EM#01.stündlich","pt":"flow","to":"Shelly3EM#01.aktuell","tot":"flow"}],"action":"","property":"","from":"","to":"","reg":false,"x":820,"y":2040,"wires":[["c72456c538daaaea"]]},{"id":"9c72b19be318fdfa","type":"link in","z":"76cd52c3e34e6dc1","name":"Shelly 3EM #01 Total Energy","links":["09af2ae564c66baf"],"x":200,"y":1880,"wires":[["6cdb8f59eda7bded"]],"l":true},{"id":"ba579aa08515a4c2","type":"debug","z":"76cd52c3e34e6dc1","name":"debug 23","active":true,"tosidebar":true,"console":true,"tostatus":true,"complete":"payload","targetType":"msg","statusVal":"payload","statusType":"auto","x":770,"y":1880,"wires":[]},{"id":"fec39c74ddd83bfd","type":"debug","z":"76cd52c3e34e6dc1","name":"debug 25","active":true,"tosidebar":true,"console":true,"tostatus":true,"complete":"payload","targetType":"msg","statusVal":"payload","statusType":"auto","x":1110,"y":1880,"wires":[]},{"id":"c1f2e69416cc6ecc","type":"change","z":"76cd52c3e34e6dc1","name":"","rules":[{"t":"set","p":"Shelly3EM#01.minütlich","pt":"flow","to":"Shelly3EM#01.aktuell","tot":"flow"}],"action":"","property":"","from":"","to":"","reg":false,"x":820,"y":1960,"wires":[["fec39c74ddd83bfd"]]},{"id":"8d4c322a61fcd044","type":"debug","z":"76cd52c3e34e6dc1","name":"debug 26","active":true,"tosidebar":true,"console":true,"tostatus":true,"complete":"payload","targetType":"msg","statusVal":"payload","statusType":"auto","x":1110,"y":1940,"wires":[]},{"id":"c72456c538daaaea","type":"debug","z":"76cd52c3e34e6dc1","name":"debug 27","active":true,"tosidebar":true,"console":true,"tostatus":true,"complete":"payload","targetType":"msg","statusVal":"payload","statusType":"auto","x":1110,"y":2000,"wires":[]},{"id":"d39393ea29c380db","type":"inject","z":"76cd52c3e34e6dc1","name":"","props":[{"p":"payload"},{"p":"topic","vt":"str"}],"repeat":"","crontab":"","once":false,"onceDelay":0.1,"topic":"Shelly3EM#01","payload":"0","payloadType":"num","x":180,"y":1680,"wires":[["6cdb8f59eda7bded"]]},{"id":"426bbd93b7619a53","type":"inject","z":"76cd52c3e34e6dc1","name":"","props":[{"p":"payload"},{"p":"topic","vt":"str"}],"repeat":"","crontab":"","once":false,"onceDelay":0.1,"topic":"Shelly3EM#01","payload":"8","payloadType":"num","x":180,"y":1800,"wires":[["6cdb8f59eda7bded"]]},{"id":"8e7c92ac4cfa6b68","type":"inject","z":"76cd52c3e34e6dc1","name":"","props":[{"p":"payload"},{"p":"topic","vt":"str"}],"repeat":"","crontab":"","once":false,"onceDelay":0.1,"topic":"Shelly3EM#01","payload":"2","payloadType":"num","x":180,"y":1720,"wires":[["6cdb8f59eda7bded"]]},{"id":"5f4ea30e341e5a43","type":"inject","z":"76cd52c3e34e6dc1","name":"","props":[{"p":"payload"},{"p":"topic","vt":"str"}],"repeat":"","crontab":"","once":false,"onceDelay":0.1,"topic":"Shelly3EM#01","payload":"5","payloadType":"num","x":180,"y":1760,"wires":[["6cdb8f59eda7bded"]]},{"id":"f288cfe26574c280","type":"change","z":"76cd52c3e34e6dc1","name":"","rules":[{"t":"set","p":"Shelly3EM#01.Mitternacht","pt":"flow","to":"Shelly3EM#01.aktuell","tot":"flow"}],"action":"","property":"","from":"","to":"","reg":false,"x":830,"y":2080,"wires":[["7b678790bb2bb1bc","527d74db9188a40c"]]},{"id":"7b678790bb2bb1bc","type":"debug","z":"76cd52c3e34e6dc1","name":"debug 28","active":true,"tosidebar":true,"console":true,"tostatus":true,"complete":"payload","targetType":"msg","statusVal":"payload","statusType":"auto","x":1110,"y":2060,"wires":[]},{"id":"44d53d8ba7feb2a4","type":"ui_artlessgauge","z":"76cd52c3e34e6dc1","group":"95fef75fbb31f51e","order":16,"width":0,"height":0,"name":"PV Yield","icon":"fa-area-chart","label":"Solar Ertrag aktueller Tag","unit":"kWh","layout":"linear","decimals":"1","differential":false,"minmax":false,"colorTrack":"#555555","style":"","colorFromTheme":true,"property":"payload","secondary":"secondary","inline":true,"animate":true,"sectors":[{"val":0,"col":"#ffff00","t":"min","dot":0},{"val":100,"col":"#ffff00","t":"max","dot":0}],"lineWidth":"7","bgcolorFromTheme":true,"diffCenter":"","x":1320,"y":2100,"wires":[]},{"id":"527d74db9188a40c","type":"change","z":"76cd52c3e34e6dc1","name":"","rules":[{"t":"set","p":"payload","pt":"msg","to":"Shelly3EM#01.Mitternacht","tot":"flow"}],"action":"","property":"","from":"","to":"","reg":false,"x":1130,"y":2100,"wires":[["44d53d8ba7feb2a4"]]},{"id":"95fef75fbb31f51e","type":"ui_group","name":"mitte","tab":"2dbf5f84d75bd5b7","order":2,"disp":false,"width":8,"collapse":false,"className":""},{"id":"2dbf5f84d75bd5b7","type":"ui_tab","name":"ATB18 Dashboard","icon":"fa-flash","order":1,"disabled":false,"hidden":false}]
                                        

                                        AsgothianA Offline
                                        AsgothianA Offline
                                        Asgothian
                                        Developer
                                        schrieb am zuletzt editiert von
                                        #49

                                        @bynight pack mal den Text im Spoiler noch in code tags </>, dann kann den vielleicht sogar jemand lesen.

                                        A.

                                        ioBroker auf RPi4 - Hardware soweit wie möglich via Zigbee.
                                        "Shit don't work" ist keine Fehlermeldung, sondern ein Fluch.

                                        B 1 Antwort Letzte Antwort
                                        1
                                        • B bynight

                                          Puh... fällt mir echt schwer das zu verstehen... wieso liefert der cron-plus den "Shelly3EM#01.aktuell" Wert? Wo kriegt der den her?
                                          Was wird in Shelly3EM#01.aktuell gespeichert? Der Anfangswert oder der Endwert?
                                          Ich hab das noch bissel erweitert auf Minuten und Mitternacht, aber so richtig klar ist mir das alles nicht. Vor allem denke ich, daß der mir dann um Mitternacht den Tagesverbrauch ausgibt. Das ist aber nicht das was ich haben möchte. Ich brauche wie bei einem Verbrauchszähler den ganzen Tag über den den aktuellen Wert, nur daß der Zähler um Mitternacht wieder bei 0 beginnen soll... Mein erster Versuch mit dem Spoiler hier...

                                          [{"id":"3a481b4daeef078d","type":"inject","z":"76cd52c3e34e6dc1","name":"","props":[{"p":"payload"},{"p":"topic","vt":"str"}],"repeat":"","crontab":"","once":false,"onceDelay":0.1,"topic":"Shelly3EM#01","payload":"37.056","payloadType":"num","x":200,"y":1840,"wires":[["6cdb8f59eda7bded"]]},{"id":"6cdb8f59eda7bded","type":"change","z":"76cd52c3e34e6dc1","name":"","rules":[{"t":"set","p":"Shelly3EM#01.aktuell","pt":"flow","to":"payload","tot":"msg"}],"action":"","property":"","from":"","to":"","reg":false,"x":530,"y":1880,"wires":[["ba579aa08515a4c2"]]},{"id":"57adaa2ffed38c8b","type":"change","z":"76cd52c3e34e6dc1","name":"","rules":[{"t":"set","p":"aktuell","pt":"msg","to":"Shelly3EM#01.aktuell","tot":"flow"},{"t":"set","p":"payload","pt":"msg","to":"payload ? aktuell - payload : 0","tot":"jsonata"}],"action":"","property":"","from":"","to":"","reg":false,"x":306,"y":2012,"wires":[["ae9b10042be8b940","44678f3d1d770869"]]},{"id":"6d1ac2c12b999a5e","type":"cronplus","z":"76cd52c3e34e6dc1","name":"","outputField":"payload","timeZone":"","storeName":"","commandResponseMsgOutput":"output1","defaultLocation":"","defaultLocationType":"default","outputs":1,"options":[{"name":"minutly","topic":"minütlich","payloadType":"flow","payload":"Shelly3EM#01.minütlich","expressionType":"cron","expression":"0 * * * * *","location":"","offset":"0","solarType":"all","solarEvents":"sunrise,sunset"},{"name":"quartely","topic":"viertelstündlich","payloadType":"flow","payload":"Shelly3EM#01.viertelstündlich","expressionType":"cron","expression":"0 */15 * * * * *","location":"","offset":"0","solarType":"all","solarEvents":"sunrise,sunset"},{"name":"hourly","topic":"stündlich","payloadType":"flow","payload":"Shelly3EM#01.stündlich","expressionType":"cron","expression":"0 0 * * * * *","location":"","offset":"0","solarType":"all","solarEvents":"sunrise,sunset"},{"name":"Midnight","topic":"Mitternacht","payloadType":"flow","payload":"Shelly3EM#01.mitternacht","expressionType":"cron","expression":"0 0 0 * * *","location":"","offset":"0","solarType":"all","solarEvents":"sunrise,sunset"}],"x":116,"y":2012,"wires":[["6a9f0c984ef45955","57adaa2ffed38c8b"]]},{"id":"6a9f0c984ef45955","type":"debug","z":"76cd52c3e34e6dc1","name":"trigger","active":true,"tosidebar":true,"console":true,"tostatus":true,"complete":"true","targetType":"full","statusVal":"payload","statusType":"auto","x":320,"y":2100,"wires":[]},{"id":"ae9b10042be8b940","type":"switch","z":"76cd52c3e34e6dc1","name":"","property":"topic","propertyType":"msg","rules":[{"t":"eq","v":"minütlich","vt":"str"},{"t":"eq","v":"viertelstündlich","vt":"str"},{"t":"eq","v":"stündlich","vt":"str"},{"t":"eq","v":"Mitternacht","vt":"str"}],"checkall":"true","repair":false,"outputs":4,"x":586,"y":2012,"wires":[["c1f2e69416cc6ecc"],["107d399886391267"],["4e998ae87fb1b1c4"],["f288cfe26574c280"]]},{"id":"107d399886391267","type":"change","z":"76cd52c3e34e6dc1","name":"","rules":[{"t":"set","p":"Shelly3EM#01.viertelstündlich","pt":"flow","to":"Shelly3EM#01.aktuell","tot":"flow"}],"action":"","property":"","from":"","to":"","reg":false,"x":840,"y":2000,"wires":[["8d4c322a61fcd044"]]},{"id":"44678f3d1d770869","type":"debug","z":"76cd52c3e34e6dc1","name":"Verbrauch","active":true,"tosidebar":true,"console":true,"tostatus":true,"complete":"payload","targetType":"msg","statusVal":"payload","statusType":"auto","x":550,"y":2100,"wires":[]},{"id":"4e998ae87fb1b1c4","type":"change","z":"76cd52c3e34e6dc1","name":"","rules":[{"t":"set","p":"Shelly3EM#01.stündlich","pt":"flow","to":"Shelly3EM#01.aktuell","tot":"flow"}],"action":"","property":"","from":"","to":"","reg":false,"x":820,"y":2040,"wires":[["c72456c538daaaea"]]},{"id":"9c72b19be318fdfa","type":"link in","z":"76cd52c3e34e6dc1","name":"Shelly 3EM #01 Total Energy","links":["09af2ae564c66baf"],"x":200,"y":1880,"wires":[["6cdb8f59eda7bded"]],"l":true},{"id":"ba579aa08515a4c2","type":"debug","z":"76cd52c3e34e6dc1","name":"debug 23","active":true,"tosidebar":true,"console":true,"tostatus":true,"complete":"payload","targetType":"msg","statusVal":"payload","statusType":"auto","x":770,"y":1880,"wires":[]},{"id":"fec39c74ddd83bfd","type":"debug","z":"76cd52c3e34e6dc1","name":"debug 25","active":true,"tosidebar":true,"console":true,"tostatus":true,"complete":"payload","targetType":"msg","statusVal":"payload","statusType":"auto","x":1110,"y":1880,"wires":[]},{"id":"c1f2e69416cc6ecc","type":"change","z":"76cd52c3e34e6dc1","name":"","rules":[{"t":"set","p":"Shelly3EM#01.minütlich","pt":"flow","to":"Shelly3EM#01.aktuell","tot":"flow"}],"action":"","property":"","from":"","to":"","reg":false,"x":820,"y":1960,"wires":[["fec39c74ddd83bfd"]]},{"id":"8d4c322a61fcd044","type":"debug","z":"76cd52c3e34e6dc1","name":"debug 26","active":true,"tosidebar":true,"console":true,"tostatus":true,"complete":"payload","targetType":"msg","statusVal":"payload","statusType":"auto","x":1110,"y":1940,"wires":[]},{"id":"c72456c538daaaea","type":"debug","z":"76cd52c3e34e6dc1","name":"debug 27","active":true,"tosidebar":true,"console":true,"tostatus":true,"complete":"payload","targetType":"msg","statusVal":"payload","statusType":"auto","x":1110,"y":2000,"wires":[]},{"id":"d39393ea29c380db","type":"inject","z":"76cd52c3e34e6dc1","name":"","props":[{"p":"payload"},{"p":"topic","vt":"str"}],"repeat":"","crontab":"","once":false,"onceDelay":0.1,"topic":"Shelly3EM#01","payload":"0","payloadType":"num","x":180,"y":1680,"wires":[["6cdb8f59eda7bded"]]},{"id":"426bbd93b7619a53","type":"inject","z":"76cd52c3e34e6dc1","name":"","props":[{"p":"payload"},{"p":"topic","vt":"str"}],"repeat":"","crontab":"","once":false,"onceDelay":0.1,"topic":"Shelly3EM#01","payload":"8","payloadType":"num","x":180,"y":1800,"wires":[["6cdb8f59eda7bded"]]},{"id":"8e7c92ac4cfa6b68","type":"inject","z":"76cd52c3e34e6dc1","name":"","props":[{"p":"payload"},{"p":"topic","vt":"str"}],"repeat":"","crontab":"","once":false,"onceDelay":0.1,"topic":"Shelly3EM#01","payload":"2","payloadType":"num","x":180,"y":1720,"wires":[["6cdb8f59eda7bded"]]},{"id":"5f4ea30e341e5a43","type":"inject","z":"76cd52c3e34e6dc1","name":"","props":[{"p":"payload"},{"p":"topic","vt":"str"}],"repeat":"","crontab":"","once":false,"onceDelay":0.1,"topic":"Shelly3EM#01","payload":"5","payloadType":"num","x":180,"y":1760,"wires":[["6cdb8f59eda7bded"]]},{"id":"f288cfe26574c280","type":"change","z":"76cd52c3e34e6dc1","name":"","rules":[{"t":"set","p":"Shelly3EM#01.Mitternacht","pt":"flow","to":"Shelly3EM#01.aktuell","tot":"flow"}],"action":"","property":"","from":"","to":"","reg":false,"x":830,"y":2080,"wires":[["7b678790bb2bb1bc","527d74db9188a40c"]]},{"id":"7b678790bb2bb1bc","type":"debug","z":"76cd52c3e34e6dc1","name":"debug 28","active":true,"tosidebar":true,"console":true,"tostatus":true,"complete":"payload","targetType":"msg","statusVal":"payload","statusType":"auto","x":1110,"y":2060,"wires":[]},{"id":"44d53d8ba7feb2a4","type":"ui_artlessgauge","z":"76cd52c3e34e6dc1","group":"95fef75fbb31f51e","order":16,"width":0,"height":0,"name":"PV Yield","icon":"fa-area-chart","label":"Solar Ertrag aktueller Tag","unit":"kWh","layout":"linear","decimals":"1","differential":false,"minmax":false,"colorTrack":"#555555","style":"","colorFromTheme":true,"property":"payload","secondary":"secondary","inline":true,"animate":true,"sectors":[{"val":0,"col":"#ffff00","t":"min","dot":0},{"val":100,"col":"#ffff00","t":"max","dot":0}],"lineWidth":"7","bgcolorFromTheme":true,"diffCenter":"","x":1320,"y":2100,"wires":[]},{"id":"527d74db9188a40c","type":"change","z":"76cd52c3e34e6dc1","name":"","rules":[{"t":"set","p":"payload","pt":"msg","to":"Shelly3EM#01.Mitternacht","tot":"flow"}],"action":"","property":"","from":"","to":"","reg":false,"x":1130,"y":2100,"wires":[["44d53d8ba7feb2a4"]]},{"id":"95fef75fbb31f51e","type":"ui_group","name":"mitte","tab":"2dbf5f84d75bd5b7","order":2,"disp":false,"width":8,"collapse":false,"className":""},{"id":"2dbf5f84d75bd5b7","type":"ui_tab","name":"ATB18 Dashboard","icon":"fa-flash","order":1,"disabled":false,"hidden":false}]
                                          

                                          mickymM Offline
                                          mickymM Offline
                                          mickym
                                          Most Active
                                          schrieb am zuletzt editiert von mickym
                                          #50

                                          @bynight sagte in goto in node red:

                                          Puh... fällt mir echt schwer das zu verstehen... wieso liefert der cron-plus den "Shelly3EM#01.aktuell" Wert? Wo kriegt der den her?

                                          Ja Dir fehlen halt noch eine Menge Grundlagen.

                                          Was wird in Shelly3EM#01.aktuell gespeichert? Der Anfangswert oder der Endwert?

                                          Da speicherst Du den Wert, den der Shelly gerade liefert. Die Inject Nodes dienen nur zum Testen. Du speicherst im Kontext, den aktuellen Zählerstand aus dem Shelly, den Dir diese Node liefert:
                                          ad61490a-492d-49a2-af47-a69de6ba7610-image.png

                                          Die Inject Nodes brauchst Du dann nicht mehr:
                                          ce8a0b91-83d8-4693-8274-3457c7d8066c-image.png

                                          Ich hab das noch bissel erweitert auf Minuten und Mitternacht, aber so richtig klar ist mir das alles nicht.
                                          Vor allem denke ich, daß der mir dann um Mitternacht den Tagesverbrauch ausgibt. ^

                                          Ja es gibt Dir den Tagesverbrauch aus. Aber den aktuellen Verbrauch seit Tagesanbruch kannst Du ebenfalls so leicht berechnen. Siehe Erklärungen zum Schluss und wir haben diese Berechnung an den Minutenverbrauch gehängt.

                                          Was wird den gemacht:

                                          Ob minütlich Sinn macht bezweifle ich, weil ich nicht wei? ob der Shelly sooft liefert.
                                          Jedenfalls steht dann in Deinem Flowkontext immer der aktuelle Zählerstand, den Dir die Shelly Node ja über den oberen Teil liefert.

                                          In der cronplus Node wird folgendes gemacht:

                                          e611d5f5-2881-46de-a82e-b40c1026a6e8-image.png

                                          Zum jeweiligen Event wird die payload auf die Flowvariable gesetzt, die dem letzten aktuellen Zählerstand entsprach, also VOR einer Minute, VOR einer Stunde oder beim letzten Tageswechsel.
                                          In der nächsten Change Node wird nun der aktuelle Zählerstand geholt, der ja im Flowkontext steht und permanent von der Shelly Node gespeist wird.

                                          6238829d-53d6-4cd1-8393-63399d363b1a-image.png

                                          Und in die Eigenschaft msg.aktuell geschickt. Existiert die payload nicht, weil es diese Kontextvariable noch nicht gab, dann wird der Verbrauch auf 0 gesetzt.

                                          Über das topic wissen wir, in dem Nachrichtenobjekt, welcher Scheduler aktiv war. Über die switch Node schicken wir also die Nachricht an die entsprechende ChangeNode.

                                          Dort machen wir nichts weiter, als das wir den aktuellen Zählerstand nun dem jeweiligen Schedulerereignis zuordnen:

                                          1428ca95-614d-4cfb-a6f6-b0d4516672e1-image.png

                                          So baut sich nach und nach im Objekt die letzten Zählerstände des jeweiligen Objektes auf. Ich hätte es lieber daily genannt.

                                          Sprich aber Du hast Recht in dem Objekt hast Du immer den letzten Zählerstand um Mitternacht.

                                          Das ist aber nicht das was ich haben möchte. Ich brauche wie bei einem Verbrauchszähler den ganzen Tag über den den aktuellen Wert, nur daß der Zähler um Mitternacht wieder bei 0 beginnen soll..

                                          Das bekommst Du doch quasi als Abfallproodukt. Du kannst ja zum Beispiel jede Minute (und im Objekt steht ja immer der Zähler um Mitternacht vom aktuellen Zähler abziehen).

                                          Sprich - wenn du jede Minute den aktuellen Verbrauch seit Tagesanfang haben willst, dann hängst Du deine Berechnung an den Minutenast an und nicht um Mitternacht.
                                          b9709701-1167-4656-8a54-031c39a78cb2-image.png

                                          Diese Node schiebst Du dann nach oben:

                                          b08ed6f1-06d3-49c2-97c0-da7f0b872443-image.png

                                          dann bekommst Du minütlich den aktuellen Tagesverbrauch.

                                          d47f75cb-b99c-4caf-be88-a7c84263e5fd-image.png

                                          In dieser ChangeNode holst Du Dir in die payload einfach den Zählerstand um Mitternacht und ziehst diesen vom aktuellen Zählerstand ab, der ja noch in dem Nachrichtenobjekt vorhanden ist.

                                          74670c9d-2e10-4ae1-a983-dd5c1a077c63-image.png

                                          Also hier einfach die geänderten Nodes zum Import:

                                          [{"id":"527d74db9188a40c","type":"change","z":"7e6af0015415146d","name":"","rules":[{"t":"set","p":"payload","pt":"msg","to":"Shelly3EM#01.Mitternacht","tot":"flow"},{"t":"set","p":"payload","pt":"msg","to":"aktuell - payload","tot":"jsonata"}],"action":"","property":"","from":"","to":"","reg":false,"x":1150,"y":5560,"wires":[["0bf70c1cba9cc742"]]},{"id":"0bf70c1cba9cc742","type":"debug","z":"7e6af0015415146d","name":"Tagesverbrauch seit Mitternacht","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"payload","targetType":"msg","statusVal":"","statusType":"auto","x":1450,"y":5560,"wires":[]},{"id":"fec39c74ddd83bfd","type":"debug","z":"7e6af0015415146d","name":"debug 25","active":true,"tosidebar":true,"console":true,"tostatus":true,"complete":"true","targetType":"full","statusVal":"payload","statusType":"auto","x":1130,"y":5640,"wires":[]}]
                                          

                                          Wenn Du aller Scheduler pausieren möchtest, kannst Du Kommandos in die Scheduler Node geben:

                                          4a7b543d-de51-4b04-8113-3a7574c417cf-image.png

                                          Mit Pause - werden alle Trigger pausiert, mit start gestartet.

                                          [{"id":"7cebaf563c261bb2","type":"inject","z":"7e6af0015415146d","name":"","props":[{"p":"topic","vt":"str"}],"repeat":"","crontab":"","once":false,"onceDelay":0.1,"topic":"start-all","x":90,"y":5860,"wires":[["6d1ac2c12b999a5e"]]},{"id":"e495acef194b6c71","type":"inject","z":"7e6af0015415146d","name":"","props":[{"p":"topic","vt":"str"}],"repeat":"","crontab":"","once":false,"onceDelay":0.1,"topic":"pause-all","x":100,"y":5700,"wires":[["6d1ac2c12b999a5e"]]}]
                                          

                                          Wenn Du aber nur minütlich den Tagesverbrauch haben willst, kannst auch nur den daily und den minütlichen Scheduler verwenden.

                                          Jeder Flow bzw. jedes Script, das ich hier poste implementiert jeder auf eigene Gefahr. Flows und Scripts können Fehler aufweisen und weder der Seitenbetreiber noch ich persönlich können hierfür haftbar gemacht werden. Das gleiche gilt für Empfehlungen aller Art.

                                          B 1 Antwort Letzte Antwort
                                          0
                                          Antworten
                                          • In einem neuen Thema antworten
                                          Anmelden zum Antworten
                                          • Älteste zuerst
                                          • Neuste zuerst
                                          • Meiste Stimmen


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          620

                                          Online

                                          32.5k

                                          Benutzer

                                          81.7k

                                          Themen

                                          1.3m

                                          Beiträge
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Anmelden

                                          • Du hast noch kein Konto? Registrieren

                                          • Anmelden oder registrieren, um zu suchen
                                          • Erster Beitrag
                                            Letzter Beitrag
                                          0
                                          • Home
                                          • Aktuell
                                          • Tags
                                          • Ungelesen 0
                                          • Kategorien
                                          • Unreplied
                                          • Beliebt
                                          • GitHub
                                          • Docu
                                          • Hilfe