Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Blockly
    5. Laufzeit eines Gerätes erfassen

    NEWS

    • Wir empfehlen: Node.js 22.x

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker goes Matter ... Matter Adapter in Stable

    Laufzeit eines Gerätes erfassen

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

      Guten Abend Allerseits, ich möchte mir ein Blockly-Script basteln, mit dem ich die Laufzeit des Ölbrenner von meiner Hybrid-Heizung erfassen kann. Vom Brenner selbst kann ich nichts auslesen. Über die Wärmepumpe mit Modbus kann ich das aber sehen und zwar wenn die Betriesart auf 4=Betrieb die momentan Leistung der Wärmepumpe 0 ist. Jetzt möchte ich erfassen wie lange der Zustand besteht, sprich der Brenner läuft und die Zeit wegschreiben und da komme ich nicht weiter. Ich habe schon einiges versucht, aber ohne Erfolg. Ich stelle mal die letzte Version rein, um zu veranschaulichen was ich möchte. Wie gesagt das funktioniert aber nicht. Vielleicht kann mir hier jemand auf die Sprünge helfen.

      2023_11_23_18.05.40~2.jpg

      liv-in-sky 1 Reply Last reply Reply Quote 0
      • liv-in-sky
        liv-in-sky @Winni last edited by

        @winni

        nimm anstatt "solange" ein "interval" (alle x sekunden abfragen) und
        im interval fragst du den wert ab und stoppst das interval

        Winni OliverIO 2 Replies Last reply Reply Quote 2
        • Winni
          Winni @liv-in-sky last edited by Winni

          @liv-in-sky Danke, probiere ich gleich mal.
          Edit: So schaut jetzt aus.
          2023_11_23_19.00.14~2.jpg

          liv-in-sky 2 Replies Last reply Reply Quote 0
          • liv-in-sky
            liv-in-sky @Winni last edited by

            @winni und funktioniert es

            1 Reply Last reply Reply Quote 0
            • liv-in-sky
              liv-in-sky @Winni last edited by liv-in-sky

              @winni

              die beiden unteren bausteine - außerhalb des triggers werden nur einmal beim start des scriptes ausgeführt - ist das gewollt

              Winni 1 Reply Last reply Reply Quote 0
              • Winni
                Winni @liv-in-sky last edited by

                @liv-in-sky nein, ist nicht gewollt. Ich schieb sie gleich in den Trigger. Wenn das funktioniert, will ich dann alle "Durchläufe" des laufendenTages zusammen zählen und ebenfalls ausweisen.

                1 Reply Last reply Reply Quote 0
                • OliverIO
                  OliverIO @liv-in-sky last edited by

                  @liv-in-sky sagte in Laufzeit eines Gerätes erfassen:

                  nimm anstatt "solange" ein "interval" (alle x sekunden abfragen) und

                  interval ist nicht so gut.
                  besser ist einen trigger auf den start des brenners, die zeit und den status (start) sich merken (idealerweise in datenpunkten) und dann einen trigger auf das ende des brenners, dann die differenz errechnen und das wieder speichern, bzw. mit dem bisherig aufgelaufenen wert aufrechnen.
                  datenpunkte deshalb, das wenn der iobroker oder der adapter mal abbricht, kann nahtlos weitergehorcht werden.
                  bei interval geht bei einem restart der interval verloren.
                  ausserdem ist bei interval alle paar sekunden wieder extra ressourcenverbrauch. klar bei einem fällt das nicht so auf, aber später summiert sich das ggfs.

                  Winni 1 Reply Last reply Reply Quote 1
                  • Winni
                    Winni @OliverIO last edited by

                    @oliverio danke für den Hinweis, werde ich auf alle Fälle als Alternative ausprobieren.

                    1 Reply Last reply Reply Quote 0
                    • Winni
                      Winni last edited by

                      Leider beendet das Blockly-Script die Schleife nicht. Seltsam, die Bedingung zum beenden ist erfüllt. Die Betriebsart ist jetzt auf 0.

                      liv-in-sky 1 Reply Last reply Reply Quote 0
                      • liv-in-sky
                        liv-in-sky @Winni last edited by liv-in-sky

                        @winni

                        ist der dp ein e zeichenkette oder eine number

                        Winni 1 Reply Last reply Reply Quote 0
                        • Winni
                          Winni @liv-in-sky last edited by

                          @liv-in-sky der Datenpunkt ist eine Zahl

                          liv-in-sky 1 Reply Last reply Reply Quote 0
                          • liv-in-sky
                            liv-in-sky @Winni last edited by

                            @winni
                            nur zur sicherheit: ist er so definiert in den object-eigenschaften

                            Winni 1 Reply Last reply Reply Quote 0
                            • Winni
                              Winni @liv-in-sky last edited by

                              @liv-in-sky ja, ganz sicher 🙂

                              liv-in-sky 2 Replies Last reply Reply Quote 0
                              • liv-in-sky
                                liv-in-sky @Winni last edited by

                                @winni

                                ach ja- das interval gehört eins höher - in den if rein - soll ja nur gestartet werden, wenn es eingeschalten wird - sonst wird es jedesmal ausgeführt, wenn getriggert wird

                                Winni 1 Reply Last reply Reply Quote 0
                                • Winni
                                  Winni @liv-in-sky last edited by Winni

                                  @liv-in-sky hatte ich schon gesehen und korrigiert 🙂

                                  1 Reply Last reply Reply Quote 0
                                  • liv-in-sky
                                    liv-in-sky @Winni last edited by

                                    @winni

                                    und am einfachsten eine schaltung zu überprüfen ist, wenn du dir einen debug block reinlegst - damit du im log beobachten kannst, was los ist - dadurch verseht man besser , wie es abläuft

                                    also eine debug in das interval rein und in den if

                                    zeig mal deine korrektur, damit wir das gleiche sehen

                                    Winni 1 Reply Last reply Reply Quote 0
                                    • Winni
                                      Winni @liv-in-sky last edited by Winni

                                      @liv-in-sky so schauts aktuell aus
                                      2023_11_23_20.45.27~2.jpg

                                      Momentan läuft noch ein Zyklus, den will ich noch abwarten, dann bau ich den debug ein. Testen geht aber erst wieder morgen, die Heizung ist dann in der Nachtabsenkung.

                                      liv-in-sky 2 Replies Last reply Reply Quote 0
                                      • liv-in-sky
                                        liv-in-sky @Winni last edited by

                                        @winni

                                        setze öl2 gehört aber in das interval, bevor der stop kommt - erst dann macht es sinn
                                        setze öl3 und test gehört dann unter setze öl2 und vor das stop

                                        Winni 1 Reply Last reply Reply Quote 0
                                        • liv-in-sky
                                          liv-in-sky @Winni last edited by

                                          @winni

                                          wenn ich sachen ausprobiere, wie z.b. so eine neue schaltug, nehme ich testdatenpunkte, die ich dnn von hand schalte - so kann ich das ganze testen ohne auf die betriebsmodi warten zu müssen

                                          noch ein hinweis - jedesmal, wenn ds ganze aktiv ist und zählt, und du das script neustartest oder den server neustartest, werden deine variablen verloren gehen - daher ist es manchmal besser, anstatt variablen auch eigene dp zu nutzen !!!!

                                          wa auch noch fehlt: jetzt bekommst du nur eine schaltung angezeigt - wenn du mehrere schaltungen am tag hast und wissen willlst, wie lange das insgesamt an einem tag lief, fehlt noch einiges

                                          Winni 1 Reply Last reply Reply Quote 0
                                          • Winni
                                            Winni @liv-in-sky last edited by

                                            @liv-in-sky meinst du so?
                                            2023_11_23_21.12.40~2.jpg

                                            liv-in-sky 1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            426
                                            Online

                                            32.0k
                                            Users

                                            80.4k
                                            Topics

                                            1.3m
                                            Posts

                                            3
                                            26
                                            1213
                                            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