Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. [Vorlage] Betriebsstundenzähler & Verbrauchsrechner

    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] Betriebsstundenzähler & Verbrauchsrechner

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

      das wars evtl, nun kommt was

      was soll ACK sein?

      Spalte 8 ein 'false'

      Wie bekomme ich das ganze nun visualisiert?

      Möchte die Tageswerte das Balkendiagramm.

      Ne Frage noch, warum realisiert man ganze nicht über einlesen der Werte

      aus der SQL Datenbank? Da kann man auch nach 2 Jahren entscheiden, welche

      Werte man auslesen/anzeigen möchte.

      Am liebsten wäre mir sowas wie im Anhang.

      Gruß
      2880_1.png
      2880_1.png

      1 Reply Last reply Reply Quote 0
      • K
        knopers1 last edited by

        @Noxx

        dann lass mal deine Konfig sehen. Bin momentan Arbeiten und würde direckt nach der Arbeit einsteigen wollen.

        In Gruppe fehlte mir Thema. Danke!

        Was ist mit ACK in der Tabelle Spezial einzutragen? Und vor allem Wo ? Kannst Du deine Konfig irgendwo uploaden oder das Script von Dir als Code hier einsetzen?

        Visualisieren kannst Du es mit Float Adapter!

        Edit: Habe gerade gelesen dass Du es als Balkendiagram haben möchtest. hmm, dann weis ich auch nicht weiter…

        1 Reply Last reply Reply Quote 0
        • N
          noxx last edited by

          @knopers1:

          @Noxx

          Was ist mit ACK in der Tabelle Spezial einzutragen? Und vor allem Wo ? Kannst Du deine Konfig irgendwo uploaden oder das Script von Dir als Code hier einsetzen? `
          2880_01.png

          1 Reply Last reply Reply Quote 0
          • N
            noxx last edited by

            Bin mal gespannt, was er da eintragen will 😮
            2880_01.png

            1 Reply Last reply Reply Quote 0
            • K
              knopers1 last edited by

              schau was der Kollege crep geschrieben hat

              http://forum.iobroker.net/viewtopic.php … &start=100

              und vor allem die Antwort vom looxar01 dadrunter!

              Zitat:

              Hi Crepp,

              Wenn keine Umrechnung eingegeben wird, dann ist das Format DDDDDD:HH:MM:SS hart verdrahtet.

              Du kannst aber einfach von Millisekunden umrechnen (Tabelle special) und bekommst dann einen numerischen WEert.

              Wenn du z.B. dazu im Divisor 1000 eingibst kannst du im Multiplikator

              z.B. 60 eingeben und du erhältst Minuten

              oder 3600 und der bekommst Stunden

              oder 86400 und bist bei Tagen.

              Dass solltest du dann noch mit einer Rundung versehen. z.B 1

              vG Looxer

              1 Reply Last reply Reply Quote 0
              • K
                knopers1 last edited by

                habe jetzt 0,31 m3 in der Theori entnommen. Habe zur Zeit noch ein Taster an dem Wemo dran :mrgreen:

                Den Wert für den echten Zählerstand muß ich noch anpassen.

                So sieht es aus…

                Ich denke, dass gescheite Zahlen erst nach 12:00 Uhr Nachst auftauchen werden....
                1526_unbenannt8.png

                1 Reply Last reply Reply Quote 0
                • N
                  noxx last edited by

                  @knopers1:

                  Wenn keine Umrechnung eingegeben wird, dann ist das Format DDDDDD:HH:MM:SS hart verdrahtet.

                  Du kannst aber einfach von Millisekunden umrechnen (Tabelle special) und bekommst dann einen numerischen WEert. `

                  Warum soll ich denn eine Umrechnung angeben, den Sinn verstehe ich nicht. Irgendwie werde ich mit

                  dem Script nicht 100% glücklich. Ich denke, ich werde mich in die SQL Abfrage einarbeiten, das macht

                  mehr Sinn. Die Daten sind ja schon alle in der DB vorhanden. Mit dem Script schreibe ich sie nun ein 2tes

                  mal irgendwo hin.

                  Gruß

                  1 Reply Last reply Reply Quote 0
                  • L
                    looxer01 last edited by

                    @noxx:

                    @knopers1:

                    Wenn keine Umrechnung eingegeben wird, dann ist das Format DDDDDD:HH:MM:SS hart verdrahtet.

                    Du kannst aber einfach von Millisekunden umrechnen (Tabelle special) und bekommst dann einen numerischen WEert. `

                    Warum soll ich denn eine Umrechnung angeben, den Sinn verstehe ich nicht. Irgendwie werde ich mit

                    dem Script nicht 100% glücklich. Ich denke, ich werde mich in die SQL Abfrage einarbeiten, das macht

                    mehr Sinn. Die Daten sind ja schon alle in der DB vorhanden. Mit dem Script schreibe ich sie nun ein 2tes

                    mal irgendwo hin.

                    Gruß ` Das sind nur initialwerte und sollten beim Update anders aussehen. Das Erklärung zur Umrechnung gilt nur für "Time", also zeitmessungen

                    Gesendet von meinem SM-G935F mit Tapatalk

                    1 Reply Last reply Reply Quote 0
                    • K
                      knopers1 last edited by

                      Das gibt es nicht….

                      Gestern Abend hatte ich vor mein Wemo an den Gaszähler anzuschließen. Alles war vorbereitet und ein Magnetkontakt hatte ich auch schon.

                      Ich machte die Luke auf und sah, dass der alte Gaszähler nicht mehr existiert und dafür etwas neuen gekommen ist.

                      Kurz nachgedacht und ja... Meine Frau erzählte mir mal, dass ein Mann für GAS vor einigen Wochen/Monaten da war... ich war Arbeiten in der Zeit. :evil:

                      siehe Bild.... alt und neu..

                      das wars mit Gaszähler auslesen.... Das machen die Gaswerke schon und die Stelle für den Kontakt ist auch schon belegt.

                      Kennt jemand das Sendemodul am Gaszähler? Dies wird vom Außen ausgelesen, wahrscheinlich über Bluetooth…

                      ich kööööönte sooooo kotzeeenn :shock:
                      1526_img_2017neu.jpg
                      1526_141211-nabu-gaszaehler-mdommel.jpeg

                      1 Reply Last reply Reply Quote 0
                      • K
                        knopers1 last edited by

                        Hat jemand schon versucht den externen Reedkontakt auf der Scheibe zu plazieren?

                        Mann könnte in der Theori den vorhandenen Reedkontakt benutzen. Leider ist es mir zu heiß, da der Wemo beim Neustart einen Impuls auslöst.

                        Dies würde bedeuten, dass an diesem Zähler 100l Gas dazu gezählt wird. 1 IMP = 0,1m3 bei neuem Gaszähler G4 RF1 was nicht entomen wurde.

                        Ich müßte den sensor woanders plazieren! Jemand ein Tipp für mich?

                        1 Reply Last reply Reply Quote 0
                        • K
                          knopers1 last edited by

                          @looxer01

                          ich habe jetzt einen Weg gefunden, damit beim booten des Wemos der Kontakt nicht kzrzgeschlossen wird… Ich werde jetzt den vorhandenen Kontakt nutzen und den Zähler damit auswerten.

                          Ich habe ein Zähler der mir 1 IMP = 0,1m3 liefert. Ich verbrauche Jährlich ca. 700 m3 Gas, was pro Tag im Schnitt 1,9m3 Gas ergibt.

                          Demnach sind es ca. 19 Schaltvorgänge am Tag. ( Winter mehr, Sommer weniger)

                          Jetzt müßte ich dein Script etwas umändern, damit pro Schaltvorgang ein 0,1 und nicht 0,01 gezählt wird.

                          Kannst Du nen Tipp geben wo? und wie?

                          Gruß

                          1 Reply Last reply Reply Quote 0
                          • L
                            looxer01 last edited by

                            @knopers1:

                            etzt müßte ich dein Script etwas umändern, damit pro Schaltvorgang ein 0,1 und nicht 0,01 gezählt wird.

                            Kannst Du nen Tipp geben wo? und wie? `

                            Hi,

                            wenn ich das richtig verstehe, dann möchtest du die Schaltvorgänge zählen und jeweils mit 0,01 multiplizieren.

                            Das sollte ohne Modifikation gehen.

                            1. Definition eines Datenpunktes für den Gaszähler und die Funktion SWITCH aktivieren

                            2. Definition eines weiteren Datenpunktes für den Switch (also der Datenpunkt, der durch den SWITCH erzeugt wurde) und mit Methode CALC mit 0,01 multiplizieren.

                            das habe ich zwar nicht so getestet (ich habe immer noch keinen Systemzugriff), sollte aber gehen.

                            vG Looxer

                            1 Reply Last reply Reply Quote 0
                            • K
                              knopers1 last edited by

                              Danke Looxer01,

                              ich konnte das Sketch des Wemos etwas umschreiben. Jetzt zählt das Teil pro Schaltvorgang 0,1 m3.

                              Jetzt versuche ich den Zählerstand anzupassen und baue das Teil an den Kontakt dran.

                              1 Reply Last reply Reply Quote 0
                              • K
                                knopers1 last edited by

                                @looxer01

                                kannst Du helfen?

                                schau Dir mal das Bild an. Ich habe gerade den Zählerstand angepasst und noch mal dein Script neu eingefügt.

                                Mein Gaszähler liefert Zahlen mit 2 Nachkommastellen…

                                Bei BSZ.Counter.Heizung.DELTA.GAS steht die Zahl ohne Nachkomma ??

                                In der Tabelle Spezial ist an der Position 1 nichts eingetragen.

                                Denoch sehe ich keine Zahlen nach der Komma.

                                Wenn ich in der Tabelle Spezial an der Position 1 eine 2 eintrage, müßte da nicht eine Zahl mit zwei Nachkommastellen auftauchen?

                                special[0]  =   ['2'     ,''     ,''                     ,''         ,''     ,''                 ,''                 ,'false'                         ,''             ,''             ,''                 ,''             ,''                 , ''     ]; 
                                

                                1526_unbenannt.png

                                1 Reply Last reply Reply Quote 0
                                • L
                                  looxer01 last edited by

                                  @knopers1:

                                  In der Tabelle Spezial ist an der Position 1 nichts eingetragen.

                                  Denoch sehe ich keine Zahlen nach der Komma.

                                  Wenn ich in der Tabelle Spezial an der Position 1 eine 2 eintrage, müßte da nicht eine Zahl mit zwei Nachkommastellen auftauchen? `

                                  Nachkommastellen werden nur gezeigt, wenn es welche gibt

                                  Beispiele:

                                  366.00 = 366

                                  366.10 = 366.1

                                  366.12 = 366.12

                                  Position 1 nichts eingetragen heisst, dass es keine Rundung gibt. Somit werden alle existierenden Nachkommastellen angezeigt. Ansonsten wird gerundet.

                                  Im System-Bereich der Daten werden aber alle Nachkommastellen geführt. Es gibt somit keinen Verlust bezüglich gerundeter Nachkommastellen.

                                  vG Looxer

                                  1 Reply Last reply Reply Quote 0
                                  • K
                                    knopers1 last edited by

                                    Danke Looxer, habe verstanden! 🙂

                                    1 Reply Last reply Reply Quote 0
                                    • K
                                      knopers1 last edited by

                                      Hallo Looxer01,

                                      ich habe jetzt ein wenig dein Script mit meiner Hardware getestet… Die Werte sind plausibel sowei. Alles gut!

                                      Allerdings wird bei mir zur Zeit alles in m³ ausgegeben.

                                      Ich würde dies in KWh ausgeben wollen, da die Gasjahres-Rechnung auch in KWh berechnet wird.

                                      Dazu bruche ich den Brennwert. Diesen werde ich von der letzten Abrechnung irgendwo ablesen können.

                                      Kannst Du mir mal grob sagen, was in deinem Script umzustellen ist, damit die Werte in KWh ausgegeben werden?

                                      Ganz grob gesehen entspricht ein 1 m³ bei einem Brennwert von 10 = 10KW

                                      Demnach sollten 0,1m³ pro Taktung meines Gaszählers 1 KW entsprechen.

                                      Soweit alles gut, nur wie stelle ich es ein, wenn mein Brennwert 12 oder 8 ist ???

                                      Oder viel besser were es, wenn man zusätzlich noch neben den m³ auch noch eine Position hätte die in KWh ausgegeben wird. Geht das?

                                      Somit könnte man den Gasverbrauch in m³ und parallel dazu in KWh anzeigen lassen.

                                      1 Reply Last reply Reply Quote 0
                                      • L
                                        looxer01 last edited by

                                        Hi,

                                        hab mal nachgelesen.

                                        Die Berechnung sollte sein

                                        KwH = m3 x Brennwert x Zustandszahl

                                        wobei der Brennwert von dem Gasverkäufer kommt und die Zustandszahl sich ergibt aus z.B. Temperatur an der Zapfstelle, Luftdruck etc.

                                        Wenn du die Zustandszahl ausser acht laesst, dann brauchst du nur in Tabelle "special" den Faktor 12 eintragen. Das wars.

                                        Wenn du mit der Zustandszahl arbeiten möchtest dann könntest du einen Durchschnittswert verwenden, z.B. aus dem Letzten Jahr. Die Versorger machen monatliche updates. Also sollte es möglich sein, diesen Wert zu erhalten. Wenn die Zustandszahl z.B. 0,95 beträgt, dann

                                        muss eben im Faktor 11.4 eingetragen werden. (12 x 0,95)

                                        Wenn du genau arbeiten möchtest ist es komplizierter, da sich ja die Zustandszahl monatlich aendert. Für solche Berechnungen habe ich einen Userexit vorgesehen. D.h. aber, dass die Berechnung in Javascript gemacht werden muss. Zudem muss eine Tabelle vorgesehen werden, um die monatlichen Werte jeweils zu hinterlegen.

                                        Natürlich kannst du auch m3 und kWh führen. dafür musst du aber eben mit zwei Zeilen in den Tabellen arbeiten. Beispielsweise durch die Methode CALC kannst du die kWh rechnen, sobald die m3 aus dem Zaehler sich aendern.

                                        vG Looxer

                                        1 Reply Last reply Reply Quote 0
                                        • K
                                          knopers1 last edited by

                                          Danke Looxer01,

                                          die Zustandszahl möchte ich ausser acht lassen. Das reicht mir.

                                          Um jetzt noch neben der m3 die KWh führen zu können, solle ich über zwei Zeilen gehen schreibst Du….

                                          Also, in der Gruppe die neuen Zeile auf CALC setzten.

                                          Gruppen[ 1]  = ['javascript.0.Gaszaehler.Wert'                                ,'Heizung-KWh'                                 ,false  ,false  ,false  ,false  ,false  ,false  ,'CALC'      ,''     ,''     ,''     ,''     ,''     ,''     ,''     ,''     ,''     ,false ,false]; //
                                          

                                          In der Zweiten Tabelle kommt nur ein Name bzw Beschreibung herein

                                          logname[1]  =   ['Gas-KWh'      ,''         ,''         ,''                 ,''         ,''         ,''         ,''     ,''     ,''];
                                          

                                          und in der Tabelle Spezial unter Punkt 3 den Brennwert eintragen.zB 12 oder 8 Richtig? Habe ich noch etwas übersehen?

                                          special[1]  =   [''     ,''     ,'12'                     ,''         ,''     ,''                 ,''                 ,''                         ,''             ,''             ,''                 ,''             ,''                 ,''      ]; 
                                          
                                          1 Reply Last reply Reply Quote 0
                                          • L
                                            looxer01 last edited by

                                            Hi

                                            @knopers1:

                                            lso, in der Gruppe die neuen Zeile auf CALC setzten.

                                            Code: Alles auswählen

                                            Gruppen[ 1] = ['javascript.0.Gaszaehler.Wert' ,'Heizung-KWh' ,false ,false ,false ,false ,false ,false ,'CALC' ,'' ,'' ,'' ,'' ,'' ,'' ,'' ,'' ,'' ,false ,false]; // `

                                            ich glaube der Datenpunkt 'javascript.0.Gaszaehler.Wert" ist dein Gaszaehler. Ich meinte den Datenpunkt mit dem m3 Wert aus dem BSZ.

                                            ansonsten sieht es gut aus. (Du willst keine Historie z.B. Monatswerte führen ?)

                                            vG Looxer

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            628
                                            Online

                                            31.8k
                                            Users

                                            79.9k
                                            Topics

                                            1.3m
                                            Posts

                                            javascript
                                            51
                                            333
                                            78543
                                            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