Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Node-Red
    5. Hilfe bei debuggen einer übernommenen Funktion

    NEWS

    • Monatsrückblick - April 2025

    • Minor js-controller 7.0.7 Update in latest repo

    • Save The Date: ioBroker@Smart Living Forum Solingen, 14.06.

    Hilfe bei debuggen einer übernommenen Funktion

    This topic has been deleted. Only users with topic management privileges can see it.
    • mickym
      mickym Most Active @BF0911 last edited by mickym

      @bf0911 sagte in Hilfe bei debuggen einer übernommenen Funktion:

      @mickym

      Ja, mein Fehler:

      Die Logik soll sein, dass wenn die Chlor-Pumpe nicht aktiv ist, Durchfluss vorhanden ist, die PH-Pumpe-Tageslaufzeit kleiner als die maximale Ph-Pumpe-Zeit ist, der PH-Wert größer als der PH-Grenzwert, die PH-Automatik und die Filter-Pumpe-Automatik die PH-Pumpe für eine über das Dashboard eingeschaltete Zeit einschalten soll, dann für eine übers Dashboard eingestellte Zeit werden soll und das so lange wiederholen, bis der entweder die maximale Tageslaufzeit (übers Dashboard) überschritten wurde oder der PH-Grenzwert unterschritten wurde.

      Die Werte Ph-Grenzwert, Pausenzeit, Laufzeit, Max Tageslauf, und Automatik kommen per MQTT -> Ph-Parameter. Die Tageslaufzeit kommt ebenfalls per MQTT -> PH-Pumpe-Tageslaufzeit

      Und was soll diesen Flow triggern? Wann soll dieser Flow ausgeführt werden (nicht die Bedingungen des Einschaltens der Chlorpumpe), sondern wann soll geprüft werden, ob die Chlorpumpe ausgeschaltet ist, über die gleiche Scheduler Nodes - aber für die ChlorPumpe?
      Also einfach ein neues Gerät dran machen?
      So vielleicht und dann aber alle 60s überprüfen?

      156c80bc-4c83-4715-9a4d-dacc06a251a2-image.png

      Für die Filterpumpe könnte man dann, um unnötige Schaltvorgänge zu vermeiden noch eine filter node hinten dran machen (wenn man alle 60s den Status der Geräte prüfen möchte).

      4006c356-7969-4937-8a49-ec7e95814a0a-image.png

      das wäre ja erforderlich, da Du ja sowohl zyklisch überprüfen möchtest, als auch nur einmalig schalten.

      Macht es vielleicht Sinn, wenn Du eh alle Pumpen auch noch zeitlich über das Dashboard steuern willst diese dann noch in den Scheduler aufzunehmen, anstelle über Inject Nodes zu triggern?

      36a56511-a4ac-42f6-af41-9b7b359f4a5b-image.png

      oder macht es Sinn, wenn man die Filternode Automatik triggern lässt, diese auch die Überprüfung der anderen Pumpen zu übernehmen. Sprich eine Überprüfung der anderen Pumpen erfolgt nur, wenn .... Dann könnte man auch mit trigger Nodes anstelle von Inject Nodes arbeiten.

      1 Reply Last reply Reply Quote 0
      • B
        BF0911 @mickym last edited by

        @mickym

        Hier der Screenshot für eine Change-Node.

        Screenshot 2024-05-15 122547.png

        Die Frage wird wohl noch öfters von dir kommen, warum ich etwas so mache, meistens wird die Antwort lautet: Weil ich es nicht besser wusste.

        Auch in diesem Fall. Deine Erläuterung dazu sind für mich mehr als nachvollziehbar.

        mickym B 2 Replies Last reply Reply Quote 0
        • mickym
          mickym Most Active @BF0911 last edited by mickym

          @bf0911 Gut dann habe ich Dir ja unten die Lösung geschickt, wie Du das alles in einer Change Node in einem Objekt machst.

          Grundsätzlich gibt es bei JSONATA in Change Nodes einen Unterschied zu function Nodes:

          4c28921c-5bca-4fef-9e90-db844b039eee-image.png

          Lass das msg weg - da habe ich gehört, dass das ggf. zu Problemen führen kann, du kannst also bei JSONATA direkt auf die Eigenschaften des Nachrichtenobjektes referenzieren ohne das Präfix msg

          Auf jeden Falls siehst Du nun glaube ich bereits, wie vieles einfacher ohne ein Haufen Code in function NOdes funktionieren kann.

          1 Reply Last reply Reply Quote 0
          • B
            BF0911 @BF0911 last edited by

            Was soll diesen Flow triggern?
            Gute Frage, ich hätte jetzt gesagt, die Variable "Pool-Automatik".

            Die Dosierpumpen brauchen aus meiner Sicht nicht mit in den Scheduler aufgenommen werden und soll auch zeitlich nicht gesteuert werden, weil diese ja eh nur dosieren sollen, wenn der Filter-Pumpe läuft.

            Im ursrünglichen Skript wurde das wohl mit Inject-Node (alle 30 Sekunden) getriggert.

            B mickym 2 Replies Last reply Reply Quote 0
            • B
              BF0911 @BF0911 last edited by

              Ich bekomme folgende Fehlermeldung bei der Verwendung der Change-Node.

              "Cannot set property of non-object type: payload.hours"

              Screenshot 2024-05-15 124031.png

              mickym 2 Replies Last reply Reply Quote 0
              • mickym
                mickym Most Active @BF0911 last edited by

                @bf0911 sagte in Hilfe bei debuggen einer übernommenen Funktion:

                Die Dosierpumpen brauchen aus meiner Sicht nicht mit in den Scheduler aufgenommen werden und soll auch zeitlich nicht gesteuert werden, weil diese ja eh nur dosieren sollen, wenn der Filter-Pumpe läuft.

                Wäre es im Sinne der Logik und Nachvollziehbarkeit einfacher dann die Überprufung der anderen Pumpen nur dann zu machen, wenn man die Filter-Pumpe einschaltet? Allerdings würde ich den scheduler dann auf zyklischem Senden belassen und halt ggf. wenn Du das unbedingt willst auf 30s runtersetzen.

                1 Reply Last reply Reply Quote 0
                • mickym
                  mickym Most Active @BF0911 last edited by mickym

                  @bf0911 sagte in Hilfe bei debuggen einer übernommenen Funktion:

                  Ich bekomme folgende Fehlermeldung bei der Verwendung der Change-Node.

                  "Cannot set property of non-object type: payload.hours"

                  Screenshot 2024-05-15 124031.png

                  Dann mach vorher noch eine Regel, in der Du die payload als leeres payload Objekt initialisierst:

                  6427e6c0-3464-4b79-b0c2-d4fe36b80b58-image.png

                  1 Reply Last reply Reply Quote 0
                  • mickym
                    mickym Most Active @BF0911 last edited by

                    @bf0911 sagte in Hilfe bei debuggen einer übernommenen Funktion:

                    Ich bekomme folgende Fehlermeldung bei der Verwendung der Change-Node.

                    "Cannot set property of non-object type: payload.hours"

                    Screenshot 2024-05-15 124031.png

                    Wenn Du bissi mehr mit JSONATA gemacht hast dann kannst Du das Ganze auch in einer JSONATA Regel zusammenfassen. 😉

                    B 1 Reply Last reply Reply Quote 0
                    • B
                      BF0911 @mickym last edited by

                      @mickym

                      Danke, mit der "Regel" davor klappt es.

                      Hast du bewusst auf das runden verzichtet?

                      JSONNata wird sicherlich noch dauern. 🙂

                      mickym B 2 Replies Last reply Reply Quote 0
                      • mickym
                        mickym Most Active @BF0911 last edited by

                        @bf0911 sagte in Hilfe bei debuggen einer übernommenen Funktion:

                        @mickym

                        Danke, mit der "Regel" davor klappt es.

                        Hast du bewusst auf das runden verzichtet?

                        JSONNata wird sicherlich noch dauern. 🙂

                        Nein das kannst Du schon davor machen, wenn Du willst. Ich zeige Dir trotzdem, wie du so ein Objekt super einfach mit JSONATA machst. Du wirst stauen. 😉

                        mickym 1 Reply Last reply Reply Quote 0
                        • B
                          BF0911 @BF0911 last edited by

                          Ja, die beiden Dosierpumpen brauche nur überprüft werden, wenn die Filterpumpe und der Durchflussschalter aktiv.

                          mickym 1 Reply Last reply Reply Quote 0
                          • mickym
                            mickym Most Active @mickym last edited by mickym

                            @mickym sagte in Hilfe bei debuggen einer übernommenen Funktion:

                            @bf0911 sagte in Hilfe bei debuggen einer übernommenen Funktion:

                            @mickym

                            Danke, mit der "Regel" davor klappt es.

                            Hast du bewusst auf das runden verzichtet?

                            JSONNata wird sicherlich noch dauern. 🙂

                            Nein das kannst Du schon davor machen, wenn Du willst. Ich zeige Dir trotzdem, wie du so ein Objekt super einfach mit JSONATA machst. Du wirst stauen. 😉

                            Also über JSONATA kannst Du Objekte gleich direkt definieren und auch gleich berechnen, in einem Zug:

                            edfe8d92-0e94-4083-b49a-18f8ffc62cb8-image.png

                            Wenn Du auf die 3 Punkte klickst, kannst Du es im JSONATA Editor auch noch übersichtlich eingeben.
                            a2fad2b6-3d6d-4826-9f5b-9262505b11e7-image.png

                            1 Reply Last reply Reply Quote 0
                            • mickym
                              mickym Most Active @BF0911 last edited by mickym

                              @bf0911 sagte in Hilfe bei debuggen einer übernommenen Funktion:

                              Ja, die beiden Dosierpumpen brauche nur überprüft werden, wenn die Filterpumpe und der Durchflussschalter aktiv.

                              Also wenn das so ist, dann kannst Du doch das obere Scheduler Signal direkt verwenden.

                              Du deaktivierst die Blockfunktion und erhälts alle 30 Sekunden einen Trigger und musst nicht extra überprüfen, ob die Filternode läuft.

                              b6662c6f-384a-4e12-9c2d-2fd71bb3c500-image.png

                              Vielleicht langen aber auch die 60 sekunden, wie gesagt ich würde für den Filter trotzdem vielleicht einen Filter einbauen, damit der Filter nicht alle 30 oder 60s ein Ein- oder Ausschaltsignal bekommt.

                              Wenn Du also permanent Dir ein Signal ausgeben lässt, dann filterst du hinten und greifst vorne das true Signal für die Filternode ab.

                              Sprich gleichzeitig mit dem Einschaltsignal für die Filternode (das ja nun zyklisch alle 30s oder alle 60s) von der scheduler Node ausgegeben wird überprüfst Du nun ob die anderen beiden Pumpen eingeschaltet werden, wenn die Filternode ausgeschaltet wird passiert nicht.

                              Vielleicht sollten die dann aber auch ausgeschaltet werden. Dann musst Du nicht die Bedingungen abfragen, sondern machst das Gleiche als ob du die Automatik ausschaltest. Ich bin mir nicht sicher, warum man das unterschiedlich behandelt und es nicht sinnvoller ist grundsätzlich beim Ausschaltsignal für die Filternode, die beiden anderen Pumpen zuerst auszuschalten und dann mit 1 Minute Verzögerung die Filternode.

                              B 1 Reply Last reply Reply Quote 0
                              • B
                                BF0911 @mickym last edited by

                                @mickym

                                Hole ich mir das dann mit der Link-In-Node in den Zweig?

                                Dann ist dass das TRigger-Signal, wie bekomme ich dann die beiden MQTT-Arrays dazu? Einfach mit hier drauf?
                                Screenshot 2024-05-15 131406.png

                                mickym 1 Reply Last reply Reply Quote 0
                                • mickym
                                  mickym Most Active @BF0911 last edited by mickym

                                  @bf0911 Na über die mqtt-In Nodes spreicherst Du die entweder im Kontext oder wenn es eh im iobroker ist - holst Du Dir die Werte zur Laufzeit rein.

                                  Wie gesagt ich bin mit Deiner Filterpumpenlogik s. unten noch nicht so klar.

                                  Warum gibt es also unterschiedliche Vorgehensweisen, ob die Filterpumpe bei Deaktivieren der Automatik oder durch den Zeitplan ausgeschaltet werden soll??? - Das erschließt sich mir als Laie erst mal nicht.

                                  B 1 Reply Last reply Reply Quote 0
                                  • B
                                    BF0911 @mickym last edited by BF0911

                                    @mickym

                                    Das ist ein sehr gute Anmerkung.

                                    Ich hatte jetzt so gedacht, dass die Deaktivierung der Pool-Automatik direkt bzw. nach 1 Minute ausschalten soll, z. B. man stellt eine Undichtigkeit etc fest.

                                    Und der Zeitplan ist der Regel-Betrieb, wobei halt da nur darauf geachten werden soll, dass die Dosierpumpen zu dem Zeitpunkt nicht laufen, damit die Chemie nicht in den Rohren bleibt.

                                    Vielleicht denke ich auch zu kompliziert.

                                    Wir können daher (erstmal) eine Vorgehensweise nutzen.

                                    mickym 1 Reply Last reply Reply Quote 0
                                    • mickym
                                      mickym Most Active @BF0911 last edited by mickym

                                      @bf0911 Na ja dann schadet es aber auch nicht, wenn Du grundsätzlich die Filterpumpe immer erst 1 Minute nach dem Abschalten der Dosierpumpen abschaltest.

                                      Und nochmal - Du wirst später sehen, dass es viel einfacher ist, wenn man die Logik zu Beginn so einfach wie möglich hält. Mit den Konfigurationsänderungen der ui schedulers können wir das nun wie folgt vereinfachen:

                                      de5e7699-6a14-4a28-9848-3f16937f454f-image.png

                                      So nun wird grundsätzlich die Filterpumpe 1 Minuten nachdem die Dosierpumpen ausgeschaltet wurden, egal ob die Automatik deaktiviert wurde oder der Zeitplan das vorgibt.

                                      Wenn die Filterpumpe eingeschaltet wird, werden die beiden Dosierpumpen mitein geschaltet. Und nun kannst Du noch die Bedingungen einfügen, ob die wirklich eingeschaltet werden oder ggf. wieder ausgeschaltet werden. Ist das für Dich nachvollziehbar?

                                      Und hier der Import des Flows:

                                      [
                                         {
                                             "id": "678c75e771b741cf",
                                             "type": "ui_time_scheduler",
                                             "z": "d25606275138920f",
                                             "group": "3979c1d87146b072",
                                             "name": "",
                                             "startDay": 0,
                                             "refresh": "30",
                                             "devices": [
                                                 "Filter-Pumpe"
                                             ],
                                             "singleOff": false,
                                             "onlySendChange": false,
                                             "customPayload": false,
                                             "eventMode": false,
                                             "eventOptions": [],
                                             "sendTopic": false,
                                             "lat": "",
                                             "lon": "",
                                             "customContextStore": "",
                                             "outputs": 2,
                                             "order": 1,
                                             "width": 0,
                                             "height": 0,
                                             "x": 130,
                                             "y": 1980,
                                             "wires": [
                                                 [],
                                                 [
                                                     "b6a4b77cf6b5b8e4",
                                                     "0e3bc46c5e8141e1"
                                                 ]
                                             ]
                                         },
                                         {
                                             "id": "bf1b3cdd0ebcbe1f",
                                             "type": "switch",
                                             "z": "d25606275138920f",
                                             "name": "Zeitsteuerung Filer Pumpe",
                                             "property": "payload",
                                             "propertyType": "msg",
                                             "rules": [
                                                 {
                                                     "t": "false"
                                                 },
                                                 {
                                                     "t": "true"
                                                 }
                                             ],
                                             "checkall": "true",
                                             "repair": false,
                                             "outputs": 2,
                                             "x": 520,
                                             "y": 1960,
                                             "wires": [
                                                 [
                                                     "d23752ae48c9ab60"
                                                 ],
                                                 [
                                                     "a164b52ff23368dc"
                                                 ]
                                             ]
                                         },
                                         {
                                             "id": "942d8d68a1f6ae76",
                                             "type": "ioBroker out",
                                             "z": "d25606275138920f",
                                             "name": "",
                                             "topic": "0_userdata.0.Poolsteuerung.Filter-Pumpe",
                                             "ack": "false",
                                             "autoCreate": "false",
                                             "stateName": "",
                                             "role": "",
                                             "payloadType": "",
                                             "readonly": "",
                                             "stateUnit": "",
                                             "stateMin": "",
                                             "stateMax": "",
                                             "x": 2500,
                                             "y": 2100,
                                             "wires": []
                                         },
                                         {
                                             "id": "0d05aa309133c91e",
                                             "type": "ioBroker out",
                                             "z": "d25606275138920f",
                                             "name": "Chlor-Pumpe",
                                             "topic": "0_userdata.0.Poolsteuerung.Chlor-Pumpe",
                                             "ack": "false",
                                             "autoCreate": "false",
                                             "stateName": "",
                                             "role": "",
                                             "payloadType": "",
                                             "readonly": "",
                                             "stateUnit": "",
                                             "stateMin": "",
                                             "stateMax": "",
                                             "x": 730,
                                             "y": 2180,
                                             "wires": []
                                         },
                                         {
                                             "id": "28042ec9caf08262",
                                             "type": "comment",
                                             "z": "d25606275138920f",
                                             "name": "Alles einschalten (payload = true)",
                                             "info": "",
                                             "x": 410,
                                             "y": 2140,
                                             "wires": []
                                         },
                                         {
                                             "id": "85364f9eddf5ea81",
                                             "type": "ioBroker out",
                                             "z": "d25606275138920f",
                                             "name": "",
                                             "topic": "",
                                             "ack": "false",
                                             "autoCreate": "false",
                                             "stateName": "",
                                             "role": "",
                                             "payloadType": "",
                                             "readonly": "",
                                             "stateUnit": "",
                                             "stateMin": "",
                                             "stateMax": "",
                                             "x": 740,
                                             "y": 2260,
                                             "wires": []
                                         },
                                         {
                                             "id": "b6a4b77cf6b5b8e4",
                                             "type": "rbe",
                                             "z": "d25606275138920f",
                                             "name": "",
                                             "func": "rbe",
                                             "gap": "",
                                             "start": "",
                                             "inout": "out",
                                             "septopics": true,
                                             "property": "payload",
                                             "topi": "topic",
                                             "x": 310,
                                             "y": 1960,
                                             "wires": [
                                                 [
                                                     "bf1b3cdd0ebcbe1f"
                                                 ]
                                             ]
                                         },
                                         {
                                             "id": "0e3bc46c5e8141e1",
                                             "type": "switch",
                                             "z": "d25606275138920f",
                                             "name": "Filter Pumpe aktiv ?",
                                             "property": "payload",
                                             "propertyType": "msg",
                                             "rules": [
                                                 {
                                                     "t": "true"
                                                 }
                                             ],
                                             "checkall": "true",
                                             "repair": false,
                                             "outputs": 1,
                                             "x": 360,
                                             "y": 2220,
                                             "wires": [
                                                 [
                                                     "1371455361c75baf"
                                                 ]
                                             ]
                                         },
                                         {
                                             "id": "071d602ff2e67c64",
                                             "type": "change",
                                             "z": "d25606275138920f",
                                             "name": "",
                                             "rules": [
                                                 {
                                                     "t": "set",
                                                     "p": "reset",
                                                     "pt": "msg",
                                                     "to": "true",
                                                     "tot": "bool"
                                                 }
                                             ],
                                             "action": "",
                                             "property": "",
                                             "from": "",
                                             "to": "",
                                             "reg": false,
                                             "x": 880,
                                             "y": 2060,
                                             "wires": [
                                                 [
                                                     "a65f176266fbe4fe"
                                                 ]
                                             ]
                                         },
                                         {
                                             "id": "a164b52ff23368dc",
                                             "type": "junction",
                                             "z": "d25606275138920f",
                                             "x": 760,
                                             "y": 2100,
                                             "wires": [
                                                 [
                                                     "942d8d68a1f6ae76",
                                                     "071d602ff2e67c64"
                                                 ]
                                             ]
                                         },
                                         {
                                             "id": "1371455361c75baf",
                                             "type": "junction",
                                             "z": "d25606275138920f",
                                             "x": 560,
                                             "y": 2220,
                                             "wires": [
                                                 [
                                                     "0d05aa309133c91e",
                                                     "85364f9eddf5ea81"
                                                 ]
                                             ]
                                         },
                                         {
                                             "id": "5d6d32f935b1a324",
                                             "type": "group",
                                             "z": "d25606275138920f",
                                             "name": "FilterPumpe deaktivieren",
                                             "style": {
                                                 "label": true,
                                                 "color": "#000000",
                                                 "fill": "#d1d1d1"
                                             },
                                             "nodes": [
                                                 "a65f176266fbe4fe",
                                                 "bd4f3236afac2f1a",
                                                 "331b8de57a5b25e7",
                                                 "d23752ae48c9ab60",
                                                 "4cbb9a78083de787",
                                                 "f07ca3bb04261a9c",
                                                 "048925639d4e6ab1",
                                                 "bc64b67cb834f447",
                                                 "9222106b4d62ed45",
                                                 "1f22a47a5731a326",
                                                 "256bdbb166d4fefb"
                                             ],
                                             "x": 714,
                                             "y": 1779,
                                             "w": 2212,
                                             "h": 242
                                         },
                                         {
                                             "id": "a65f176266fbe4fe",
                                             "type": "delay",
                                             "z": "d25606275138920f",
                                             "g": "5d6d32f935b1a324",
                                             "name": "",
                                             "pauseType": "delay",
                                             "timeout": "1",
                                             "timeoutUnits": "minutes",
                                             "rate": "1",
                                             "nbRateUnits": "1",
                                             "rateUnits": "second",
                                             "randomFirst": "1",
                                             "randomLast": "5",
                                             "randomUnits": "seconds",
                                             "drop": false,
                                             "allowrate": false,
                                             "outputs": 1,
                                             "x": 1080,
                                             "y": 1960,
                                             "wires": [
                                                 [
                                                     "4cbb9a78083de787"
                                                 ]
                                             ]
                                         },
                                         {
                                             "id": "bd4f3236afac2f1a",
                                             "type": "ioBroker out",
                                             "z": "d25606275138920f",
                                             "g": "5d6d32f935b1a324",
                                             "name": "",
                                             "topic": "0_userdata.0.Poolsteuerung.Chlor-Pumpe",
                                             "ack": "false",
                                             "autoCreate": "false",
                                             "stateName": "",
                                             "role": "",
                                             "payloadType": "",
                                             "readonly": "",
                                             "stateUnit": "",
                                             "stateMin": "",
                                             "stateMax": "",
                                             "x": 1060,
                                             "y": 1820,
                                             "wires": []
                                         },
                                         {
                                             "id": "331b8de57a5b25e7",
                                             "type": "ioBroker out",
                                             "z": "d25606275138920f",
                                             "g": "5d6d32f935b1a324",
                                             "name": "",
                                             "topic": "0_userdata.0.Poolsteuerung.PH-Pumpe",
                                             "ack": "false",
                                             "autoCreate": "false",
                                             "stateName": "",
                                             "role": "",
                                             "payloadType": "",
                                             "readonly": "",
                                             "stateUnit": "",
                                             "stateMin": "",
                                             "stateMax": "",
                                             "x": 1060,
                                             "y": 1880,
                                             "wires": []
                                         },
                                         {
                                             "id": "d23752ae48c9ab60",
                                             "type": "junction",
                                             "z": "d25606275138920f",
                                             "g": "5d6d32f935b1a324",
                                             "x": 740,
                                             "y": 1880,
                                             "wires": [
                                                 [
                                                     "a65f176266fbe4fe",
                                                     "bd4f3236afac2f1a",
                                                     "331b8de57a5b25e7"
                                                 ]
                                             ]
                                         },
                                         {
                                             "id": "4cbb9a78083de787",
                                             "type": "ioBroker get",
                                             "z": "d25606275138920f",
                                             "g": "5d6d32f935b1a324",
                                             "name": "",
                                             "topic": "0_userdata.0.Poolsteuerung.PH-Pumpe",
                                             "attrname": "phPumpe",
                                             "payloadType": "value",
                                             "errOnInvalidState": "nothing",
                                             "x": 1340,
                                             "y": 1960,
                                             "wires": [
                                                 [
                                                     "f07ca3bb04261a9c"
                                                 ]
                                             ]
                                         },
                                         {
                                             "id": "f07ca3bb04261a9c",
                                             "type": "ioBroker get",
                                             "z": "d25606275138920f",
                                             "g": "5d6d32f935b1a324",
                                             "name": "",
                                             "topic": "0_userdata.0.Poolsteuerung.Chlor-Pumpe",
                                             "attrname": "chlorPumpe",
                                             "payloadType": "value",
                                             "errOnInvalidState": "nothing",
                                             "x": 1680,
                                             "y": 1960,
                                             "wires": [
                                                 [
                                                     "048925639d4e6ab1"
                                                 ]
                                             ]
                                         },
                                         {
                                             "id": "048925639d4e6ab1",
                                             "type": "switch",
                                             "z": "d25606275138920f",
                                             "g": "5d6d32f935b1a324",
                                             "name": "phPumpe inaktiv?",
                                             "property": "phPumpe",
                                             "propertyType": "msg",
                                             "rules": [
                                                 {
                                                     "t": "true"
                                                 },
                                                 {
                                                     "t": "false"
                                                 }
                                             ],
                                             "checkall": "true",
                                             "repair": false,
                                             "outputs": 2,
                                             "x": 1950,
                                             "y": 1960,
                                             "wires": [
                                                 [
                                                     "1f22a47a5731a326"
                                                 ],
                                                 [
                                                     "bc64b67cb834f447"
                                                 ]
                                             ]
                                         },
                                         {
                                             "id": "bc64b67cb834f447",
                                             "type": "switch",
                                             "z": "d25606275138920f",
                                             "g": "5d6d32f935b1a324",
                                             "name": "chlorPumpe inaktiv?",
                                             "property": "chlorPumpe",
                                             "propertyType": "msg",
                                             "rules": [
                                                 {
                                                     "t": "true"
                                                 },
                                                 {
                                                     "t": "false"
                                                 }
                                             ],
                                             "checkall": "true",
                                             "repair": false,
                                             "outputs": 2,
                                             "x": 2200,
                                             "y": 1980,
                                             "wires": [
                                                 [
                                                     "9222106b4d62ed45"
                                                 ],
                                                 [
                                                     "942d8d68a1f6ae76"
                                                 ]
                                             ]
                                         },
                                         {
                                             "id": "9222106b4d62ed45",
                                             "type": "change",
                                             "z": "d25606275138920f",
                                             "g": "5d6d32f935b1a324",
                                             "name": "Fehlermeldung",
                                             "rules": [
                                                 {
                                                     "t": "set",
                                                     "p": "payload",
                                                     "pt": "msg",
                                                     "to": "Filterpumpe wurde nicht abgeschaltet, da Dosierpumpen nicht abgeschaltet wurden",
                                                     "tot": "str"
                                                 }
                                             ],
                                             "action": "",
                                             "property": "",
                                             "from": "",
                                             "to": "",
                                             "reg": false,
                                             "x": 2420,
                                             "y": 1860,
                                             "wires": [
                                                 [
                                                     "256bdbb166d4fefb"
                                                 ]
                                             ]
                                         },
                                         {
                                             "id": "1f22a47a5731a326",
                                             "type": "junction",
                                             "z": "d25606275138920f",
                                             "g": "5d6d32f935b1a324",
                                             "x": 2120,
                                             "y": 1860,
                                             "wires": [
                                                 [
                                                     "9222106b4d62ed45"
                                                 ]
                                             ]
                                         },
                                         {
                                             "id": "256bdbb166d4fefb",
                                             "type": "debug",
                                             "z": "d25606275138920f",
                                             "g": "5d6d32f935b1a324",
                                             "name": "Fehler beim Abschalten der Dosierpumpen",
                                             "active": true,
                                             "tosidebar": true,
                                             "console": false,
                                             "tostatus": false,
                                             "complete": "payload",
                                             "targetType": "msg",
                                             "statusVal": "",
                                             "statusType": "auto",
                                             "x": 2710,
                                             "y": 1860,
                                             "wires": []
                                         },
                                         {
                                             "id": "3979c1d87146b072",
                                             "type": "ui_group",
                                             "name": "Scheduler",
                                             "tab": "5fb772105c6cc8b7",
                                             "order": 2,
                                             "disp": true,
                                             "width": "6",
                                             "collapse": false,
                                             "className": ""
                                         },
                                         {
                                             "id": "5fb772105c6cc8b7",
                                             "type": "ui_tab",
                                             "name": "Home",
                                             "icon": "dashboard",
                                             "disabled": false,
                                             "hidden": false
                                         }
                                      ]
                                      

                                      EDIT: So hier nochmal der überarbeitete Flow. Oben filtern wir die periodischen Signale mit der filter Node für die Filter-Pumpe zum ein- und ausschalten weg, so dass nur noch die Ein- und Ausschaltsignale durchkommen.

                                      Unten hingegen werden die periodischen "true"" Signale für die Dosierpumpen verwendet.

                                      B 1 Reply Last reply Reply Quote 0
                                      • B
                                        BF0911 @mickym last edited by BF0911

                                        @mickym

                                        Ich sag mal so halb. Das Trigger-Signal für die Logik der Dosierpumpen ist jetzt das "True"-Signal der Zeitsteuerung.

                                        So wie es in dem Beispiel-Flow ist, würden die Dosierpumpen aber direkt laufen, richtig?

                                        Das würde bedeuten, dass die Logik für die Dosier-Pumpen ganz unten im Flow vor der jeweilige Iobroker-out-Node ist, richtig?

                                        Was noch fehlt, ist ob die Filter-Pumpe wirklich läuft. Das muss ich mir ebenfalls noch in den unteren Zweig holen.

                                        mickym 3 Replies Last reply Reply Quote 0
                                        • mickym
                                          mickym Most Active @BF0911 last edited by

                                          @bf0911 sagte in Hilfe bei debuggen einer übernommenen Funktion:

                                          So wie es in dem Beispiel-Flow ist, würden die Dosierpumpen aber direkt laufen, richtig?

                                          Ja - aber das hab ich ja gesagt, du sollst jetzt die Bedingungen in diesen Ast einfügen, ja und vor die iobroker-Out Nodes eingefügt werden. 👍 👍 👍

                                          B mickym 2 Replies Last reply Reply Quote 0
                                          • B
                                            BF0911 @mickym last edited by

                                            @mickym

                                            Macht es sind, der Übersichtlichkeit, das Signal des Schedulers per Link-in und Link-out in die jeweilige Logik-Gruppe zu holen oder sollte man das komplett in eine Gruppe packen?

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            1.0k
                                            Online

                                            31.6k
                                            Users

                                            79.4k
                                            Topics

                                            1.3m
                                            Posts

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