Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Blockly
    5. Script lässt Instanz abstürzen

    NEWS

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    Script lässt Instanz abstürzen

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

      Hallo zusammen,

      ich versuche mich gerade daran einen Mittelwert des PV-Überschusses in eine Variable zu speichern, damit ich anhand dieser dann im Nachgang mein Auto laden kann.

      04a81a06-6d80-4544-a3e0-c86fc07faf68-image.png

      Aktuell funktioniert es nicht. Ich könnte mir vorstellen, dass es an diesem Part liegt:

      2e496da3-6f20-4321-84f4-adb9d2263aef-image.png

      Passen hier die Typen zusammen?
      Unter Objekte finde ich bei Startup_time

      53546ded-ccc9-4d43-81fa-d219ac7c0ed4-image.png

      Als Auswahl finde ich aber keine Zeichenkette:

      bdad99a9-5f62-4b56-891e-f8242be6b2b5-image.png

      Der Wert des Objektes wird so angezeigt:
      47455fc9-acd3-4cfa-b382-9fc9991599a3-image.png

      Aber auch b123cc20-f991-4ce7-999a-84bc3a18dc9a-image.png funktioniert nicht.

      Oder liegt der Fehler woanders?

      Habe auch schon das versucht f8c4208f-0172-43b9-b506-df7a303bb66b-image.png um die Zeit als Fehlerquelle rauszunehmen, aber dann stürzt Javascript ab.

      Für einen Hinweis wäre ich dankebar.

      Grüße

      paul53 1 Reply Last reply Reply Quote 0
      • paul53
        paul53 @Benutzer0815 last edited by

        @benutzer0815 sagte: vorstellen, dass es an diesem Part liegt:

        Richtig. "wiederhole solange" erzeugt regelmäßig eine Endlosschleife.

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

          @paul53 Naja während der Betriebszeit des Wechselrichters soll die Schleife ja auch durchgehend laufen und alle 10 Sekunden die Werte aktualisieren.

          Ich dachte übersetzt heißt das: Solange die aktuelle Uhrzeit zwischen der Startzeit des Wechselrichters und der Abschaltzeit des Wechselrichters liegt mache alle 10 Sekunden ....

          Verstehe ich das falsch?

          paul53 Homoran 2 Replies Last reply Reply Quote 0
          • paul53
            paul53 @Benutzer0815 last edited by paul53

            @benutzer0815 sagte: Verstehe ich das falsch?

            Ja. Die Abfrage der Uhrzeit muss innerhalb des 10-s-Triggers erfolgen. In welchem Format liegen die beiden Zeiten vor?
            Die Schleife erzeugt tausende neue Trigger, wenn die Zeitbedingung erfüllt ist - bis die JS-Instanz abstürzt.

            B 1 Reply Last reply Reply Quote 0
            • Homoran
              Homoran Global Moderator Administrators @Benutzer0815 last edited by

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

              die Schleife ja auch durchgehend laufen und alle 10 Sekunden die Werte aktualisieren.

              das macht sie allerdings nicht alle 10 Sekunden, sondern im Millisekundentakt

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

                @paul53 Ah ok. Aber wenn ich das so rum mache, dann wird ja auch nachts alle 10 Sekunden die Uhrzeit mit der Start- und Abschatzeit des Wechselrichters verglichen. Mein Anliegen war das nachts das Skript garnichts macht.

                Bzgl. Format habe ich ja oben schon geschrieben was ich gefunden habe. Hast du noch einen anderen Tipp wo ich nachschauen kann? Es handelt sich übrigens um einen Huawei Smartmeter und Wechselrichter (SUN2000)

                B paul53 2 Replies Last reply Reply Quote 0
                • B
                  Benutzer0815 @Benutzer0815 last edited by

                  @benutzer0815 36201b63-b65b-4f46-8119-44ac4609c400-image.png
                  So macht das ja dann auch keinen Sinn. Dann wird ja wieder das Skript ewig ausgeführt.
                  Ah jetzt verstehe ich so muss ich das machen oder:

                  81dacd51-cfb3-448f-ae15-f330bc2c0d3d-image.png

                  Beim ersten Zeitplan sind es 10 Minuten und beim zweiten 10 Sekunden.

                  So aktualisiere ich alle 10 Sekunden den Wert und wenn die Abschaltzeit erreicht wurde, prüfe ich alle 10 Minuten ob die Startzeit wieder erreicht wurde, oder?

                  1 Reply Last reply Reply Quote 0
                  • paul53
                    paul53 @Benutzer0815 last edited by paul53

                    @benutzer0815 sagte: Mein Anliegen war das nachts das Skript garnichts macht.

                    So funktioniert Javascript nicht, denn es arbeitet Ereignis gesteuert (in dem Fall alle 10 s).
                    Vorschlag:

                    Blockly_temp.JPG

                    Außerhalb des Zeitraums wird halt keine Aktion ausgeführt.
                    Was enthält der Datenpunkt "Active_power"?

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

                      @paul53 said in Script lässt Instanz abstürzen:

                      Was enthält der Datenpunkt "Active_power"?

                      Das ist die aktuelle Erzeugungsleistung der PV-Anlage.

                      Das mit dem Textbaustein sieht etwas umständlich aus. Scheint aber auch nicht zu funktionieren, den ich bekomme ganz viel hiervon:
                      5f4721c0-c490-40f5-8584-15743856ac32-image.png
                      So sah es nun bei mir aus:

                      81865fb1-f2f5-4f82-89a1-0ec4e01a42f5-image.png

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

                        @benutzer0815 Irgendetwas anderes stimmt bei mir nicht.
                        Ich habe es jetzt mal komplett reduziert auf:

                        c7246866-3704-45b9-8e91-4a4bb7c8c0a6-image.png

                        In der Objektansicht steht immernoch nichts:
                        d8b4fb89-fa9c-4b23-8d7e-b85ae1e54da9-image.png

                        Das Objekt ActivePower zeigt aber:

                        eaa001e5-1ca0-4a06-9d10-39127fc1c880-image.png

                        Beide Objekte sind eine Zahl und beide sind les- und schreibbar.
                        Wo kann der Fehler liegen?

                        Codierknecht 1 Reply Last reply Reply Quote 0
                        • Codierknecht
                          Codierknecht Developer Most Active @Benutzer0815 last edited by

                          @benutzer0815
                          Du musst auch den Wert nehmen und nicht das ganze Objekt.

                          7105c2cb-1765-48bb-8f99-8323a3c11fb6-image.png

                          B 1 Reply Last reply Reply Quote 1
                          • B
                            Benutzer0815 @Codierknecht last edited by

                            @codierknecht Ah ok. Also so:

                            cc4fdefe-05cd-4ebc-a59e-b10139679d2e-image.png

                            Bei der ersten ObjectID kann ich das so aber nicht machen. Also aktualisiere Wert von ÜberschussZurVerfügung.

                            So funktiniert es nu so halb. Also ich habe jetzt im Objekt nicht mehr (null) stehen sondern es wird tatsächlich ein Wert geschrieben. Allerdings immer nur 0.
                            Aktuell müsste der Wert negativ sein. Gibt es dahingehend etwas zu beachten? Kann der Zustandstyp Zahl des Objekts negativ sein? Testweise habe ich mal als Min -10000 und Max 50000 festgelegt. Aber hilft auch nichts.
                            Kann die Funktion runde negative Werte?

                            Codierknecht 1 Reply Last reply Reply Quote 0
                            • Codierknecht
                              Codierknecht Developer Most Active @Benutzer0815 last edited by

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

                              Kann die Funktion runde negative Werte?

                              Selbstverständlich.

                              Lass Dir doch erstmal mit 'nem Debug-Block ausgeben, was da drinsteht.

                              4cad9703-db00-4f44-b955-6915c44a1221-image.png

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

                                @codierknecht Ohne was geändert zu haben geht es nun. Zumindest zeigt er mir Werte an.
                                Seltsamerweise aber nicht die aus dem anderen Objekt.

                                7bc511c9-c832-4654-866a-077f88792f72-image.png

                                Im Grunde kopiert doch mein aktuelles Skript den Wert aus ActivePower nur. Von den Werten her sieht es aber eher so aus als wenn in meiner Variablen die PV-Erzeugungsleistung gespeichert wird. Obwohl das Objek aus dem ich kopiere ja die Differenz anzeigt. Also Erzeugung-Verbrauch. Sehr interessant.

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

                                  @benutzer0815 Jetzt wirds richtig verrückt.

                                  Ich habe das Skript "test" in dem ich nur das habe:
                                  8e82ec59-6bbe-4c42-8708-ec966c8e9df5-image.png

                                  Und nun habe ich mal im ursprünglichen Skript "Berechnung PV-Überschuss" auch dieses debug eingefügt um zu sehen was da passiert:

                                  61e5c425-4421-4ade-ab60-bd9b2be36796-image.png

                                  e02b0e41-70d4-4878-b3d6-9413db83513c-image.png

                                  Der gibt mir jetzt den Namen des anderen Skripts aus?!

                                  Codierknecht paul53 2 Replies Last reply Reply Quote 0
                                  • Codierknecht
                                    Codierknecht Developer Most Active @Benutzer0815 last edited by

                                    @benutzer0815
                                    Starte mal die JS-Instanz neu ...

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

                                      @codierknecht Hilft leider auch nicht.

                                      Thomas Braun 1 Reply Last reply Reply Quote 0
                                      • Thomas Braun
                                        Thomas Braun Most Active @Benutzer0815 last edited by Thomas Braun

                                        @benutzer0815

                                        Liegen da Skripte im Verzeichnis 'global'?

                                        B 1 Reply Last reply Reply Quote 0
                                        • B
                                          Benutzer0815 @Thomas Braun last edited by Benutzer0815

                                          @thomas-braun sieht nicht so aus

                                          0c2bd7fc-429e-424b-831c-8991729225ea-image.png

                                          Müste ich diese Skripte nicht hier auch sehen können?

                                          f97ecc63-0cde-475d-ae62-4f259389f125-image.png

                                          B Codierknecht 2 Replies Last reply Reply Quote 0
                                          • B
                                            Benutzer0815 @Benutzer0815 last edited by

                                            @benutzer0815 Ich wollte gestern parallel noch die vis 2 ausprobieren. Dazu musste ich im Repository auf Beta umstellen und habe auch bei den Adaptern alles aktualisiert. Vis 2 ging dann aber nicht zu installieren Irgendwas mit JS controller 4.2.2 statt 5.0.0 oder so. Da habe ich dann abgebrochen und wieder auf stable zurück gestellt. Nun habe ich bei einigen Adaptern höhere installierte Versionen als verfügbar ist.

                                            Kann die Problematik daher rühren?

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            934
                                            Online

                                            31.7k
                                            Users

                                            79.6k
                                            Topics

                                            1.3m
                                            Posts

                                            5
                                            53
                                            2538
                                            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