Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Blockly
    5. Summe ist nicht korrekt ?

    NEWS

    • Wir empfehlen: Node.js 22.x

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker goes Matter ... Matter Adapter in Stable

    Summe ist nicht korrekt ?

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

      @humidor Lass doch mal die vier Einzelwerte und das Rechenergebnis als Logging durch das Script ausgeben ...

      Vielleicht bricht ja SE/Power kurzzeitig auf 0 zusammen ... Dann käme nach obigen Werten ~ 3505 W heraus, was ausreichend nahe an dem Ergebnis liegt ... (sind ja in etwas zeitlichem Abstand - mindestens Sekunden - gemachte Screenshots)

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

        @humidor
        Nimm nur den DP als Trigger, der im Zyklus zuletzt aktualisiert wird oder baue eine kurze Verzögerung (100 ms) ein, die vorher gestoppt wird, damit nur zeitlich zusammenhängende Werte addiert werden.

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

          @paul53 hmm, zyklus, hier gibt es mM keinen, jedes Gerät ist für sich aktiv, unabhängig von den anderen und Mqtt liefert passiv Werte, wenn sich was ändert wird aktualisiert
          das ist jetzt auch nicht so kritisch, ob der Wert 100% stimmt.

          das Logging probiere ich mal

          Bildschirmfoto 2024-10-18 um 11.01.03.png
          der SE fehlt
          am Wert selbst liegt das nicht
          Bildschirmfoto 2024-10-18 um 11.02.59.png

          was mich stört, man legt einen Alias an, dennoch im Blockly wird immer die Ausgangsvariable angezeigt, im Alias gibt es auch Umrechnungen usw....

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

            @humidor sagte: das Logging probiere ich mal

            Wie man sieht, kommen alle 4 Werte unmittelbar nacheinander. Der DP mit dem Wert 5523 triggert zuletzt.

            Humidor MartinP 2 Replies Last reply Reply Quote 0
            • Humidor
              Humidor @paul53 last edited by

              @paul53 Bildschirmfoto 2024-10-18 um 11.06.52.png

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

                @paul53 Der letzte Wert wird in der Summe nicht berücksichtigt ... nur die ersten drei Werte ...

                Humidor 1 Reply Last reply Reply Quote 0
                • Humidor
                  Humidor @MartinP last edited by

                  @martinp alle Werte sind vor der Addierung vorhanden....

                  Humidor MartinP 2 Replies Last reply Reply Quote 0
                  • Humidor
                    Humidor @Humidor last edited by

                    hab mehrere Varianten probiert, auch nur Trigger auf den SE Wert
                    es ändert nichts

                    dh es liegt am Datenpunkt, der wird nicht richtig verarbeitet

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

                      @humidor sagte: es liegt am Datenpunkt, der wird nicht richtig verarbeitet

                      Versuche es mal so:

                      Blockly_temp.JPG

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

                        @paul53 nein, das liegt nicht daran

                        habs schon gefunden, er musst nach Zahl konvertiert werden, jetzt fkt. es.

                        1 Reply Last reply Reply Quote 0
                        • MartinP
                          MartinP @Humidor last edited by MartinP

                          @humidor Das sehe ich ja auch...

                          Um der Sache auf den Grund zu gehen, könnte man zum Einen die Werte direkt am Anfang des Skriptes in Variablen ablegen, um sozusagen einen "Snapshot" zu haben, und dann nur noch über die Variablen arbeiten, sowohl im Logging, als auch in den Berechnungen...

                          Dann könnte man sich das generierte Javascript des Blockly anschauen,

                          und auch mit der Reihenfolge der Summenbildung im Blockly spielen, ob es immer der ..22... Wert ist, der unterschlagen wird, oder ob es immer der letzte Wert der Summenbildung ist der unter den Tisch fällt ...

                          Edit: Hatte Deinen Post nicht gesehen, mitten im Schreiben klingelte das Telefon ...

                          habs schon gefunden, er musst nach Zahl konvertiert werden, jetzt fkt. es.

                          Humidor 1 Reply Last reply Reply Quote 0
                          • Humidor
                            Humidor @MartinP last edited by

                            @martinp ich habe den SE Wert auf eine neue Variable geschrieben und da hat mir die Meldung " String auf Number" gleich auch die Ursache verraten, das wars.
                            Warum die Datenpunkte aber unterschiedlich sind, das überlasse ich iobroker, das zu beantworten....

                            MartinP 1 Reply Last reply Reply Quote 0
                            • MartinP
                              MartinP @Humidor last edited by MartinP

                              @humidor Dieses Problem hat mich etwas ins Überlegen gebracht: Wie kriegt man nähere Informationen zum Inhalt von Datenpunkten, ob es ein String, ein Zahl oder ein boolean ist ...

                              Bei den userdata Datenpunkten klickt man auf den Stift und sieht dann sofort, was Sache ist, bei den meisten anderen Datenpunkten gibt es den Stift nicht ...

                              0920fb42-8e99-4147-9b04-0c6a62eff552-grafik.png

                              Aus der Konsole kann man sich die Daten alle holen:

                              martin@iobroker-test-sicher:~$ iob object get 0_userdata.0.Puls-Rolltor
                              {"common":{"name":"Puls-Rolltor","desc":"Manuell erzeugt","role":"state","type":"boolean","read":true,"write":true,"def":false},"type":"state","native":{},"from":"system.adapter.admin.0","user":"system.user.admin","ts":1680183249917,"_id":"0_userdata.0.Puls-Rolltor","acl":{"object":1636,"state":1636,"owner":"system.user.admin","ownerGroup":"system.group.administrator"}}
                              
                              

                              .... role : state, type : boolean ...

                              Im Browser scheint das nicht sehr offensichtlich, wie man an die Info kommt ...

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

                                @martinp sagte: bei den meisten anderen Datenpunkten gibt es den Stift nicht ...

                                Im Expertenmodus gibt es den Stift bei allen Objekten.

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

                                  @paul53 sagte in Summe ist nicht korrekt ?:

                                  @martinp sagte: bei den meisten anderen Datenpunkten gibt es den Stift nicht ...

                                  Im Expertenmodus gibt es den Stift bei allen Objekten.

                                  Hand -> Stirn.... 🙄

                                  Humidor 1 Reply Last reply Reply Quote 0
                                  • Humidor
                                    Humidor @MartinP last edited by

                                    @martinp das ist richtig, aber warum legt Alias bzw. iobroker mal "string" mal "mixed" mal "nubers" an, das meinte ich
                                    beim SMA ist es mixed
                                    beim SE ist es string
                                    ....

                                    MartinP 1 Reply Last reply Reply Quote 0
                                    • MartinP
                                      MartinP @Humidor last edited by

                                      @humidor Das kann man doch beim Anlegen steuern, oder gehst Du über den Alias-Adapter - da wird ggfs. der Alias-Datenpunkt den Datentyp des Quell-Datentyps aufgedrückt bekommen?

                                      9009a560-9442-4d63-8e88-d8a41d02c9d5-grafik.png

                                      Humidor 1 Reply Last reply Reply Quote 0
                                      • Humidor
                                        Humidor @MartinP last edited by Humidor

                                        @martinp beim Alias Manager geht man nicht den Umweg, den DP vorher selbst nazulegen
                                        und dort ist überall number drin.

                                        MartinP 2 Replies Last reply Reply Quote 0
                                        • MartinP
                                          MartinP @Humidor last edited by

                                          @humidor Dann beschwer Dich beim Entwickler dieses Alias Managers ...

                                          Ich lege die Alias-Datenpunkte lieber selber an - da weiß ich dann, dass es auch richtig gemacht wird ...

                                          Habe den Alias-Manager mal ausprobiert, und beim ersten Test gedacht, dass er mir mehr Arbeit macht, als abnimmt ...

                                          Wenn ich mir aber die Anleitung bei Github anschaue

                                          https://github.com/iobroker-community-adapters/ioBroker.alias-manager

                                          ... dann kann man da auch den Datentyp des Alias wählen, wenn man einen anlegt ...

                                          e99ef5c6-a92f-43b5-88e6-4b0efac79d73-grafik.png

                                          Wenn man natürlich die "Autocreate" Funktion benutzt, und nicht so genau hinschaut, was die Automatik da gemacht hat, passiert so etwas...

                                          Humidor 1 Reply Last reply Reply Quote 0
                                          • Humidor
                                            Humidor @MartinP last edited by Humidor

                                            @martinp ich benutze keine Auto-Funktion, lege jeden DP im Alias direkt an
                                            doppelte Arbeit mach ich nicht
                                            der Datentyp wird beim anlegen bestimmt, hatte ich doch geschrieben
                                            nein, ich beschwere mich nicht, wenn dann gibt man eine Info weiter.
                                            heißt noch immer nicht, dass es der Alias falsch macht, Indizien sprechen aber dafür.

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            738
                                            Online

                                            32.0k
                                            Users

                                            80.3k
                                            Topics

                                            1.3m
                                            Posts

                                            3
                                            23
                                            803
                                            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