[Blockly] Gaszähler -> Stand und Verbrauch (auch monatlich)

VPN/Proxy erkannt

Es scheint, dass Sie einen VPN- oder Proxy-Dienst verwenden. Bitte beachten Sie, dass die Nutzung eines solchen Dienstes die Funktionalität dieser Webseite einschränken kann.

    • Offizieller Beitrag
    • Autor

    Hier möchte ich die Umsetzung eines Gaszählers vorstellen. Die Installation und die Funktionsweise ist meinem Aufbau geschuldet, hier kann individuell auf eigene Wünsche angepasst werden.

    Ziel ist die Darstellung des Gaszählerstandes und des Gasverbrauches.

    Gesamt-Skript (Blockly) in #3 zum Download bereitgestellt!

    Benötigte Geräte:

    • Reedkontakt als Schließer -> einfacher Reedkontakt erhältlich z.B. bei Conrad
    • Shelly UNI

    Installation:

    • Reedkontaktmontage direkt an der Impulsnehmeraufnahme des Gaszähler (Montageanleitungen siehe WorldWideWeb!)
    • -> Eingang Schließer Reedkontakt - 12/24VDC
    • Shelly UNI siehe Anschlussschemen
    • -> Pin 1+2 - 12/24VDC;
    • -> Pin 8 - Ausgang Schließer Reedkontakt

    Funktionsweise:

    • durch einen internen Magneten wird bei jedem Nulldurchgang der dritten Nachkommastelle des Gaszählers der Reedkontakt geschlossen
    • der Shelly UNI registriert diesen Impuls mit dem Anziehen des Relais an Channel 2
    • im Shelly UNI wird im Channel 2 ein Timer gesetzt -> AUTO OFF von 3 sec.
    • diese entstehenden Impulse werden im ioBroker addiert und als Zählerstand in m³ ausgegeben
    • anhand der Zustandszahl, des Brennwertes und des Zählerstandes wird der Zählerstand (in m³) in den Verbrauch (in kWh) umgerechnet
    • Zustandszahl und Brennwert sind der Gasrechnung des Gasversorgers zu entnehmen!

    Umsetzung:

    Der Inhalt kann nicht angezeigt werden, da Sie keine Berechtigung haben, diesen Inhalt zu sehen.
    • "System"bausteine:
    • Objekt ID: Variable anlegen: -> Gaszähler.Stand
    • im "Text"baustein mit "" festlegen
    • Objekt ID: Variable anlegen: -> Gaszähler.Verbrauch
    • im "Text"baustein mit "kWh" festlegen
    • Variablen sichtbar unter "javascript.0/Gaszähler/..."


    • "Trigger"bausteine:
    • Objekt ID: Shelly UNI/Relay1/Switch
    • "ist wahr", weil Reedkontakt ein Schließer ist!
    • "System"baustein: aktualisiere "Gaszähler.Stand"
    • "Mathematik"baustein:
    • + 0.01 -> abzulesen auf dem Gaszähler -> 1 imp. = 0.01 m³ -> 1 Umdrehung entspricht 0.01 m³
    • "Trigger"bausteine:
    • Objekt ID: "Gaszähler.Stand"
    • Umrechnung in Verbrauch in kWh:
    • "System"baustein: aktualisiere "Gaszähler.Verbrauch"
    • "Mathematik"bausteine:
    • Wert -> "Gaszähler.Stand" (m³)
    • x Zustandszahl
    • x Brennwert


    Variablen sichtbar unter "javascript.0/Gaszähler/...":

    Der Inhalt kann nicht angezeigt werden, da Sie keine Berechtigung haben, diesen Inhalt zu sehen.

    Der Wert des Gaszählerstandes kann an den derzeitigen Gaszählerstand angepasst werden. Dazu einfach in der Variable unter Wert -> "Im Dialog bearbeiten" klicken.

    Im aufklappenden Fenster den aktuellen Stand mit zwei Nachkommastellen eintragen. "Bestätigt" anhaken und "Setzen".


    Abfrage des Relais-Status -> Relay1/Switch -> false/true:

    Der Inhalt kann nicht angezeigt werden, da Sie keine Berechtigung haben, diesen Inhalt zu sehen.


    In einer Visualisierung können diese Daten nun dargestellt werden.

    • Offizieller Beitrag
    • Autor

    Monatlicher Zählerstand und Verbrauch

    Um nun auch den monatlichen Zählerstand und Verbrauch zu ermitteln möchte ich ein weiteres Skript vorstellen.

    Dies ist eine Gemeinschaftproduktion mit @neo-v. Das grundlegende Skript stammt aus seiner Feder! :thumbup: Maik, super Arbeit!

    Mit Zustimmung von @neo-v kann ich dieses Skript hier nun veröffentlichen. Dafür auch ein ganz großes Dankeschön!


    Umsetzung:

    Der Inhalt kann nicht angezeigt werden, da Sie keine Berechtigung haben, diesen Inhalt zu sehen.

    • "System"bausteine:
    • Objekt ID: Variable anlegen: -> ZZ_Monat -> wird für die Berechnung benötigt!
    • im "Text"baustein mit "" festlegen
    • Objekt ID: Variable anlegen: -> Gas Zähler Monat
    • im "Text"baustein mit "" festlegen
    • Objekt ID: Variable anlegen: -> Gas Verbrauch Monat
    • im "Text"baustein mit "kWh" festlegen
    • "Trigger"bausteine: "Zeitplan"
    • am 01. jeden Monats um 00:01 Uhr vom Gesamtzählerstand berechnen (Gesamtzählerstand aus 1. Blockly -> "Gaszähler.Stand"
    • am 01. jeden Monats um 00:02 Uhr Zähler und Verbrauch auf "0" setzen
    • Objekt ID: Gesamtzählerstand -> "Gaszähler.Stand"
    • steuere Variable: "Gas Zähler Monat" -> berechne den Monatszählerstand
    • mit "Mathematik"baustein:
    • Gesamtzählerstand "Gaszähler.Stand" - Variable "ZZ_Monat"
    • Objekt ID: "Gas Zähler Monat"
    • Umrechnung in Verbrauch in kWh:
    • "System"baustein: aktualisiere "Gas Verbrauch Monat"
    • "Mathematik"bausteine:
    • Wert -> "Gas Verbrauch Monat" (m³)
    • x Zustandszahl
    • x Brennwert

    Zur besseren Übersichtlichkeit der ermittelten Daten werden diese auf 2 Nachkommastellen gerundet.


    Die Werte sind nun wieder unter "Objekte/javascript.0..." oder unter entsprechend angelegtem Speicherort ersichtlich.

    Der Inhalt kann nicht angezeigt werden, da Sie keine Berechtigung haben, diesen Inhalt zu sehen.
    • Offizieller Beitrag
    • Autor

    Um diese ermittelten Daten/Werte nun auch noch in den jeweiligen Monat zu schreiben kommt dann folgende Skripterweiterung ins Spiel. Dieses Skript einfach unter das Skript von #2 anbinden!


    Der Inhalt kann nicht angezeigt werden, da Sie keine Berechtigung haben, diesen Inhalt zu sehen.
    • "Trigger"bausteine: täglich wird um 23:59:59 Uhr der Zählerstand (m³) und der Verbrauch (kWh) in die jeweilige Monatsvariable geschrieben
    • dafür je 12 Variablen (12 Monate) anlegen (siehe Bild unten)
    • "Variable"baustein in Blockly eine Variable "Monat" anlegen und entsprechend im Blockly einsetzen
    • "Text"baustein: unter "erstelle Text aus" wird der Speicherort der angelegten 12 Variablen eingetragen -> aber ohne Monat!
    • "System"bausteine: aktualisiere "Gas Zähler Monat" und "Gas Verbrauch Monat", die Variablen werden zur eingestellten Zeit mit den aktuellen Werten gefüllt

    Der Inhalt kann nicht angezeigt werden, da Sie keine Berechtigung haben, diesen Inhalt zu sehen.


    Viel Erfolg beim Erstellen eurer Verbrauchswerte!


    EDIT: gesamtes Skript (Blockly):


  • SparkyMaster 20. März 2021 um 16:39

    Hat das Thema freigeschaltet.
  • SparkyMaster 20. März 2021 um 16:40

    Hat den Titel des Themas von „[Blockly] Gaszähler -> Stand und Verbrauch“ zu „[Blockly] Gaszähler -> Stand und Verbrauch (auch monatlich)“ geändert.
  • Hallo,

    super Sache die Scripte! - da ich gerade auf Gas umstelle kommt auch bald ein Reed-Kontakt sobald der Zähler eingebaut ist, somit ist diese Vorlage perfekt. :)

    Kannst du die Scripte zusätzlich zu den png's auch als Blockly-export in ein Code-Feld hinterlegen?

    beste Grüße und vielen Dank für die Arbeit!

  • Eine andere Möglichkeit wäre es, mit den Adapter SourceAnalytix zu arbeiten.

    Der Inhalt kann nicht angezeigt werden, da Sie keine Berechtigung haben, diesen Inhalt zu sehen.
  • Dieses Thema enthält 17 weitere Beiträge, die nur für registrierte Benutzer sichtbar sind.