Skip to content
  • Home
  • Recent
  • Tags
  • 0 Unread 0
  • Categories
  • Unreplied
  • Popular
  • 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

  • Default (No Skin)
  • No Skin
Collapse
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. [gelöst] finde meinen Blockly-Fehler nicht

NEWS

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

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

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

[gelöst] finde meinen Blockly-Fehler nicht

Scheduled Pinned Locked Moved Skripten / Logik
14 Posts 4 Posters 753 Views 2 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • D DGR

    Hallo,
    Lüfter.jpeg
    bisher lief alles gut bis ich versucht habe, die Lüfterzeiten mal nachzuvollziehen.
    Ich habe auf meinen Raspberry pi 5 einen Zusatzlüfter installiert, der bei vermeintlich zu hohen Temperaturen der CPU eingeschaltet wird und bei Erreichen einer vorgegebenen unteren Temperatur ausgeschaltet wird.
    Das soll das Blockly-Script machen:
    Blockly1.JPG

    Problem: egal, was ich als Maximalwert und Minimalwert einstelle - im Ergebnis kommen immer glatte Minuten für die Dauer "Lüfter=an" raus in Sekunden: 120, 180, 240 (Variable "dauer").
    Auch mit einer Stoppuhr läßt sich das nachvollziehen.
    Der Lüfter wird für an/aus nur über die Stromzuführung (an/aus) gesteuert.

    Habe ich hier einen Denkfehler eingebaut ?

    HomoranH Do not disturb
    HomoranH Do not disturb
    Homoran
    Global Moderator Administrators
    wrote on last edited by
    #2

    @dgr sagte in fonde meinen Blockly-Fehler nicht:

    Habe ich hier einen Denkfehler eingebaut ?

    lass dir mal an und aus per debug-Block Anzeigen

    Warum per Cron und nicht auf Änderung der CPU Temp triggern?

    kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

    Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

    der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

    1 Reply Last reply
    0
    • D DGR

      Hallo,
      Lüfter.jpeg
      bisher lief alles gut bis ich versucht habe, die Lüfterzeiten mal nachzuvollziehen.
      Ich habe auf meinen Raspberry pi 5 einen Zusatzlüfter installiert, der bei vermeintlich zu hohen Temperaturen der CPU eingeschaltet wird und bei Erreichen einer vorgegebenen unteren Temperatur ausgeschaltet wird.
      Das soll das Blockly-Script machen:
      Blockly1.JPG

      Problem: egal, was ich als Maximalwert und Minimalwert einstelle - im Ergebnis kommen immer glatte Minuten für die Dauer "Lüfter=an" raus in Sekunden: 120, 180, 240 (Variable "dauer").
      Auch mit einer Stoppuhr läßt sich das nachvollziehen.
      Der Lüfter wird für an/aus nur über die Stromzuführung (an/aus) gesteuert.

      Habe ich hier einen Denkfehler eingebaut ?

      CodierknechtC Online
      CodierknechtC Online
      Codierknecht
      Developer Most Active
      wrote on last edited by Codierknecht
      #3

      @dgr
      Als Erstes solltest Du den Zeitplan da rauswerfen.
      Stattdessen einen Trigger auf den Temperatur-State.

      Die beiden Temperaturen sollten etwas auseinanderliegen, damit nicht ständig hin und her geschaltet wird (Hysterese). Hast Du ja schon.

      3470c9be-3899-4812-9cf6-923ad122b776-grafik.png

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

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

      paul53P 1 Reply Last reply
      0
      • CodierknechtC Codierknecht

        @dgr
        Als Erstes solltest Du den Zeitplan da rauswerfen.
        Stattdessen einen Trigger auf den Temperatur-State.

        Die beiden Temperaturen sollten etwas auseinanderliegen, damit nicht ständig hin und her geschaltet wird (Hysterese). Hast Du ja schon.

        3470c9be-3899-4812-9cf6-923ad122b776-grafik.png

        paul53P Offline
        paul53P Offline
        paul53
        wrote on last edited by paul53
        #4

        @codierknecht sagte: Trigger auf den Temperatur-State.

        Vorschlag:

        Blockly_temp.JPG

        @dgr sagte in fonde meinen Blockly-Fehler nicht:

        im Ergebnis kommen immer glatte Minuten für die Dauer "Lüfter=an" raus

        Wird der Temperatur-DP der Instanz "rpi2.0" nur jede Minute aktualisiert?

        Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
        Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

        D 2 Replies Last reply
        0
        • paul53P paul53

          @codierknecht sagte: Trigger auf den Temperatur-State.

          Vorschlag:

          Blockly_temp.JPG

          @dgr sagte in fonde meinen Blockly-Fehler nicht:

          im Ergebnis kommen immer glatte Minuten für die Dauer "Lüfter=an" raus

          Wird der Temperatur-DP der Instanz "rpi2.0" nur jede Minute aktualisiert?

          D Offline
          D Offline
          DGR
          wrote on last edited by
          #5

          @paul53
          Blockly1.JPG

          kann mich leider erst morgen wieder melden. Besuch kommt.
          Sorry.

          CodierknechtC 1 Reply Last reply
          0
          • paul53P paul53

            @codierknecht sagte: Trigger auf den Temperatur-State.

            Vorschlag:

            Blockly_temp.JPG

            @dgr sagte in fonde meinen Blockly-Fehler nicht:

            im Ergebnis kommen immer glatte Minuten für die Dauer "Lüfter=an" raus

            Wird der Temperatur-DP der Instanz "rpi2.0" nur jede Minute aktualisiert?

            D Offline
            D Offline
            DGR
            wrote on last edited by
            #6

            @paul53
            Aktualisierung rpi2 (zum testen in history) :
            Screenshot_20250211_085316_Chrome.jpg

            Das scheint wirklich die Ursache zu sein. Kann ich das beeinflussen/ändern?

            HomoranH CodierknechtC 2 Replies Last reply
            0
            • D DGR

              @paul53
              Blockly1.JPG

              kann mich leider erst morgen wieder melden. Besuch kommt.
              Sorry.

              CodierknechtC Online
              CodierknechtC Online
              Codierknecht
              Developer Most Active
              wrote on last edited by Codierknecht
              #7

              @dgr
              Du setzt den Wert eines DP und liest den dann direkt wieder aus.
              Das wird nicht funktionieren.

              Besser die Ergebnisse von Berechnungen in Variablen zwischenspeichern und dann diese Variablen verwenden.

              b33fc3fb-e948-4d5f-a12b-f4f8de94416b-image.png

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

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

              D 1 Reply Last reply
              0
              • D DGR

                @paul53
                Aktualisierung rpi2 (zum testen in history) :
                Screenshot_20250211_085316_Chrome.jpg

                Das scheint wirklich die Ursache zu sein. Kann ich das beeinflussen/ändern?

                HomoranH Do not disturb
                HomoranH Do not disturb
                Homoran
                Global Moderator Administrators
                wrote on last edited by Homoran
                #8

                @dgr sagte in finde meinen Blockly-Fehler nicht:

                Kann ich das beeinflussen/ändern?

                Möglich!
                Wenn du die Temperatur selber per Skript ausliest, könnte es mit kürzeren Intervallen versuchen.
                Bedingung wäre, dass im Raspi OS der Wert öfter als jede Minute aktualisiert wird

                Sieht bei mir pro Minute so aus:
                Screenshot_20250211-090329_Firefox.jpg

                kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

                Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

                1 Reply Last reply
                0
                • D DGR

                  @paul53
                  Aktualisierung rpi2 (zum testen in history) :
                  Screenshot_20250211_085316_Chrome.jpg

                  Das scheint wirklich die Ursache zu sein. Kann ich das beeinflussen/ändern?

                  CodierknechtC Online
                  CodierknechtC Online
                  Codierknecht
                  Developer Most Active
                  wrote on last edited by
                  #9

                  @dgr sagte in finde meinen Blockly-Fehler nicht:

                  Kann ich das beeinflussen/ändern?

                  Höchstens - soweit der Adapter das vorsieht - durch ein dort einstellbares Aktualisierungsintervall.
                  Aber 1x pro Minute sollte eigentlich ausreichen. Mit einem kürzeren Intervall produzierts Du auch mehr Last.
                  Versuch macht klug ;-)

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

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

                  1 Reply Last reply
                  0
                  • CodierknechtC Codierknecht

                    @dgr
                    Du setzt den Wert eines DP und liest den dann direkt wieder aus.
                    Das wird nicht funktionieren.

                    Besser die Ergebnisse von Berechnungen in Variablen zwischenspeichern und dann diese Variablen verwenden.

                    b33fc3fb-e948-4d5f-a12b-f4f8de94416b-image.png

                    D Offline
                    D Offline
                    DGR
                    wrote on last edited by
                    #10

                    @codierknecht
                    Du setzt den Wert eines DP und liest den dann direkt wieder aus.
                    Das wird nicht funktionieren.

                    Ist das ein Zeitproblem? Das würde aus meiner Sicht bedeuten, dass mit der Verarbeitung der Variablen gewartet wird bis sie "gefüllt" sind - im Gegensatz zur Verarbeitung eines Datenpunktes.

                    HomoranH CodierknechtC 2 Replies Last reply
                    0
                    • D DGR

                      @codierknecht
                      Du setzt den Wert eines DP und liest den dann direkt wieder aus.
                      Das wird nicht funktionieren.

                      Ist das ein Zeitproblem? Das würde aus meiner Sicht bedeuten, dass mit der Verarbeitung der Variablen gewartet wird bis sie "gefüllt" sind - im Gegensatz zur Verarbeitung eines Datenpunktes.

                      HomoranH Do not disturb
                      HomoranH Do not disturb
                      Homoran
                      Global Moderator Administrators
                      wrote on last edited by Homoran
                      #11

                      @dgr sagte in finde meinen Blockly-Fehler nicht:

                      Ist das ein Zeitproblem?

                      ja!
                      Das Schreiben eines Wertes in einen Datenpunkt (wegen der Struktur) dauert seine Zeit, eine Variable wird nur innerhalb des Skriptes innerhalb Millisekunden gesetzt

                      kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

                      Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                      der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

                      1 Reply Last reply
                      0
                      • D DGR

                        @codierknecht
                        Du setzt den Wert eines DP und liest den dann direkt wieder aus.
                        Das wird nicht funktionieren.

                        Ist das ein Zeitproblem? Das würde aus meiner Sicht bedeuten, dass mit der Verarbeitung der Variablen gewartet wird bis sie "gefüllt" sind - im Gegensatz zur Verarbeitung eines Datenpunktes.

                        CodierknechtC Online
                        CodierknechtC Online
                        Codierknecht
                        Developer Most Active
                        wrote on last edited by Codierknecht
                        #12

                        @dgr sagte in finde meinen Blockly-Fehler nicht:

                        Ist das ein Zeitproblem?

                        Wie @Homoran schreibt: Ja!
                        Das liegt daran, dass das Ganze asynchron ausgeführt wird.
                        Das Setzen des Wertes wird zwar "angestoßen", ist aber beim Lesen möglicherweise (in der Regel) noch nicht abgeschlossen. Wir reden hier über Milli- oder gar Mikrosekunden.
                        Dann liest Du noch den alten Wert.

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

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

                        D 1 Reply Last reply
                        0
                        • CodierknechtC Codierknecht

                          @dgr sagte in finde meinen Blockly-Fehler nicht:

                          Ist das ein Zeitproblem?

                          Wie @Homoran schreibt: Ja!
                          Das liegt daran, dass das Ganze asynchron ausgeführt wird.
                          Das Setzen des Wertes wird zwar "angestoßen", ist aber beim Lesen möglicherweise (in der Regel) noch nicht abgeschlossen. Wir reden hier über Milli- oder gar Mikrosekunden.
                          Dann liest Du noch den alten Wert.

                          D Offline
                          D Offline
                          DGR
                          wrote on last edited by
                          #13

                          @codierknecht
                          OK. Dann werde ich das auf Variablen umstellen.
                          Abfrageintervall:
                          Screenshot_20250211_090831_Chrome.jpg

                          Da lasse mal lieber die Finger von.

                          HomoranH 1 Reply Last reply
                          0
                          • D DGR

                            @codierknecht
                            OK. Dann werde ich das auf Variablen umstellen.
                            Abfrageintervall:
                            Screenshot_20250211_090831_Chrome.jpg

                            Da lasse mal lieber die Finger von.

                            HomoranH Do not disturb
                            HomoranH Do not disturb
                            Homoran
                            Global Moderator Administrators
                            wrote on last edited by
                            #14

                            @dgr ich hab mal mein Blockly alle 10 Sekunden feuern lassen:
                            Screenshot_20250211-094708_Firefox.jpg

                            Dann kommen auch immer unterschiedliche Werte.
                            Die Limitierung auf 1 Minute liegt nicht am RaspberryPi OS

                            kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

                            Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                            der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

                            1 Reply Last reply
                            0
                            Reply
                            • Reply as topic
                            Log in to reply
                            • Oldest to Newest
                            • Newest to Oldest
                            • Most Votes


                            Support us

                            ioBroker
                            Community Adapters
                            Donate

                            771

                            Online

                            32.4k

                            Users

                            81.6k

                            Topics

                            1.3m

                            Posts
                            Community
                            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                            ioBroker Community 2014-2025
                            logo
                            • Login

                            • Don't have an account? Register

                            • Login or register to search.
                            • First post
                              Last post
                            0
                            • Home
                            • Recent
                            • Tags
                            • Unread 0
                            • Categories
                            • Unreplied
                            • Popular
                            • GitHub
                            • Docu
                            • Hilfe