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

  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. Node-Red
  5. [HowTo] Huawei SUN2000 WR Modbus mit node-red (read + write)

NEWS

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

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    13
    1
    2.0k

  • Neues Video "KI im Smart Home" - ioBroker plus n8n
    BluefoxB
    Bluefox
    15
    1
    2.4k

[HowTo] Huawei SUN2000 WR Modbus mit node-red (read + write)

Geplant Angeheftet Gesperrt Verschoben Node-Red
574 Beiträge 110 Kommentatoren 223.6k Aufrufe 108 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.
  • H higginsd

    Vielen, vielen Dank für diesen Thread und den NodeRed Flow! Endlich bekomme ich Zugriff auf die aktuellen Daten meines sch... Huawei Sun Inverters!

    Da habe ich lange nach gesucht und rumprobiert. Der Modbus-TCP Adapter von ioBroker geht nicht. Die Verbindung vom SDongle zur Fusionsolar-Webseite bricht bei mir mehrmals täglich für 1-3 Stunden weg. Ausserdem erlaubt die API zu Fusionsolar nur alle paar Minuten ein Abholen der Daten, sonst macht Fusionsolar zu, weil man zu oft pollt.

    Jetzt habe ich eigentlich nur noch ein Problem: wie interpretiere ich die Werte? Ich habe bisher keine vernünftige Erklärung für so Begriffe wie "Inverter.Active_Power", "Inverter.Input_Power", "Meter.Active_Power", "Battery_Power" gefunden. Und nicht jeder ist ein Solaranlagen-Profi, denen diese Dinge wahrscheinlich geläufig sind.

    Ein paar Dinge kann ich mir anhand der Daten und dem Vergleich mit dem Überblick der Energieflüsse in der Fusionsolar-App ungefähr zusammenreimen. Aber ich wüsste es dennoch gerne einmal genau.

    Ich liste mal auf, was ich mir so denke:

    • Meter.Active_Power: Bezug oder Einspeisung vom/zum Versorger in Watt. Positive Werte = Bezug, negative Werte = Einspeisung

    • Inverter.Active_Power: aktuelle Einspeisung des Inverters in das Hausnetz (also die aktuelle "Leistung" des Hauses) in Watt, Addition aus PV Erzeugung und ggf. Batterie-Entladung (auch Meter.Active_Power positive Werte?)

    • Inverter.Input_Power: aktuelle Leistung vom "Dach" in Watt

    • Battery_Power: aktuelle Leistung an der Batterie in Watt, negative Zahlen = Batterie wird entladen, positive Zahlen = Batterie wird geladen

    • Battery_SOC: ist klar, der Ladezustand in %

    • PV1_Voltage und PV1_Current: aktuelle Spannung und Strom von String 1, U * I = P, somit ergibt sich daraus, wieviel Leistung String 1 aktuell liefert in Watt

    • PV2_... wie PV1, nur für String 2

    Gerne Anmerkungen und Hilfe/Erläuterungen und Korrekturen! Und was es sonst noch für interessante Modbus-Register im Sun200 gibt.

    Viele Grüße
    Dirk

    Z Offline
    Z Offline
    zizu29
    schrieb am zuletzt editiert von
    #250

    @higginsd Da hänge ich mich mal mit dran, auch der Übersetzter liefert mir nicht wirklich Klarheit über die Werte

    1 Antwort Letzte Antwort
    0
    • B badsnoopy667

      @chris-m said in [HowTo] Huawei SUN2000 WR Modbus mit node-red (read + write):

      @all gibt es irgend ein Register was mir diesen Wert zurück liefert?

      Nein, das Register gibt es nicht. Aber Du kannst den Eigenverbrauch einfach berechnen indem Du "Active Power Inverter" Minus "Active Power Meter" rechnest. Also Eigenverbrauch = Erzeugung - Einspeisung. Bei Netzbezug ist die Einspeisung negativ, daher gilt dieselbe Formel auch für Netzbezug.

      gesamtverbrauch_1.png

      Das geht aber nicht so ohne weiteres, da die beiden Werte vom Wechselrichter/Dongle nicht genau gleichzeitig gesendet werden. Daher gibt es zwischen den Werten einen Zeitverzug von 1-2 Sekunden. Das macht dummerweise einen riesen Unterschied für den Fall, das sich die Sonneneinstrahlung stark ändert.
      Lösung: Man summiert die Erzeugung und die Einspeisung ein paar Sekunden lang auf (z.B. 20 Sekunden lang) und bildet dann den Mittelwert. Das geht mit Listen. Die beiden Mittelwerte kann man dann voneinander abziehen.
      Ich hänge mal meinen Blockly-Export dafür hier rein, aber Achtung, das ist ziemlich unübersichtlich weil es "gewachsen" ist. Heute würde ich das bestimmt sauberer aufschreiben.

      Blockly_Huawei_Eigenverbrauch_etc.txt

      Z Offline
      Z Offline
      zizu29
      schrieb am zuletzt editiert von
      #251

      @badsnoopy667 Danke das du dein Blockly zur Verfügung stellst, Welche datenpunkte hast du zusätzlich erstellt, hast du da evtl. eine Liste oder screenshot?

      Und Danke für die Unterstützung

      B 1 Antwort Letzte Antwort
      0
      • Z zizu29

        @badsnoopy667 Danke das du dein Blockly zur Verfügung stellst, Welche datenpunkte hast du zusätzlich erstellt, hast du da evtl. eine Liste oder screenshot?

        Und Danke für die Unterstützung

        B Online
        B Online
        badsnoopy667
        schrieb am zuletzt editiert von
        #252

        @zizu29
        Ich bin gerade im Urlaub. Ich suche das nächste Woche mal raus. Aber die Beschreibung der Datenpunkte oben passt schon ganz gut!

        1 Antwort Letzte Antwort
        0
        • H Offline
          H Offline
          Hansi1989
          schrieb am zuletzt editiert von
          #253

          Hallo ich habe den Node Red Adapter und das Flow wie die npms installiert laut dieser Anleitung aber leider bekomm ich einen Fehler und ich bin Neuling beim Node Red. Die Datenpunkte kommen alle nur dieser Error macht mir sorgen weil der Iobroker sich über die Nacht neu installiert alles von neu anfangt. Ich danke für jede Unterstützung.

          2023-04-13 20:16:45.802 - error: node-red.0 (16278) 13 Apr 20:16:45 - [error] [modbus-getter:32016] Error: Modbus exception 6: Slave device busy (retry request again later)

          Aber eins muss ich noch sagen tolle Arbeit wird da geleistet!

          1 Antwort Letzte Antwort
          0
          • F Offline
            F Offline
            firebowl
            schrieb am zuletzt editiert von
            #254

            Bei mir läuft das ganze seit einigen Wochen absolut Top und viel besser als solaranzeige.
            Ich hab nur ein kleines Problem im ioBroker Log:

            4235b214-a7f7-47ea-ae05-2e2141d6353e-image.png

            Das hatte ich auch bei anderen Objekten die geschrieben wurde aber da konnte ich es anpassen in dem ich im Flow oder im ioBroker Objekt den Typ des Objekts angepasst habe. Aber bei dem Objekt bekomm ich es nicht weg. Hat jemand ne Idee?

            AtifanA mickymM 2 Antworten Letzte Antwort
            0
            • F firebowl

              Bei mir läuft das ganze seit einigen Wochen absolut Top und viel besser als solaranzeige.
              Ich hab nur ein kleines Problem im ioBroker Log:

              4235b214-a7f7-47ea-ae05-2e2141d6353e-image.png

              Das hatte ich auch bei anderen Objekten die geschrieben wurde aber da konnte ich es anpassen in dem ich im Flow oder im ioBroker Objekt den Typ des Objekts angepasst habe. Aber bei dem Objekt bekomm ich es nicht weg. Hat jemand ne Idee?

              AtifanA Offline
              AtifanA Offline
              Atifan
              schrieb am zuletzt editiert von Atifan
              #255

              @firebowl im IoBroker die Datentypen in den Datenpunkten ändern von number auf object.

              F 1 Antwort Letzte Antwort
              0
              • AtifanA Atifan

                @firebowl im IoBroker die Datentypen in den Datenpunkten ändern von number auf object.

                F Offline
                F Offline
                firebowl
                schrieb am zuletzt editiert von
                #256

                @atifan Hab ja geschrieben, dass ich das schon gefühlt x mal gemacht habe und es bei den anderen Datenpunkten auch funktioniert hat. Hab's jetzt noch mal geändert. ;)

                F 1 Antwort Letzte Antwort
                0
                • F firebowl

                  @atifan Hab ja geschrieben, dass ich das schon gefühlt x mal gemacht habe und es bei den anderen Datenpunkten auch funktioniert hat. Hab's jetzt noch mal geändert. ;)

                  F Offline
                  F Offline
                  firebowl
                  schrieb am zuletzt editiert von
                  #257

                  @firebowl funzt nicht, jetzt kommt die Meldung:

                  ff1e0824-ebcf-41d8-bb08-e92c46dcaaab-image.png

                  1 Antwort Letzte Antwort
                  0
                  • F firebowl

                    Bei mir läuft das ganze seit einigen Wochen absolut Top und viel besser als solaranzeige.
                    Ich hab nur ein kleines Problem im ioBroker Log:

                    4235b214-a7f7-47ea-ae05-2e2141d6353e-image.png

                    Das hatte ich auch bei anderen Objekten die geschrieben wurde aber da konnte ich es anpassen in dem ich im Flow oder im ioBroker Objekt den Typ des Objekts angepasst habe. Aber bei dem Objekt bekomm ich es nicht weg. Hat jemand ne Idee?

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

                    @firebowl Wenn Du meinen Flow nicht nimmst - mache eine JSON Node vor die iobroker-Out Node - die stringifiziert Dein Objekt wieder zu einem String.

                    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.

                    F Jens16J 2 Antworten Letzte Antwort
                    0
                    • mickymM mickym

                      @firebowl Wenn Du meinen Flow nicht nimmst - mache eine JSON Node vor die iobroker-Out Node - die stringifiziert Dein Objekt wieder zu einem String.

                      F Offline
                      F Offline
                      firebowl
                      schrieb am zuletzt editiert von
                      #259

                      @mickym Ich benutze den Flow aus dem ersten Post hier, ist das deiner?
                      Ansonsten hab ich leider absolut keine Ahnung von node-red, benutze ich nur für den WR und sonst für nix..:sweat_smile:

                      mickymM 1 Antwort Letzte Antwort
                      0
                      • F firebowl

                        @mickym Ich benutze den Flow aus dem ersten Post hier, ist das deiner?
                        Ansonsten hab ich leider absolut keine Ahnung von node-red, benutze ich nur für den WR und sonst für nix..:sweat_smile:

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

                        @firebowl sagte in [HowTo] Huawei SUN2000 WR Modbus mit node-red (read + write):

                        @mickym Ich benutze den Flow aus dem ersten Post hier, ist das deiner?
                        Ansonsten hab ich leider absolut keine Ahnung von node-red, benutze ich nur für den WR und sonst für nix..:sweat_smile:

                        Nein, ist nicht von mir. Aber du solltest doch die iobroker-out Node finden, die dir diesen Datenpunkt schreibt. Das ist so eine blaue Node auf der rechten Seite und das Topic zeigt auf den Datenpunkt. Und vor diese Node klemmst du eine JSON Node.

                        Ansonsten ist es natürlich schade, dass du dich nicht mit diesem tollen Tool beschäftigst. So mancher ehemalige Blockly Fan wird Dir das bestätigen. ;)

                        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.

                        F 1 Antwort Letzte Antwort
                        0
                        • mickymM mickym

                          @firebowl sagte in [HowTo] Huawei SUN2000 WR Modbus mit node-red (read + write):

                          @mickym Ich benutze den Flow aus dem ersten Post hier, ist das deiner?
                          Ansonsten hab ich leider absolut keine Ahnung von node-red, benutze ich nur für den WR und sonst für nix..:sweat_smile:

                          Nein, ist nicht von mir. Aber du solltest doch die iobroker-out Node finden, die dir diesen Datenpunkt schreibt. Das ist so eine blaue Node auf der rechten Seite und das Topic zeigt auf den Datenpunkt. Und vor diese Node klemmst du eine JSON Node.

                          Ansonsten ist es natürlich schade, dass du dich nicht mit diesem tollen Tool beschäftigst. So mancher ehemalige Blockly Fan wird Dir das bestätigen. ;)

                          F Offline
                          F Offline
                          firebowl
                          schrieb am zuletzt editiert von
                          #261

                          @mickym Glaub ich hab's:

                          725121b6-4ac4-4144-ad31-d9f5307aff05-image.png

                          Also noch sieht node-red einfach viel ui komplex für mich aus. ;)
                          Kann mir aber gut vorstellen, dass ich viele meine Blocklys darüber schöner oder besser abbilden könnte.

                          mickymM 1 Antwort Letzte Antwort
                          0
                          • F firebowl

                            @mickym Glaub ich hab's:

                            725121b6-4ac4-4144-ad31-d9f5307aff05-image.png

                            Also noch sieht node-red einfach viel ui komplex für mich aus. ;)
                            Kann mir aber gut vorstellen, dass ich viele meine Blocklys darüber schöner oder besser abbilden könnte.

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

                            @firebowl sagte in [HowTo] Huawei SUN2000 WR Modbus mit node-red (read + write):

                            @mickym Glaub ich hab's:

                            725121b6-4ac4-4144-ad31-d9f5307aff05-image.png

                            Also noch sieht node-red einfach viel ui komplex für mich aus. ;)
                            Kann mir aber gut vorstellen, dass ich viele meine Blocklys darüber schöner oder besser abbilden könnte.

                            Sehr gut - damit sollte es gehen - wenn nicht immer Objekte rauskommen (die JSON node konvertiert standardmässig in beide Richtungen) - dann kannst Du ihr auch sagen, die soll grundsätzlich nur Zeichenfolgen erzeugen:

                            2dd2cd3e-2acd-45e9-a4b7-5ee251860510-image.png

                            Wenn Du den Datenpunkt nun als Typ String definierst, dann solllten die Logeinträge weg sein. So wie es aussieht ist das aber nur eine Zahl in einem Array. Also

                            [41.35] - wenn das immer so ist dann ändere ggf. den buffer parser - wobei ich keine Ahnung habe was da rein kommt, sonst nimmst Du statt der JSON Node eine Change Node - dann musst du den Datenpunkt aber als Zahl definieren.

                            Dann machst Du aus dem Array eine normale Zahl:

                            e1fd3f84-70a9-48d1-81c6-dae8c94dc271-image.png

                            ggf. kannst Du auch in dem Buffer-Parser nachschauen, dass Du nicht versehentlich values als Array ausgeben lässt:

                            a2da45f8-14d3-4097-bda1-09456899f965-image.png

                            dann lieber auf key/value umstellen,dann brauchst Du gar keine Konvertierung.

                            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

                              @firebowl sagte in [HowTo] Huawei SUN2000 WR Modbus mit node-red (read + write):

                              @mickym Glaub ich hab's:

                              725121b6-4ac4-4144-ad31-d9f5307aff05-image.png

                              Also noch sieht node-red einfach viel ui komplex für mich aus. ;)
                              Kann mir aber gut vorstellen, dass ich viele meine Blocklys darüber schöner oder besser abbilden könnte.

                              Sehr gut - damit sollte es gehen - wenn nicht immer Objekte rauskommen (die JSON node konvertiert standardmässig in beide Richtungen) - dann kannst Du ihr auch sagen, die soll grundsätzlich nur Zeichenfolgen erzeugen:

                              2dd2cd3e-2acd-45e9-a4b7-5ee251860510-image.png

                              Wenn Du den Datenpunkt nun als Typ String definierst, dann solllten die Logeinträge weg sein. So wie es aussieht ist das aber nur eine Zahl in einem Array. Also

                              [41.35] - wenn das immer so ist dann ändere ggf. den buffer parser - wobei ich keine Ahnung habe was da rein kommt, sonst nimmst Du statt der JSON Node eine Change Node - dann musst du den Datenpunkt aber als Zahl definieren.

                              Dann machst Du aus dem Array eine normale Zahl:

                              e1fd3f84-70a9-48d1-81c6-dae8c94dc271-image.png

                              ggf. kannst Du auch in dem Buffer-Parser nachschauen, dass Du nicht versehentlich values als Array ausgeben lässt:

                              a2da45f8-14d3-4097-bda1-09456899f965-image.png

                              dann lieber auf key/value umstellen,dann brauchst Du gar keine Konvertierung.

                              B Online
                              B Online
                              badsnoopy667
                              schrieb am zuletzt editiert von badsnoopy667
                              #263

                              @mickym Du kannst mir bestimmt helfen:

                              Ich möchte gerne den Flow zu Datenabfrage kurzzeitig "anhalten" können. Hintergrund: Wenn ich den Befehl an den Wechselrichter sende, die Batterieentladung zu drosseln (beim Laden des eAutos), kommt dieser Befehl oft nur sehr verzögert durch weil die Kommunikation mit dem WR schon ausgelastet ist.
                              Halte ich den Datenabfrage Flow an, geht der Befehl sofort durch.

                              Meine Idee: Ich möchte hinter die "5 Sek. Intervall" - Node gerne eine Switch Node setzen, die prüft, ob ein ioBroker Datenpunkt, nennen wir ihn 0_userdata.0.Huawei.Battery.Abfrage_Sperre, auf false steht. Nur dann soll die Abfrage durchgeführt werden. Bei true soll einfach nichts passieren. Ich bin dafür leider zu doof. ;-)
                              Hast Du eine Idee, wie das am Besten geht? Danke schonmal!

                              Alternativ: Wenn es eine einfache Möglichkeit gibt, aus einem anderen Flow herraus einen Flow zu deaktivieren und nach z.B. 30 Sekunden wieder zu aktivieren, gerne auch das!

                              mickymM 1 Antwort Letzte Antwort
                              0
                              • B badsnoopy667

                                @mickym Du kannst mir bestimmt helfen:

                                Ich möchte gerne den Flow zu Datenabfrage kurzzeitig "anhalten" können. Hintergrund: Wenn ich den Befehl an den Wechselrichter sende, die Batterieentladung zu drosseln (beim Laden des eAutos), kommt dieser Befehl oft nur sehr verzögert durch weil die Kommunikation mit dem WR schon ausgelastet ist.
                                Halte ich den Datenabfrage Flow an, geht der Befehl sofort durch.

                                Meine Idee: Ich möchte hinter die "5 Sek. Intervall" - Node gerne eine Switch Node setzen, die prüft, ob ein ioBroker Datenpunkt, nennen wir ihn 0_userdata.0.Huawei.Battery.Abfrage_Sperre, auf false steht. Nur dann soll die Abfrage durchgeführt werden. Bei true soll einfach nichts passieren. Ich bin dafür leider zu doof. ;-)
                                Hast Du eine Idee, wie das am Besten geht? Danke schonmal!

                                Alternativ: Wenn es eine einfache Möglichkeit gibt, aus einem anderen Flow herraus einen Flow zu deaktivieren und nach z.B. 30 Sekunden wieder zu aktivieren, gerne auch das!

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

                                @badsnoopy667 sagte in [HowTo] Huawei SUN2000 WR Modbus mit node-red (read + write):

                                Ich möchte hinter die "5 Sek. Intervall" - Node gerne eine Switch Node setzen, die prüft, ob ein ioBroker Datenpunkt, nennen wir ihn 0_userdata.0.Huawei.Battery.Abfrage_Sperre, auf false steht. Nur dann soll die Abfrage durchgeführt werden. Bei true soll einfach nichts passieren. Ich bin dafür leider zu doof.
                                Hast Du eine Idee, wie das am Besten geht? Danke schonmal!

                                Du kannst einfach mit einer get-Node den Datenpunkt abfragen und in einer anschliessenden switch Node entscheiden, ob die Nachrichten weitergereicht werden oder nicht.

                                Alternativ: Wenn es eine einfache Möglichkeit gibt, aus einem anderen Flow herraus einen Flow zu deaktivieren und nach z.B. 30 Sekunden wieder zu aktivieren, gerne auch das!

                                Über Kontextvariablen kannst Du ebenfalls über eine Switch-Node einen Flow blockieren oder freigeben.

                                Ich möchte gerne den Flow zu Datenabfrage kurzzeitig "anhalten" können. Hintergrund: Wenn ich den Befehl an den Wechselrichter sende, die Batterieentladung zu drosseln (beim Laden des eAutos), kommt dieser Befehl oft nur sehr verzögert durch weil die Kommunikation mit dem WR schon ausgelastet ist.

                                Halte ich den Datenabfrage Flow an, geht der Befehl sofort durch.

                                Du kannst auch einfach alle Nachrichten um eine Anzahl von Sekunden verzögern, in dem Du eine delay Node dazwischen klemmst.

                                Ich denke ich würde die 2. Möglichkeit über Kontextvariablen bevorzugen. Ich mach Dir ein theoretisches Beispiel.

                                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

                                  @badsnoopy667 sagte in [HowTo] Huawei SUN2000 WR Modbus mit node-red (read + write):

                                  Ich möchte hinter die "5 Sek. Intervall" - Node gerne eine Switch Node setzen, die prüft, ob ein ioBroker Datenpunkt, nennen wir ihn 0_userdata.0.Huawei.Battery.Abfrage_Sperre, auf false steht. Nur dann soll die Abfrage durchgeführt werden. Bei true soll einfach nichts passieren. Ich bin dafür leider zu doof.
                                  Hast Du eine Idee, wie das am Besten geht? Danke schonmal!

                                  Du kannst einfach mit einer get-Node den Datenpunkt abfragen und in einer anschliessenden switch Node entscheiden, ob die Nachrichten weitergereicht werden oder nicht.

                                  Alternativ: Wenn es eine einfache Möglichkeit gibt, aus einem anderen Flow herraus einen Flow zu deaktivieren und nach z.B. 30 Sekunden wieder zu aktivieren, gerne auch das!

                                  Über Kontextvariablen kannst Du ebenfalls über eine Switch-Node einen Flow blockieren oder freigeben.

                                  Ich möchte gerne den Flow zu Datenabfrage kurzzeitig "anhalten" können. Hintergrund: Wenn ich den Befehl an den Wechselrichter sende, die Batterieentladung zu drosseln (beim Laden des eAutos), kommt dieser Befehl oft nur sehr verzögert durch weil die Kommunikation mit dem WR schon ausgelastet ist.

                                  Halte ich den Datenabfrage Flow an, geht der Befehl sofort durch.

                                  Du kannst auch einfach alle Nachrichten um eine Anzahl von Sekunden verzögern, in dem Du eine delay Node dazwischen klemmst.

                                  Ich denke ich würde die 2. Möglichkeit über Kontextvariablen bevorzugen. Ich mach Dir ein theoretisches Beispiel.

                                  B Online
                                  B Online
                                  badsnoopy667
                                  schrieb am zuletzt editiert von
                                  #265

                                  @mickym
                                  Super, danke schonmal!
                                  Für die 2. Möglichkeit müsste das dann in etwa so aussehen:
                                  Wenn Datenpunkt "Battery_Discharge_Power_SET" geändert wurde, dann halte Flow "Modbus TCP" an.
                                  Sende dann den neuen Wert aus dem SET Datenpunkt an den WR (Diesen Teil habe ich ja schon), warte 30 Sekunden und Starte dann den "Modbus TCP" Flow wieder.

                                  mickymM 2 Antworten Letzte Antwort
                                  0
                                  • B badsnoopy667

                                    @mickym
                                    Super, danke schonmal!
                                    Für die 2. Möglichkeit müsste das dann in etwa so aussehen:
                                    Wenn Datenpunkt "Battery_Discharge_Power_SET" geändert wurde, dann halte Flow "Modbus TCP" an.
                                    Sende dann den neuen Wert aus dem SET Datenpunkt an den WR (Diesen Teil habe ich ja schon), warte 30 Sekunden und Starte dann den "Modbus TCP" Flow wieder.

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

                                    @badsnoopy667

                                    c3f9c48a-9f76-4d98-a34f-7d0d0496ed48-image.png

                                    [
                                       {
                                           "id": "b392cab7e92fdcc5",
                                           "type": "comment",
                                           "z": "702aafcb19d928ac",
                                           "name": "Wenn ich den Befehl an den Wechselrichter sende, die Batterieentladung zu drosseln (beim Laden des eAutos),",
                                           "info": "",
                                           "x": 480,
                                           "y": 100,
                                           "wires": []
                                       },
                                       {
                                           "id": "a4b541ada4dbff5b",
                                           "type": "inject",
                                           "z": "702aafcb19d928ac",
                                           "name": "Drossele ;)",
                                           "props": [
                                               {
                                                   "p": "payload"
                                               }
                                           ],
                                           "repeat": "",
                                           "crontab": "",
                                           "once": false,
                                           "onceDelay": 0.1,
                                           "topic": "",
                                           "payload": "drosseln",
                                           "payloadType": "str",
                                           "x": 340,
                                           "y": 240,
                                           "wires": [
                                               [
                                                   "7f67d6a08eb47568"
                                               ]
                                           ]
                                       },
                                       {
                                           "id": "7f67d6a08eb47568",
                                           "type": "change",
                                           "z": "702aafcb19d928ac",
                                           "name": "",
                                           "rules": [
                                               {
                                                   "t": "set",
                                                   "p": "pause",
                                                   "pt": "flow",
                                                   "to": "true",
                                                   "tot": "bool"
                                               }
                                           ],
                                           "action": "",
                                           "property": "",
                                           "from": "",
                                           "to": "",
                                           "reg": false,
                                           "x": 530,
                                           "y": 240,
                                           "wires": [
                                               [
                                                   "7782c00477972ce8",
                                                   "70cefd961ae5a1df"
                                               ]
                                           ]
                                       },
                                       {
                                           "id": "7782c00477972ce8",
                                           "type": "debug",
                                           "z": "702aafcb19d928ac",
                                           "name": "wird gedrosselt",
                                           "active": true,
                                           "tosidebar": true,
                                           "console": false,
                                           "tostatus": false,
                                           "complete": "payload",
                                           "targetType": "msg",
                                           "statusVal": "",
                                           "statusType": "auto",
                                           "x": 740,
                                           "y": 240,
                                           "wires": []
                                       },
                                       {
                                           "id": "70cefd961ae5a1df",
                                           "type": "trigger",
                                           "z": "702aafcb19d928ac",
                                           "name": "",
                                           "op1": "",
                                           "op2": "false",
                                           "op1type": "nul",
                                           "op2type": "bool",
                                           "duration": "30",
                                           "extend": false,
                                           "overrideDelay": false,
                                           "units": "s",
                                           "reset": "",
                                           "bytopic": "all",
                                           "topic": "topic",
                                           "outputs": 1,
                                           "x": 730,
                                           "y": 180,
                                           "wires": [
                                               [
                                                   "df0ab2949c6f434e"
                                               ]
                                           ]
                                       },
                                       {
                                           "id": "df0ab2949c6f434e",
                                           "type": "change",
                                           "z": "702aafcb19d928ac",
                                           "name": "",
                                           "rules": [
                                               {
                                                   "t": "set",
                                                   "p": "pause",
                                                   "pt": "flow",
                                                   "to": "payload",
                                                   "tot": "msg"
                                               }
                                           ],
                                           "action": "",
                                           "property": "",
                                           "from": "",
                                           "to": "",
                                           "reg": false,
                                           "x": 930,
                                           "y": 180,
                                           "wires": [
                                               []
                                           ]
                                       },
                                       {
                                           "id": "fb55f931ec42672a",
                                           "type": "inject",
                                           "z": "702aafcb19d928ac",
                                           "name": "Abfrage",
                                           "props": [
                                               {
                                                   "p": "payload"
                                               }
                                           ],
                                           "repeat": "5",
                                           "crontab": "",
                                           "once": false,
                                           "onceDelay": 0.1,
                                           "topic": "",
                                           "payload": "",
                                           "payloadType": "date",
                                           "x": 340,
                                           "y": 380,
                                           "wires": [
                                               [
                                                   "adcd90f6a30cee7e"
                                               ]
                                           ]
                                       },
                                       {
                                           "id": "ed5f7870769bdc0e",
                                           "type": "comment",
                                           "z": "702aafcb19d928ac",
                                           "name": "Halte ich den Datenabfrage Flow an, geht der Befehl sofort durch.",
                                           "info": "",
                                           "x": 330,
                                           "y": 300,
                                           "wires": []
                                       },
                                       {
                                           "id": "adcd90f6a30cee7e",
                                           "type": "switch",
                                           "z": "702aafcb19d928ac",
                                           "name": "Pause ?",
                                           "property": "pause",
                                           "propertyType": "flow",
                                           "rules": [
                                               {
                                                   "t": "false"
                                               }
                                           ],
                                           "checkall": "true",
                                           "repair": false,
                                           "outputs": 1,
                                           "x": 500,
                                           "y": 380,
                                           "wires": [
                                               [
                                                   "7d524fe2d7ae45a8"
                                               ]
                                           ]
                                       },
                                       {
                                           "id": "7d524fe2d7ae45a8",
                                           "type": "debug",
                                           "z": "702aafcb19d928ac",
                                           "name": "es wird abgefragt ....",
                                           "active": true,
                                           "tosidebar": true,
                                           "console": false,
                                           "tostatus": false,
                                           "complete": "payload",
                                           "targetType": "msg",
                                           "statusVal": "",
                                           "statusType": "auto",
                                           "x": 720,
                                           "y": 380,
                                           "wires": []
                                       }
                                    ]
                                    

                                    Wenn Du den Flow über einen DP im iobroker steuern willst, dann so:

                                    cfc2e9fb-10a9-4d1a-96e6-ffd041151c26-image.png

                                    [
                                       {
                                           "id": "28b45bfa3f89e574",
                                           "type": "inject",
                                           "z": "2f30279e53882e25",
                                           "name": "",
                                           "props": [
                                               {
                                                   "p": "payload"
                                               }
                                           ],
                                           "repeat": "5",
                                           "crontab": "",
                                           "once": false,
                                           "onceDelay": 0.1,
                                           "topic": "",
                                           "payload": "",
                                           "payloadType": "date",
                                           "x": 370,
                                           "y": 180,
                                           "wires": [
                                               [
                                                   "8c2db9f4fba55e12"
                                               ]
                                           ]
                                       },
                                       {
                                           "id": "d213a463ebfcb035",
                                           "type": "comment",
                                           "z": "2f30279e53882e25",
                                           "name": "Über iobroker Datenpunkt",
                                           "info": "",
                                           "x": 350,
                                           "y": 100,
                                           "wires": []
                                       },
                                       {
                                           "id": "8c2db9f4fba55e12",
                                           "type": "ioBroker get",
                                           "z": "2f30279e53882e25",
                                           "name": "block?",
                                           "topic": "0_userdata.0.Test.aktiv",
                                           "attrname": "block",
                                           "payloadType": "value",
                                           "errOnInvalidState": "nothing",
                                           "x": 530,
                                           "y": 180,
                                           "wires": [
                                               [
                                                   "92c013e426392176"
                                               ]
                                           ]
                                       },
                                       {
                                           "id": "92c013e426392176",
                                           "type": "switch",
                                           "z": "2f30279e53882e25",
                                           "name": "",
                                           "property": "block",
                                           "propertyType": "msg",
                                           "rules": [
                                               {
                                                   "t": "false"
                                               }
                                           ],
                                           "checkall": "true",
                                           "repair": false,
                                           "outputs": 1,
                                           "x": 670,
                                           "y": 180,
                                           "wires": [
                                               [
                                                   "2687c381ceab8786"
                                               ]
                                           ]
                                       },
                                       {
                                           "id": "2687c381ceab8786",
                                           "type": "debug",
                                           "z": "2f30279e53882e25",
                                           "name": "Abfrage",
                                           "active": true,
                                           "tosidebar": true,
                                           "console": false,
                                           "tostatus": false,
                                           "complete": "payload",
                                           "targetType": "msg",
                                           "statusVal": "",
                                           "statusType": "auto",
                                           "x": 820,
                                           "y": 180,
                                           "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
                                    1
                                    • B badsnoopy667

                                      @mickym
                                      Super, danke schonmal!
                                      Für die 2. Möglichkeit müsste das dann in etwa so aussehen:
                                      Wenn Datenpunkt "Battery_Discharge_Power_SET" geändert wurde, dann halte Flow "Modbus TCP" an.
                                      Sende dann den neuen Wert aus dem SET Datenpunkt an den WR (Diesen Teil habe ich ja schon), warte 30 Sekunden und Starte dann den "Modbus TCP" Flow wieder.

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

                                      @badsnoopy667 sagte in [HowTo] Huawei SUN2000 WR Modbus mit node-red (read + write):

                                      Battery_Discharge_Power_SET

                                      @badsnoopy667 sagte in [HowTo] Huawei SUN2000 WR Modbus mit node-red (read + write):

                                      @mickym
                                      Super, danke schonmal!
                                      Für die 2. Möglichkeit müsste das dann in etwa so aussehen:
                                      Wenn Datenpunkt "Battery_Discharge_Power_SET" geändert wurde, dann halte Flow "Modbus TCP" an.
                                      Sende dann den neuen Wert aus dem SET Datenpunkt an den WR (Diesen Teil habe ich ja schon), warte 30 Sekunden und Starte dann den "Modbus TCP" Flow wieder.

                                      Nun dann ist eine einfache Delay Node auch ausreichend wenn der Flow eh durch SET getriggert wird.

                                      4787a107-5bc8-4f7b-bff3-130d22423ee3-image.png

                                      Man kann auch den Wert aus dem SET Datenpunkt zwischenspeichern und dann auslesen.

                                      75c6e32c-2815-40b8-b891-f4604b64299f-image.png

                                      [
                                         {
                                             "id": "a55c82d5a44953b9",
                                             "type": "ioBroker in",
                                             "z": "2f30279e53882e25",
                                             "name": "Battery_Discharge_Power_SET",
                                             "topic": "0_userdata.0.Test.Zahl",
                                             "payloadType": "value",
                                             "onlyack": "",
                                             "func": "all",
                                             "gap": "",
                                             "fireOnStart": "false",
                                             "outFormat": "MQTT",
                                             "x": 370,
                                             "y": 180,
                                             "wires": [
                                                 [
                                                     "e7da92a0b7653af9"
                                                 ]
                                             ]
                                         },
                                         {
                                             "id": "f3e7849bcb369d63",
                                             "type": "debug",
                                             "z": "2f30279e53882e25",
                                             "name": "setze Wert",
                                             "active": true,
                                             "tosidebar": true,
                                             "console": false,
                                             "tostatus": false,
                                             "complete": "payload",
                                             "targetType": "msg",
                                             "statusVal": "",
                                             "statusType": "auto",
                                             "x": 990,
                                             "y": 320,
                                             "wires": []
                                         },
                                         {
                                             "id": "5e288d024c5be6ee",
                                             "type": "comment",
                                             "z": "2f30279e53882e25",
                                             "name": "Wert zwischenspeichern",
                                             "info": "",
                                             "x": 330,
                                             "y": 100,
                                             "wires": []
                                         },
                                         {
                                             "id": "e7da92a0b7653af9",
                                             "type": "trigger",
                                             "z": "2f30279e53882e25",
                                             "name": "",
                                             "op1": "false",
                                             "op2": "",
                                             "op1type": "bool",
                                             "op2type": "pay",
                                             "duration": "30",
                                             "extend": false,
                                             "overrideDelay": false,
                                             "units": "s",
                                             "reset": "",
                                             "bytopic": "all",
                                             "topic": "topic",
                                             "outputs": 1,
                                             "x": 630,
                                             "y": 180,
                                             "wires": [
                                                 [
                                                     "540bd249bf4be993"
                                                 ]
                                             ]
                                         },
                                         {
                                             "id": "540bd249bf4be993",
                                             "type": "change",
                                             "z": "2f30279e53882e25",
                                             "name": "",
                                             "rules": [
                                                 {
                                                     "t": "set",
                                                     "p": "Battery_Discharge_Power_SET",
                                                     "pt": "flow",
                                                     "to": "payload",
                                                     "tot": "msg"
                                                 }
                                             ],
                                             "action": "",
                                             "property": "",
                                             "from": "",
                                             "to": "",
                                             "reg": false,
                                             "x": 900,
                                             "y": 180,
                                             "wires": [
                                                 []
                                             ]
                                         },
                                         {
                                             "id": "3a3ef09b0e0b7874",
                                             "type": "inject",
                                             "z": "2f30279e53882e25",
                                             "name": "Abfrage",
                                             "props": [
                                                 {
                                                     "p": "payload"
                                                 },
                                                 {
                                                     "p": "topic",
                                                     "vt": "str"
                                                 }
                                             ],
                                             "repeat": "",
                                             "crontab": "",
                                             "once": false,
                                             "onceDelay": 0.1,
                                             "topic": "",
                                             "payload": "0",
                                             "payloadType": "num",
                                             "x": 270,
                                             "y": 320,
                                             "wires": [
                                                 [
                                                     "a6ddae275fa49953"
                                                 ]
                                             ]
                                         },
                                         {
                                             "id": "a6ddae275fa49953",
                                             "type": "switch",
                                             "z": "2f30279e53882e25",
                                             "name": "Battery_Discharge_Power_SET = Zahl?",
                                             "property": "Battery_Discharge_Power_SET",
                                             "propertyType": "flow",
                                             "rules": [
                                                 {
                                                     "t": "istype",
                                                     "v": "number",
                                                     "vt": "number"
                                                 }
                                             ],
                                             "checkall": "true",
                                             "repair": false,
                                             "outputs": 1,
                                             "x": 540,
                                             "y": 320,
                                             "wires": [
                                                 [
                                                     "7e08d903d092ff11"
                                                 ]
                                             ]
                                         },
                                         {
                                             "id": "7e08d903d092ff11",
                                             "type": "change",
                                             "z": "2f30279e53882e25",
                                             "name": "Hole Wert",
                                             "rules": [
                                                 {
                                                     "t": "set",
                                                     "p": "payload",
                                                     "pt": "msg",
                                                     "to": "Battery_Discharge_Power_SET",
                                                     "tot": "flow"
                                                 }
                                             ],
                                             "action": "",
                                             "property": "",
                                             "from": "",
                                             "to": "",
                                             "reg": false,
                                             "x": 800,
                                             "y": 320,
                                             "wires": [
                                                 [
                                                     "f3e7849bcb369d63"
                                                 ]
                                             ]
                                         },
                                         {
                                             "id": "dd7987ebd180bc62",
                                             "type": "comment",
                                             "z": "2f30279e53882e25",
                                             "name": "Wert abrufen, wenn Zahl",
                                             "info": "",
                                             "x": 350,
                                             "y": 260,
                                             "wires": []
                                         }
                                      ]
                                      

                                      So nun fällt mir glaube ich nichts mehr ein. ;)

                                      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
                                      • mickymM mickym

                                        @badsnoopy667

                                        c3f9c48a-9f76-4d98-a34f-7d0d0496ed48-image.png

                                        [
                                           {
                                               "id": "b392cab7e92fdcc5",
                                               "type": "comment",
                                               "z": "702aafcb19d928ac",
                                               "name": "Wenn ich den Befehl an den Wechselrichter sende, die Batterieentladung zu drosseln (beim Laden des eAutos),",
                                               "info": "",
                                               "x": 480,
                                               "y": 100,
                                               "wires": []
                                           },
                                           {
                                               "id": "a4b541ada4dbff5b",
                                               "type": "inject",
                                               "z": "702aafcb19d928ac",
                                               "name": "Drossele ;)",
                                               "props": [
                                                   {
                                                       "p": "payload"
                                                   }
                                               ],
                                               "repeat": "",
                                               "crontab": "",
                                               "once": false,
                                               "onceDelay": 0.1,
                                               "topic": "",
                                               "payload": "drosseln",
                                               "payloadType": "str",
                                               "x": 340,
                                               "y": 240,
                                               "wires": [
                                                   [
                                                       "7f67d6a08eb47568"
                                                   ]
                                               ]
                                           },
                                           {
                                               "id": "7f67d6a08eb47568",
                                               "type": "change",
                                               "z": "702aafcb19d928ac",
                                               "name": "",
                                               "rules": [
                                                   {
                                                       "t": "set",
                                                       "p": "pause",
                                                       "pt": "flow",
                                                       "to": "true",
                                                       "tot": "bool"
                                                   }
                                               ],
                                               "action": "",
                                               "property": "",
                                               "from": "",
                                               "to": "",
                                               "reg": false,
                                               "x": 530,
                                               "y": 240,
                                               "wires": [
                                                   [
                                                       "7782c00477972ce8",
                                                       "70cefd961ae5a1df"
                                                   ]
                                               ]
                                           },
                                           {
                                               "id": "7782c00477972ce8",
                                               "type": "debug",
                                               "z": "702aafcb19d928ac",
                                               "name": "wird gedrosselt",
                                               "active": true,
                                               "tosidebar": true,
                                               "console": false,
                                               "tostatus": false,
                                               "complete": "payload",
                                               "targetType": "msg",
                                               "statusVal": "",
                                               "statusType": "auto",
                                               "x": 740,
                                               "y": 240,
                                               "wires": []
                                           },
                                           {
                                               "id": "70cefd961ae5a1df",
                                               "type": "trigger",
                                               "z": "702aafcb19d928ac",
                                               "name": "",
                                               "op1": "",
                                               "op2": "false",
                                               "op1type": "nul",
                                               "op2type": "bool",
                                               "duration": "30",
                                               "extend": false,
                                               "overrideDelay": false,
                                               "units": "s",
                                               "reset": "",
                                               "bytopic": "all",
                                               "topic": "topic",
                                               "outputs": 1,
                                               "x": 730,
                                               "y": 180,
                                               "wires": [
                                                   [
                                                       "df0ab2949c6f434e"
                                                   ]
                                               ]
                                           },
                                           {
                                               "id": "df0ab2949c6f434e",
                                               "type": "change",
                                               "z": "702aafcb19d928ac",
                                               "name": "",
                                               "rules": [
                                                   {
                                                       "t": "set",
                                                       "p": "pause",
                                                       "pt": "flow",
                                                       "to": "payload",
                                                       "tot": "msg"
                                                   }
                                               ],
                                               "action": "",
                                               "property": "",
                                               "from": "",
                                               "to": "",
                                               "reg": false,
                                               "x": 930,
                                               "y": 180,
                                               "wires": [
                                                   []
                                               ]
                                           },
                                           {
                                               "id": "fb55f931ec42672a",
                                               "type": "inject",
                                               "z": "702aafcb19d928ac",
                                               "name": "Abfrage",
                                               "props": [
                                                   {
                                                       "p": "payload"
                                                   }
                                               ],
                                               "repeat": "5",
                                               "crontab": "",
                                               "once": false,
                                               "onceDelay": 0.1,
                                               "topic": "",
                                               "payload": "",
                                               "payloadType": "date",
                                               "x": 340,
                                               "y": 380,
                                               "wires": [
                                                   [
                                                       "adcd90f6a30cee7e"
                                                   ]
                                               ]
                                           },
                                           {
                                               "id": "ed5f7870769bdc0e",
                                               "type": "comment",
                                               "z": "702aafcb19d928ac",
                                               "name": "Halte ich den Datenabfrage Flow an, geht der Befehl sofort durch.",
                                               "info": "",
                                               "x": 330,
                                               "y": 300,
                                               "wires": []
                                           },
                                           {
                                               "id": "adcd90f6a30cee7e",
                                               "type": "switch",
                                               "z": "702aafcb19d928ac",
                                               "name": "Pause ?",
                                               "property": "pause",
                                               "propertyType": "flow",
                                               "rules": [
                                                   {
                                                       "t": "false"
                                                   }
                                               ],
                                               "checkall": "true",
                                               "repair": false,
                                               "outputs": 1,
                                               "x": 500,
                                               "y": 380,
                                               "wires": [
                                                   [
                                                       "7d524fe2d7ae45a8"
                                                   ]
                                               ]
                                           },
                                           {
                                               "id": "7d524fe2d7ae45a8",
                                               "type": "debug",
                                               "z": "702aafcb19d928ac",
                                               "name": "es wird abgefragt ....",
                                               "active": true,
                                               "tosidebar": true,
                                               "console": false,
                                               "tostatus": false,
                                               "complete": "payload",
                                               "targetType": "msg",
                                               "statusVal": "",
                                               "statusType": "auto",
                                               "x": 720,
                                               "y": 380,
                                               "wires": []
                                           }
                                        ]
                                        

                                        Wenn Du den Flow über einen DP im iobroker steuern willst, dann so:

                                        cfc2e9fb-10a9-4d1a-96e6-ffd041151c26-image.png

                                        [
                                           {
                                               "id": "28b45bfa3f89e574",
                                               "type": "inject",
                                               "z": "2f30279e53882e25",
                                               "name": "",
                                               "props": [
                                                   {
                                                       "p": "payload"
                                                   }
                                               ],
                                               "repeat": "5",
                                               "crontab": "",
                                               "once": false,
                                               "onceDelay": 0.1,
                                               "topic": "",
                                               "payload": "",
                                               "payloadType": "date",
                                               "x": 370,
                                               "y": 180,
                                               "wires": [
                                                   [
                                                       "8c2db9f4fba55e12"
                                                   ]
                                               ]
                                           },
                                           {
                                               "id": "d213a463ebfcb035",
                                               "type": "comment",
                                               "z": "2f30279e53882e25",
                                               "name": "Über iobroker Datenpunkt",
                                               "info": "",
                                               "x": 350,
                                               "y": 100,
                                               "wires": []
                                           },
                                           {
                                               "id": "8c2db9f4fba55e12",
                                               "type": "ioBroker get",
                                               "z": "2f30279e53882e25",
                                               "name": "block?",
                                               "topic": "0_userdata.0.Test.aktiv",
                                               "attrname": "block",
                                               "payloadType": "value",
                                               "errOnInvalidState": "nothing",
                                               "x": 530,
                                               "y": 180,
                                               "wires": [
                                                   [
                                                       "92c013e426392176"
                                                   ]
                                               ]
                                           },
                                           {
                                               "id": "92c013e426392176",
                                               "type": "switch",
                                               "z": "2f30279e53882e25",
                                               "name": "",
                                               "property": "block",
                                               "propertyType": "msg",
                                               "rules": [
                                                   {
                                                       "t": "false"
                                                   }
                                               ],
                                               "checkall": "true",
                                               "repair": false,
                                               "outputs": 1,
                                               "x": 670,
                                               "y": 180,
                                               "wires": [
                                                   [
                                                       "2687c381ceab8786"
                                                   ]
                                               ]
                                           },
                                           {
                                               "id": "2687c381ceab8786",
                                               "type": "debug",
                                               "z": "2f30279e53882e25",
                                               "name": "Abfrage",
                                               "active": true,
                                               "tosidebar": true,
                                               "console": false,
                                               "tostatus": false,
                                               "complete": "payload",
                                               "targetType": "msg",
                                               "statusVal": "",
                                               "statusType": "auto",
                                               "x": 820,
                                               "y": 180,
                                               "wires": []
                                           }
                                        ]
                                        

                                        B Online
                                        B Online
                                        badsnoopy667
                                        schrieb am zuletzt editiert von badsnoopy667
                                        #268

                                        @mickym
                                        Ich habe jetzt Deinen Vorschlag aus dem ersten Screenshot genommen. Wo trage ich denn da den Namen des Flows ein, der gestoppt werden soll? Das muss doch irgendwo in diesem gelben Node sein, oder? Habe schon versucht das flow.pause durch flow.Modbus_TCP zu ersetzen, aber da passiert nix...

                                        @mickym Warte mal mit dem Antworten, ich glaube ich versteh gerade so langsam was hier passiert ;)

                                        Ich glaube ich habe es jetzt hinbekommen. Ich habe alles (Lesen und Schreiben) in einen Flow gepackt und dann diese Pausen Variable dazwischen gebastelt:

                                        modbus_pause.png

                                        Es scheint zu funktionieren! Vielen Dank schonmal für die schnelle Hilfe!!

                                        mickymM 1 Antwort Letzte Antwort
                                        0
                                        • B badsnoopy667

                                          @mickym
                                          Ich habe jetzt Deinen Vorschlag aus dem ersten Screenshot genommen. Wo trage ich denn da den Namen des Flows ein, der gestoppt werden soll? Das muss doch irgendwo in diesem gelben Node sein, oder? Habe schon versucht das flow.pause durch flow.Modbus_TCP zu ersetzen, aber da passiert nix...

                                          @mickym Warte mal mit dem Antworten, ich glaube ich versteh gerade so langsam was hier passiert ;)

                                          Ich glaube ich habe es jetzt hinbekommen. Ich habe alles (Lesen und Schreiben) in einen Flow gepackt und dann diese Pausen Variable dazwischen gebastelt:

                                          modbus_pause.png

                                          Es scheint zu funktionieren! Vielen Dank schonmal für die schnelle Hilfe!!

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

                                          @badsnoopy667 Gut - dann denke ich, es ist verstanden. :) - Weiterhin viel Spaß mit dem Flow. ;) Im Prinzip gehts aber unten auch einfacher. Meine erste Change sollte quasi Deine Function Node sein. ;) Ich kannte Deinen kompletten Flow nicht. ;)

                                          Du kannst deshalb die erste Change Node weglassen.

                                          93221346-d1c3-4050-8c62-7b988006e494-image.png

                                          Und mit dem Initialisieren der Kontextvariablen hast Du ja gecheckt.
                                          Du kannst Dir die Kontextvariablen über das Menü anschauen:

                                          46211867-2de6-4cc7-b88e-6756a4cb2011-image.png

                                          Die trigger Node kann true und false ja gleichzeitig setzen:

                                          197173e6-235f-4784-9074-b7207418423e-image.png

                                          Du solltest dann auch noch den Haken setzen - dass bei Eingang neuer Nachrichten verzögert wird. Damit wenn beide iobroker-In Nodes hintereinander triggern - immer die 15 s eingehalten werden.

                                          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

                                          537

                                          Online

                                          32.4k

                                          Benutzer

                                          81.4k

                                          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