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. Blockly
  5. Script lässt Instanz abstürzen

NEWS

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

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

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

Script lässt Instanz abstürzen

Scheduled Pinned Locked Moved Blockly
53 Posts 5 Posters 5.5k 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.
  • paul53P paul53

    @benutzer0815
    Das sind eigene Datenpunkte. Die werden mittels Skript geschrieben (aktuell gehalten)?

    @benutzer0815 sagte in Script lässt Instanz abstürzen:

    ich müsste das so machen:

    ... oder besser so:

    Blockly_temp.JPG

    B Offline
    B Offline
    Benutzer0815
    wrote on last edited by
    #35

    @paul53 Ah jetzt habe ich den richtigen Baustein gefunden.
    Allerdings ist nun die Sonne gerade untergegangen und der Wert ändert sich daher nicht mehr.

    Die Datenpunkte werden mittels nodered aus dem Huawei Wechselrichter ausgelesen. An diesem ist das Smartmeter auch angeschlossen.

    1 Reply Last reply
    0
    • paul53P paul53

      @benutzer0815
      Das sind eigene Datenpunkte. Die werden mittels Skript geschrieben (aktuell gehalten)?

      @benutzer0815 sagte in Script lässt Instanz abstürzen:

      ich müsste das so machen:

      ... oder besser so:

      Blockly_temp.JPG

      B Offline
      B Offline
      Benutzer0815
      wrote on last edited by
      #36

      @paul53 f36c171f-558a-41af-be50-e76123af28d3-image.png
      Tatsächlich, also wenn ich mir den Wert im Objektbaum ansehe, waren es um die 2500.

      B CodierknechtC 2 Replies Last reply
      0
      • B Benutzer0815

        @paul53 f36c171f-558a-41af-be50-e76123af28d3-image.png
        Tatsächlich, also wenn ich mir den Wert im Objektbaum ansehe, waren es um die 2500.

        B Offline
        B Offline
        Benutzer0815
        wrote on last edited by
        #37

        @benutzer0815 Ok jetzt geht's.

        Nun sieht mein Skript so aus:

        994524b3-db30-4f2b-a23d-3b7cfc07165c-image.png

        In meiner Variable steht immer nur NaN. Das steht für Not a Number? Das verwirrt mich mehr als ds ich damit was anfangen kann.

        Wie ist denn die Reihenfolge der Abarbeitung? Kann es sein das er jedesmal eine neue Liste erstellt und dadurch dort immer nur ein Wert drin steht?

        Also eigentlich soll er ja nur einmal eine neue Liste erstellen und dann immer alle 10 Sekunden die Schleife durchlaufen. Ist das so oder erstellt er eine neue Liste, macht die Schleife und dann wieder eine neue Liste und dann nach 10 Sekunden wieder die Schleife usw?

        1 Reply Last reply
        0
        • B Benutzer0815

          @paul53 f36c171f-558a-41af-be50-e76123af28d3-image.png
          Tatsächlich, also wenn ich mir den Wert im Objektbaum ansehe, waren es um die 2500.

          CodierknechtC Offline
          CodierknechtC Offline
          Codierknecht
          Developer Most Active
          wrote on last edited by
          #38

          @benutzer0815
          Was mit dem Script ausgegeben wird, steht zu genau diesem Zeitpunkt auch im Objektbaum.
          Alles andere schließe ich mal kategorisch aus.

          Ich bin ausnahmsweise mal im Büro, habe daher keinen ioBroker parat - darum nur Theorie:
          Du änderst das letzte Element der Liste und löscht dann das erste. Dann ist die Liste immer leer.
          Ich denke mal, dass Du eigentlich ein neues Element anhängen wolltest, oder?

          "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

          B 1 Reply Last reply
          0
          • CodierknechtC Codierknecht

            @benutzer0815
            Was mit dem Script ausgegeben wird, steht zu genau diesem Zeitpunkt auch im Objektbaum.
            Alles andere schließe ich mal kategorisch aus.

            Ich bin ausnahmsweise mal im Büro, habe daher keinen ioBroker parat - darum nur Theorie:
            Du änderst das letzte Element der Liste und löscht dann das erste. Dann ist die Liste immer leer.
            Ich denke mal, dass Du eigentlich ein neues Element anhängen wolltest, oder?

            B Offline
            B Offline
            Benutzer0815
            wrote on last edited by Benutzer0815
            #39

            @codierknecht Ja schon aber das erste Element soll er ja nur löschen wenn die Liste = oder > 10 Elemente ist.

            Am Anfang soll also die Liste erstmal gefüllt werden und wenn sie voll ist, sollen immer nur die letzten 9 Werte behalten werden.

            Ich habe gerade mal folgendes getestet:

            37beaa5c-b3da-4d1f-b17b-62fae8e6ea42-image.png

            Sieht so aus als wenn das rundum des Zeitplans zuerst einmal ausgeführt wird und dann nie wieder. Also erst "Anfang", dann wird die 10-Sekunden-Schleife übersprungen und dann kommt "Ende" und dann geht es mit der Schleife los.
            Seltsam.

            B 1 Reply Last reply
            0
            • B Benutzer0815

              @codierknecht Ja schon aber das erste Element soll er ja nur löschen wenn die Liste = oder > 10 Elemente ist.

              Am Anfang soll also die Liste erstmal gefüllt werden und wenn sie voll ist, sollen immer nur die letzten 9 Werte behalten werden.

              Ich habe gerade mal folgendes getestet:

              37beaa5c-b3da-4d1f-b17b-62fae8e6ea42-image.png

              Sieht so aus als wenn das rundum des Zeitplans zuerst einmal ausgeführt wird und dann nie wieder. Also erst "Anfang", dann wird die 10-Sekunden-Schleife übersprungen und dann kommt "Ende" und dann geht es mit der Schleife los.
              Seltsam.

              B Offline
              B Offline
              Benutzer0815
              wrote on last edited by
              #40

              @benutzer0815 So nun scheint es zu funktionieren.

              Vielen Dank für die Unterstützung!

              7114ad17-4d77-4264-9b61-9959f8c99029-image.png

              B CodierknechtC 2 Replies Last reply
              0
              • B Benutzer0815

                @benutzer0815 So nun scheint es zu funktionieren.

                Vielen Dank für die Unterstützung!

                7114ad17-4d77-4264-9b61-9959f8c99029-image.png

                B Offline
                B Offline
                Benutzer0815
                wrote on last edited by
                #41

                @benutzer0815 Nun muss ich mich nur noch an die Optimierung machen. Also das die Ganze nacht nicht das Skript immer läuft.

                9059cfd2-3d38-4988-8f67-1ecbab560065-image.png
                Das Datum Objekt ist eine Nummer und dasStartUp Objekt ist ein String. Wie bekommt man das am Besten zusammen?

                Oder meint ihr das Optimieren macht in diese Richtung keinen Sinn?

                paul53P 1 Reply Last reply
                0
                • B Benutzer0815

                  @benutzer0815 So nun scheint es zu funktionieren.

                  Vielen Dank für die Unterstützung!

                  7114ad17-4d77-4264-9b61-9959f8c99029-image.png

                  CodierknechtC Offline
                  CodierknechtC Offline
                  Codierknecht
                  Developer Most Active
                  wrote on last edited by
                  #42

                  @benutzer0815
                  Lass Dir mal mit Debug die Liste ausgeben ;-)

                  "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

                  B 1 Reply Last reply
                  0
                  • CodierknechtC Codierknecht

                    @benutzer0815
                    Lass Dir mal mit Debug die Liste ausgeben ;-)

                    B Offline
                    B Offline
                    Benutzer0815
                    wrote on last edited by
                    #43

                    @codierknecht Hab ich. Sieht gut aus.

                    1 Reply Last reply
                    0
                    • B Benutzer0815

                      @benutzer0815 Nun muss ich mich nur noch an die Optimierung machen. Also das die Ganze nacht nicht das Skript immer läuft.

                      9059cfd2-3d38-4988-8f67-1ecbab560065-image.png
                      Das Datum Objekt ist eine Nummer und dasStartUp Objekt ist ein String. Wie bekommt man das am Besten zusammen?

                      Oder meint ihr das Optimieren macht in diese Richtung keinen Sinn?

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

                      @benutzer0815 sagte: Wie bekommt man das am Besten zusammen?

                      Wie hier gezeigt.

                      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

                      B 1 Reply Last reply
                      1
                      • paul53P paul53

                        @benutzer0815 sagte: Wie bekommt man das am Besten zusammen?

                        Wie hier gezeigt.

                        B Offline
                        B Offline
                        Benutzer0815
                        wrote on last edited by
                        #45

                        @paul53 Super danke!

                        B 1 Reply Last reply
                        0
                        • B Benutzer0815

                          @paul53 Super danke!

                          B Offline
                          B Offline
                          Benutzer0815
                          wrote on last edited by
                          #46

                          @benutzer0815 b88b91bc-7757-4c8d-a824-16a1f846b2a0-image.png

                          So wird nun jede Millisekunde geprüft ob die aktuelle Zeit dazwischen liegt, oder? Ist ja nicht gerade ressourcenschonend. Also das Ganze noch in einen Zeitplan von einer Minute packen, oder?
                          Aber dann macht er ja die eigentliche Berechnung nur alle 70 Sekunden, oder?

                          paul53P CodierknechtC 2 Replies Last reply
                          0
                          • B Benutzer0815

                            @benutzer0815 b88b91bc-7757-4c8d-a824-16a1f846b2a0-image.png

                            So wird nun jede Millisekunde geprüft ob die aktuelle Zeit dazwischen liegt, oder? Ist ja nicht gerade ressourcenschonend. Also das Ganze noch in einen Zeitplan von einer Minute packen, oder?
                            Aber dann macht er ja die eigentliche Berechnung nur alle 70 Sekunden, oder?

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

                            @benutzer0815 sagte: jede Millisekunde geprüft ob die aktuelle Zeit dazwischen liegt, oder?

                            Nein, nur einmal bei Skriptstart. Die Uhrzeitprüfung muss in den 10-s-Trigger!

                            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

                            B 1 Reply Last reply
                            0
                            • B Benutzer0815

                              @benutzer0815 b88b91bc-7757-4c8d-a824-16a1f846b2a0-image.png

                              So wird nun jede Millisekunde geprüft ob die aktuelle Zeit dazwischen liegt, oder? Ist ja nicht gerade ressourcenschonend. Also das Ganze noch in einen Zeitplan von einer Minute packen, oder?
                              Aber dann macht er ja die eigentliche Berechnung nur alle 70 Sekunden, oder?

                              CodierknechtC Offline
                              CodierknechtC Offline
                              Codierknecht
                              Developer Most Active
                              wrote on last edited by
                              #48

                              @benutzer0815
                              Der Trigger bzw. Zeitplan ist immer das äußere Element. Alles andere kommt in den Trigger/Zeitplan.

                              "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
                              • paul53P paul53

                                @benutzer0815 sagte: jede Millisekunde geprüft ob die aktuelle Zeit dazwischen liegt, oder?

                                Nein, nur einmal bei Skriptstart. Die Uhrzeitprüfung muss in den 10-s-Trigger!

                                B Offline
                                B Offline
                                Benutzer0815
                                wrote on last edited by
                                #49

                                @paul53 Ja habe ich mir auch gerade schon gedacht. So ne?

                                72cde6b8-8424-454b-b117-25685981db1b-image.png

                                Ist die Frage was ressourcenschonender ist, alle 10 Sekunden noch die Zeitabfrage machen und dafür nachts die Mittewertberechnung und das Variablenbeschreiben sparen oder tagsüber die Zeitabfrage sparen und dafür nachts auch die Berechnung machen.

                                Habt ihr dafür ein Gefühl was sinniger ist?

                                paul53P 1 Reply Last reply
                                0
                                • B Benutzer0815

                                  @paul53 Ja habe ich mir auch gerade schon gedacht. So ne?

                                  72cde6b8-8424-454b-b117-25685981db1b-image.png

                                  Ist die Frage was ressourcenschonender ist, alle 10 Sekunden noch die Zeitabfrage machen und dafür nachts die Mittewertberechnung und das Variablenbeschreiben sparen oder tagsüber die Zeitabfrage sparen und dafür nachts auch die Berechnung machen.

                                  Habt ihr dafür ein Gefühl was sinniger ist?

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

                                  @benutzer0815
                                  Prüfen ist besser. Man kann zusätzlich noch den CRON-Job auf z.B. 4 bis 22 Uhr eingrenzen:

                                  Blockly_temp.JPG

                                  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

                                  1 Reply Last reply
                                  0
                                  • B Offline
                                    B Offline
                                    Benutzer0815
                                    wrote on last edited by Benutzer0815
                                    #51

                                    @paul53 Wie stellst du das ein?

                                    1c713506-384a-4b4d-8cc0-7c3bc8b8bb8f-image.png

                                    Hab jetzt CRON und WIZARD probiert aber beides mal sieht es nicht so aus wie bei deinem Screenshot.

                                    Und dieser CRON-Job heißt dann nichts anderes als das er diesen Zeitplan nur in der angegebenen Zeit macht und außerhalb pausiert, ja?

                                    paul53P CodierknechtC 2 Replies Last reply
                                    0
                                    • B Benutzer0815

                                      @paul53 Wie stellst du das ein?

                                      1c713506-384a-4b4d-8cc0-7c3bc8b8bb8f-image.png

                                      Hab jetzt CRON und WIZARD probiert aber beides mal sieht es nicht so aus wie bei deinem Screenshot.

                                      Und dieser CRON-Job heißt dann nichts anderes als das er diesen Zeitplan nur in der angegebenen Zeit macht und außerhalb pausiert, ja?

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

                                      @benutzer0815 sagte: Hab jetzt CRON und WIZARD probiert

                                      Nimm CRON.

                                      CRON_Temp.JPG

                                      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

                                      1 Reply Last reply
                                      0
                                      • B Benutzer0815

                                        @paul53 Wie stellst du das ein?

                                        1c713506-384a-4b4d-8cc0-7c3bc8b8bb8f-image.png

                                        Hab jetzt CRON und WIZARD probiert aber beides mal sieht es nicht so aus wie bei deinem Screenshot.

                                        Und dieser CRON-Job heißt dann nichts anderes als das er diesen Zeitplan nur in der angegebenen Zeit macht und außerhalb pausiert, ja?

                                        CodierknechtC Offline
                                        CodierknechtC Offline
                                        Codierknecht
                                        Developer Most Active
                                        wrote on last edited by
                                        #53

                                        @benutzer0815 sagte in Script lässt Instanz abstürzen:

                                        Hab jetzt CRON und WIZARD probiert

                                        Unter uns: Der WIZARD ist ziemlicher Käse.
                                        Nach meiner Erfahrung funktioniert der eher schlecht als recht.

                                        "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
                                        Reply
                                        • Reply as topic
                                        Log in to reply
                                        • Oldest to Newest
                                        • Newest to Oldest
                                        • Most Votes


                                        Support us

                                        ioBroker
                                        Community Adapters
                                        Donate

                                        518

                                        Online

                                        32.4k

                                        Users

                                        81.5k

                                        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