Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. [Vorlage] Generische Batteriestandsüberwachung + Vis-ausgabe

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    [Vorlage] Generische Batteriestandsüberwachung + Vis-ausgabe

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

      Hat hier jemand schon das Batteriescript in Jarvis eingebunden?
      Mich würde interessieren wie ich die Tabelle in Jarvis angezeigt bekomme (JSON Format)!

      Vielen Dank

      1 Reply Last reply Reply Quote 0
      • R
        RaLach last edited by RaLach

        Zunächst absoluten Respekt für das Script.

        Mir ist ein (kleiner) Fehler aufgefallen: Habe eine Batteriespannung, wo der Grenzwert exakt erreicht ist. Da die "Warn"-Bedingung erst bei Unterschreitung aktiv wird, die Markierung mit "Info" (geringste Batteriespannung) jedoch nur bei noch nicht erreichtem Grenzwert, bleibt die Zeile grün und die zweitkleinste Battreiespannung wird gelb.

        Ich habe daher in der Version "1.7.2" die Zeile 371 zusätzlich ein "=" spendiert und berücksichtige damit auch Spannungswerte auf dem Limit für die "Info"-Darstellung.

        P 1 Reply Last reply Reply Quote 2
        • P
          Pittini Developer @RaLach last edited by

          @ralach Danke, werd ich im nächsten update übernehmen.

          1 Reply Last reply Reply Quote 1
          • E
            esche last edited by

            Bin heute auf dieses Script gestoßen. Vielen Dank für dein Script und deine Mühe @Pittini , dies funktioniert für mich soweit...

            Bei mir wird das Gerät mit dem niedrigsten Akkus stand immer in orange markiert und der Status auf "info" gesetzt. Ein paar Anmerkungen/Punkte, welche mir hierzu aufgefallen sind.

            1. Die Farbe "Orange" ist für mich keine Farbe für den Status "info".

            2. Finde die Idee mit dem "Vorraussichtlich nächste zu wechselnde Batterie" (Voraussichtlich schreibt man übrigens nur mit einem r 😉 ) ganz gut, jedoch befürchte ich, dass diese so nicht so ganz korrekt arbeitet. Daher wäre es interessant zu wissen, wer diese Funktion nutzt und wie er hier diese Werte interpretiert?

            3. Dies ist aber auch bei Geräten so, bei denen die Spannung noch weit über Limit ist.
              Ist das so gewollt? Wenn ja, gibt es einen Konfiguration um dieses Verhalten zu beeinflussen? Falls nicht, würde das in meinem Fall bedeuten, dass ich in solchen Fällen immer eine orangene "Info" habe, welche ich teilweise die nächsten Monate ignorieren kann.

            4. In der Beschreibung ist aktuell nicht die aktuellste Version verlinkt. Ggf. wäre es sinnvoll diese anzupassen oder z. B. fix auf eine "latest" Version zu verlinken.

            Danke und Gruß
            Esche

            1 Reply Last reply Reply Quote 0
            • E
              esche last edited by esche

              Hier noch ein Beispiel zu Punkt 2:

              dab007b9-8d11-4970-8d85-1c7c947cbb4d-image.png

              Für mich wäre die nächste Batterie welche ich wechseln müsste, in der Grafik die 2., die rot angezeigt wird. Aktuell funktioniert diese ja noch, da das Limit ja nur für die "Batterie Low" Warnung verantwortlich ist. Laut Meldung müsste ich jedoch die 1. als nächstes wechseln. Und wenn es ganz blöd läuft und ich das 3. Gerät viel beanspruche, kann es sogar sein, dass dieses sogar noch früher schlapp macht...

              1 Reply Last reply Reply Quote 0
              • E
                esche last edited by

                Was mir gerade noch aufgefallen ist:
                Ich habe 2 Homematic Geräte, welche nur LowBat true/false melden.

                Funk-Fenster-Drehgriffkontakt (HM-Sec-RHS) und Zählersensor-Sendeeinheit Strom/Gas (HM-ES-TX-WM). Bei beiden Geräten habe ich die entsprechende Funktion (BatterieSpannung_XX) beim jeweiligen Datenpunkt hm-rpc.0.PEXXXXX.0.LOWBAT hinzugefügt. Jedoch werden mir diese Geräte nur als "dead" angezeigt, obwohl diese vor kurzem gesendet haben. Auch wenn ich die Variable "NotifyDeadDevices" auf "false" setze. Mache ich hier was falsch?

                Danke und Gruß
                Esche

                P 1 Reply Last reply Reply Quote 0
                • P
                  Pittini Developer @esche last edited by

                  @esche

                  1. zur Infozeile, ja das ist so gewollt, wenn Dir die Farbe nicht taugt oder was anderes, dann stells halt um, sind doch genug Möglichkeiten vorgesehen:
                    2021-02-25 20_47_05-Window.png

                  2. Homematic Geräte sind da sehr speziell, die aktualisieren den Lowbat Datenpunkt sehr selten, auch wennse durchaus Daten senden. Deswegen gibts ja den 2ten Check den Du dem Datenpunkt zuweisen kannst der wirklich aktualisiert wird.

                  3. NotifyDeadDevices bezieht sich auf Nachrichten, Email, Pushover etc. nicht auf die Funktion an sich.

                  E 1 Reply Last reply Reply Quote 0
                  • E
                    esche @Pittini last edited by

                    @pittini said in [Vorlage] Generische Batteriestandsüberwachung + Vis-ausgabe:

                    Homematic Geräte sind da sehr speziell, die aktualisieren den Lowbat Datenpunkt sehr selten, auch wennse durchaus Daten senden. Deswegen gibts ja den 2ten Check den Du dem Datenpunkt zuweisen kannst der wirklich aktualisiert wird

                    Danke für die Rückmeldung. Leider konnte ich den 2. Punkt nicht nachvollziehen, daher würde ich gerne nochmal nachfragen. Ich habe keine Geräte in der Funktion "DeadCheck" definiert. Warum werden dann Geräte als "dead" überhaupt angezeigt (batLow ist auch auf false) ?

                    P 1 Reply Last reply Reply Quote 0
                    • P
                      Pittini Developer @esche last edited by

                      @esche sagte in [Vorlage] Generische Batteriestandsüberwachung + Vis-ausgabe:

                      Danke für die Rückmeldung. Leider konnte ich den 2. Punkt nicht nachvollziehen, daher würde ich gerne nochmal nachfragen. Ich habe keine Geräte in der Funktion "DeadCheck" definiert. Warum werden dann Geräte als "dead" überhaupt angezeigt (batLow ist auch auf false) ?

                      Der DeadCheck wird grundsätzlich bei jedem Gerät durchgeführt. Der zusätzliche wurde eben für genau Deien Usecase implementiert.

                      A 1 Reply Last reply Reply Quote 1
                      • A
                        Alero @Pittini last edited by

                        @pittini
                        Hi,

                        die Frage von esche interessiert mich auch. habde die Wetterstation die auch nur LowBat true/false hat.
                        wäre toll wenn man sie einbinden könnte.

                        Gruß
                        Alero

                        P 1 Reply Last reply Reply Quote 0
                        • P
                          Pittini Developer @Alero last edited by Pittini

                          @alero Das Problem ist ja nicht dass nur lowbat true/false zur Verfügung steht, damit kommt das Skript klar (wird halt als 0% bzw. 100% gewertet). Das Problem ist, das der lowbat Datenpunkt seehr selten aktualisiert wird bei HM, selbst dann nicht wenn andere Daten gesendet werden. Deswegen gibts den Extra DeadCheck. Es steht also einer Einbindung der Wetterstation eigentlich nix im Weg.

                          1 Reply Last reply Reply Quote 0
                          • P
                            passuff last edited by passuff

                            Ich melde mich noch mal zurück. Ich scheitere leider immer noch daran, das Skript in Betrieb zu nehmen.
                            Ich habe es nun noch mal neu versucht:
                            Mi Home Geräte mit 3.2V.

                            1. Funktionsgruppe "BatterieUeberwachung_33" angelegt
                            2. Skript Verison 1.7.2 heruntergeladen und folgendes abgeändert:
                            const praefix = "0_userdata.0.BatterieUeberwachung_MiHome."; //Grundpfad für Script DPs
                            const FunktionBaseName = "BatterieUeberwachung_33"; //Name der Funktion welche für die Batterieüberwachung genutzt wird
                            
                            1. Java Skript Adapter neu gestartet
                            2. .BatteryMinLimit_ = 2.7V gesetzt
                              5.0 Skript gestartet

                            Jetzt bekomme ich folgende Einträge:

                            NextExpectedLowBatt:
                            Aktuell niedrigster Batteriestand (3.13V): Kinderzimmer OG3 bei Gerät TH_SpZ_OG3
                            Dazu die folgende Tabelle:

                            cba85219-788f-4297-95bf-eab3857bfbc5-image.png

                            Folgende Fehler habe ich entdeckt:

                            • Nennspannung wird nicht erkannt
                            • niedrigstes device ist eigentlich das Höchste
                            • Berechnung der Prozente komplett daneben

                            Was habe ich falsch gemacht?

                            Dominik F. 1 Reply Last reply Reply Quote 0
                            • Dominik F.
                              Dominik F. @passuff last edited by

                              @passuff

                              Es sieht so aus, als ob du selbstständig gewisse Dinge im Script geändert hast, mit dem es nicht klar kommt.

                              const FunktionBaseName = "BatterieSpannung_";
                              

                              Hast du z.B. geändert.

                              Wenn, müsste es wahrscheinlich so heissen:

                              const FunktionBaseName = "BatterieUeberwachung_";
                              

                              Die Spannung legst du ja über die Funktionsgruppe fest und die Zahl dahinter zieht der sich automatisch.
                              Dazu bin ich mir unsicher, ob es 3,2V Batterien überhaupt gibt bei diesen Geräten, schätze mal es sind 3V Batterien enthalten?
                              Wo hast du das Batterielimit von 2,7V her? Ich würde da eher auf die Erfahrungswerte des Programmierers setzen und die Standarteinstellung nehmen, glaube das müsste bei 3V dann 2,4V Limit sein.

                              P 1 Reply Last reply Reply Quote 0
                              • P
                                passuff @Dominik F. last edited by passuff

                                @dominik-f

                                Ich hatte die Funktionsgruppe nach Spannung festgelegt. Ich dachte ich müsste dafür den Funktionsgruppennamen und auch den Namen im Skript entsprechend abändern. Wenn ich dich richtig verstanden habe, reicht es im Skript lediglich den Namen bis zum Unterstrich "_" anzugeben?

                                CR2032 Lithium Ionen Zellen haben im voll geladenen Zustand 3.3V. Normale AA oder AAA haben 1.4-1.5V pro Zelle und man kommt daher vollgeladen auf maximal 3V.
                                Alle meine MiHome Geräte nutzen LiIonen "Knopfzellen", daher arbeiten diese mit 3.3V. (Im oberen Beitrag hatte ich mich verschrieben.)

                                EDIT: Nachdem ich die Benennung im Skript um die Batteriespannung gekürzt habe, funktioniert das Skrip nun endlich.

                                P 1 Reply Last reply Reply Quote 0
                                • P
                                  Pittini Developer @passuff last edited by

                                  @passuff sagte in [Vorlage] Generische Batteriestandsüberwachung + Vis-ausgabe:

                                  CR2032 Lithium Ionen Zellen haben im voll geladenen Zustand 3.3V. Normale AA oder AAA haben 1.4-1.5V pro Zelle und man kommt daher vollgeladen auf maximal 3V.

                                  Es geht um Nennspannung und die ist 3V. Dass da meist mehr drin ist, is schön aber Herstellerabhängig wie viel mehr. Also 3V angeben, das Skript macht dann halt z.B. 120% draus, was ja korrekt ist.
                                  Das Batterielimit kannste Dir tatsächlich setzen wie Dus brauchst, da sind die Geräte sehr unterschiedlich.

                                  P 1 Reply Last reply Reply Quote 0
                                  • P
                                    passuff @Pittini last edited by

                                    @pittini Wie berechnest du die Prozent? Linear oder nach Zellentyp?

                                    P 1 Reply Last reply Reply Quote 0
                                    • P
                                      Pittini Developer @passuff last edited by

                                      @passuff sagte in [Vorlage] Generische Batteriestandsüberwachung + Vis-ausgabe:

                                      @pittini Wie berechnest du die Prozent? Linear oder nach Zellentyp?

                                      Versteh grad die Frage nicht.

                                      P 1 Reply Last reply Reply Quote 0
                                      • P
                                        passuff @Pittini last edited by

                                        @pittini Ich würde gerne deine Berechnungsmethode verstehen. Beispiel:
                                        Zellentyp: Ni-MH
                                        Max: 1.4V
                                        Min: 1.2V
                                        MinMax: 0.22V/100%
                                        Ist: 1.3V
                                        Was gibst du als Prozentwert aus? 50% oder oder eher in Richtung 25%?
                                        Korrekt wäre vermutlich ca. 25% aufgrund des stark nichtlinearen Verlaufs der Kurve Spannung über SoC bei Ni-MH und dem sehr langsamen entladen. Hier ein paar Details:

                                        http://aacycler.com/post/nimh-open-circuit-voltage-vs-state-of-charge/

                                        P 1 Reply Last reply Reply Quote 0
                                        • P
                                          Pittini Developer @passuff last edited by Pittini

                                          @passuff Zeile 186 - dürfte selbsterklärend sein. Alles simple Prozentrechnung, linear. Ich mach da kein Gedöns, das stimmt eh nie genau, da müsste man noch die Temperatur mit berücksichtigen, welcher Akkutyp, bla und blupp.

                                          P 1 Reply Last reply Reply Quote 0
                                          • P
                                            passuff @Pittini last edited by

                                            @pittini
                                            verstehe...
                                            6935ec07-4e96-4348-bad6-9bd61221213a-image.png
                                            Warum ist lfd 15 gelb und was bedeutet info?
                                            Warum ist lfd 10 nicht rot? % life ist ja bereits 0%...

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            461
                                            Online

                                            31.7k
                                            Users

                                            79.9k
                                            Topics

                                            1.3m
                                            Posts

                                            javascript monitoring template
                                            81
                                            581
                                            109773
                                            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