Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

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.2k

Script lässt Instanz abstürzen

Geplant Angeheftet Gesperrt Verschoben Blockly
53 Beiträge 5 Kommentatoren 5.5k Aufrufe 2 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • 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
    schrieb am zuletzt editiert von
    #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 Antwort Letzte Antwort
    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
      schrieb am zuletzt editiert von
      #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 Antworten Letzte Antwort
      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
        schrieb am zuletzt editiert von
        #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 Antwort Letzte Antwort
        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
          schrieb am zuletzt editiert von
          #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 Antwort Letzte Antwort
          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
            schrieb am zuletzt editiert von 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 Antwort Letzte Antwort
            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
              schrieb am zuletzt editiert von
              #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 Antworten Letzte Antwort
              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
                schrieb am zuletzt editiert von
                #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 Antwort Letzte Antwort
                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
                  schrieb am zuletzt editiert von
                  #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 Antwort Letzte Antwort
                  0
                  • CodierknechtC Codierknecht

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

                    B Offline
                    B Offline
                    Benutzer0815
                    schrieb am zuletzt editiert von
                    #43

                    @codierknecht Hab ich. Sieht gut aus.

                    1 Antwort Letzte Antwort
                    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
                      schrieb am zuletzt editiert von
                      #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 Antwort Letzte Antwort
                      1
                      • paul53P paul53

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

                        Wie hier gezeigt.

                        B Offline
                        B Offline
                        Benutzer0815
                        schrieb am zuletzt editiert von
                        #45

                        @paul53 Super danke!

                        B 1 Antwort Letzte Antwort
                        0
                        • B Benutzer0815

                          @paul53 Super danke!

                          B Offline
                          B Offline
                          Benutzer0815
                          schrieb am zuletzt editiert von
                          #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 Antworten Letzte Antwort
                          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
                            schrieb am zuletzt editiert von 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 Antwort Letzte Antwort
                            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
                              schrieb am zuletzt editiert von
                              #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 Antwort Letzte Antwort
                              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
                                schrieb am zuletzt editiert von
                                #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 Antwort Letzte Antwort
                                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
                                  schrieb am zuletzt editiert von 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 Antwort Letzte Antwort
                                  0
                                  • B Offline
                                    B Offline
                                    Benutzer0815
                                    schrieb am zuletzt editiert von 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 Antworten Letzte Antwort
                                    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
                                      schrieb am zuletzt editiert von
                                      #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 Antwort Letzte Antwort
                                      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
                                        schrieb am zuletzt editiert von
                                        #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 Antwort Letzte Antwort
                                        0
                                        Antworten
                                        • In einem neuen Thema antworten
                                        Anmelden zum Antworten
                                        • Älteste zuerst
                                        • Neuste zuerst
                                        • Meiste Stimmen


                                        Support us

                                        ioBroker
                                        Community Adapters
                                        Donate

                                        348

                                        Online

                                        32.4k

                                        Benutzer

                                        81.5k

                                        Themen

                                        1.3m

                                        Beiträge
                                        Community
                                        Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                        ioBroker Community 2014-2025
                                        logo
                                        • Anmelden

                                        • Du hast noch kein Konto? Registrieren

                                        • Anmelden oder registrieren, um zu suchen
                                        • Erster Beitrag
                                          Letzter Beitrag
                                        0
                                        • Home
                                        • Aktuell
                                        • Tags
                                        • Ungelesen 0
                                        • Kategorien
                                        • Unreplied
                                        • Beliebt
                                        • GitHub
                                        • Docu
                                        • Hilfe