Zählersensor HM-ES-TX-WM - Universelle Zählerstandberechnung
Moderator: Co-Administratoren
Re: Zählersensor HM-ES-TX-WM - Universelle Zählerstandberech
Das ist die Stelle im Code:
01 = Januar
12 = Dezember
Du mußt das dann auf "04" für 01.04. setzen.
Code: Alles auswählen
! Nach Jahresanfang pruefen
if(system.Date("%m") == "01")
12 = Dezember
Du mußt das dann auf "04" für 01.04. setzen.
Re: Zählersensor HM-ES-TX-WM - Universelle Zählerstandberech
Hallo Jens,
ich würde dein tolles Skript gerne für meinen S0 Wired Zähler einsetzen. Ich habe folgende DP:
Channel=ENERGY_COUNTER -> Diesen Kanal hat mein Wiredgerät nicht sondern nur WATT_STUNDEN oder GESAMT
Bidcos-RF -> Bidcos-Wired
Was muss ich am Skript ändern? Hat vielleicht einer eine Idee
ich würde dein tolles Skript gerne für meinen S0 Wired Zähler einsetzen. Ich habe folgende DP:
- - EG.HBW-Sen-EP:1-Strom_WP
- EG.HBW-Sen-EP:2-Strom_Haus
- EG.HBW-Sen-EP:3-Wasser
Code: Alles auswählen
! Skript um den initialen Referenzwert des Hausanschlusszaehlers
! der CCU mitzuteilen bzw. diesen zu aktualisieren.
string type = "Strom_WP"; ! 'Strom_WP', 'Strom_Haus' oder 'Wasser'
real value = 3978.900; ! Zaehlerstand in kWh oder m3
! ACHTUNG: Ab hier KEINE Aenderungen mehr
object device = dom.GetObject("EG.HBW-Sen-EP:1" # type);
if(device)
{
string channel = "GAS_ENERGY_COUNTER";
if(type == "Strom_WP") { channel = "ENERGY_COUNTER"; }
object counter = dom.GetObject("BidCos-Wired." # device.Address() # ":1." # channel);
if(counter)
{
real curValue = counter.Value();
if(type == "Strom_WP") { curValue = curValue / 1000.0; }
object c = dom.GetObject(type # " Referenz Zaehlerstand");
c.State(value - curValue);
WriteLine("Referenz Zaehlerstand wurde gesetzt auf: " # value - curValue);
}
}
Bidcos-RF -> Bidcos-Wired
Was muss ich am Skript ändern? Hat vielleicht einer eine Idee
-
- Beiträge: 3733
- Registriert: 23.09.2017, 12:04
- Hat sich bedankt: 66 Mal
- Danksagung erhalten: 120 Mal
Re: Zählersensor HM-ES-TX-WM - Universelle Zählerstandberech
Guten Morgen
wie wäre es mal mit probieren?
Ist "Watt_Stunden" der aktuelle Verbrauch? Dann wäre wohl eher "Gesamt" der richtige Datenpunkt.
So weit ich mich erinnere zählt der HM Sensor auch Wh. Also wäre das auch kein "Problem" bzw. würde sich durch ausprobieren rel. schnell feststellen lassen.
Dann ist noch die Frage, wann der Zähler intern auf 0 überläuft. Das müsste entsprechend angepasst werden.
wie wäre es mal mit probieren?
Ist "Watt_Stunden" der aktuelle Verbrauch? Dann wäre wohl eher "Gesamt" der richtige Datenpunkt.
So weit ich mich erinnere zählt der HM Sensor auch Wh. Also wäre das auch kein "Problem" bzw. würde sich durch ausprobieren rel. schnell feststellen lassen.
Dann ist noch die Frage, wann der Zähler intern auf 0 überläuft. Das müsste entsprechend angepasst werden.
-
- Beiträge: 415
- Registriert: 28.10.2015, 21:12
- Hat sich bedankt: 2 Mal
- Danksagung erhalten: 1 Mal
Re: Zählersensor HM-ES-TX-WM - Universelle Zählerstandberech
Vielen DankNudge hat geschrieben:Das ist die Stelle im Code:
01 = JanuarCode: Alles auswählen
! Nach Jahresanfang pruefen if(system.Date("%m") == "01")
12 = Dezember
Du mußt das dann auf "04" für 01.04. setzen.
Re: Zählersensor HM-ES-TX-WM - Universelle Zählerstandberech
Ich hab mir die xml angeschaut.
GESAMT=COUNTER
WATT_STUNDEN=COUNTERWH
type=float mit max=4294967295
Ich werde mal heute abend testen.
GESAMT=COUNTER
WATT_STUNDEN=COUNTERWH
type=float mit max=4294967295
Ich werde mal heute abend testen.
Re: Zählersensor HM-ES-TX-WM - Universelle Zählerstandberech
Hallo Jens,
super Script von dir, läuft bei mir einwandfrei, vielen Dank dafür. Bisher hatte ich nur Strom und Gas gebraucht.
Natürlich kam jetzt noch der Wunsch hinzu das ich das auch mit dem Wasserverbrauch realisiere.
Zum Glück habe ich wohl die gleiche Hardware, bezogen auf die Wasseruhr wie du sie bei dir hast.
Ich habe jetzt den Wassersensor HRI-B4/D1/8L-HRI-PulseUnit, genauso einen wie du den hast, auf meinen Wasserzähler Sensus 620C montiert.
Ebenfalls die entsprechende viewtopic.php?f=27&t=23005&start=140#p199093 Wiederstandsschaltung realisiert.
Der Wassersensor gibt Impulse die ich entsprechend mit dem Sender HM-ES-TX-WM weiter an die CCU senden kann.
Ich hätte dazu aber noch eine Frage:
1. Auf der CCU unter Einstellungen/Geräte/HM-ES-TX-WM (bei mir Zaehler-Wasser), hast du da den Sender bei den Kanalparameter als Sensor-Typ "Gas" oder als Sensor-Typ "Unbekannt" eingetragen. Hier würden mich also der Typ sowie deine Einstellungen interessieren. Ich habe den Kanalparameter als Sensor-Typ "Gas" genommen und als Gas-Zählerkonstante einen Wert von 0.001 m3/Imp.
Ich erhalte nicht so genaue Werte wie ich mir erhoffe. Wenn ich 100 Liter Wasser entnehme, abgelesen an der Wasseruhr, zeigt mir die CCU ca. einen Verbrauch von 110 Litern an.
Eventuell habe ich ja auch irgendwas komplett falsch gemacht.
Deine weiteren beiden Scripte "initialen Referenzwert und Zählerstand" habe ich aufgrund der Komma-Setzung (natürlich Punkt) nicht so richtig durchgeführt.
Da kamen immer utopische Werte heraus. Ich nehme mal an weil ich den Punkt nie richtig gesetzt habe. Mal hatte ich minus, mal ein dickes plus.
Daher habe ich die Werte über die App Pocket Control gesetzt.
Anbei zwei Bilder, vielleicht helfen die meinen Fehler zu erkennen. Wenn du mir oder natürlich auch jeder andere gerne, helfen könnt oder einen Tipp geben könnt, würde ich mich natürlich freuen.
Grüße Jurij
super Script von dir, läuft bei mir einwandfrei, vielen Dank dafür. Bisher hatte ich nur Strom und Gas gebraucht.
Natürlich kam jetzt noch der Wunsch hinzu das ich das auch mit dem Wasserverbrauch realisiere.
Zum Glück habe ich wohl die gleiche Hardware, bezogen auf die Wasseruhr wie du sie bei dir hast.
Ich habe jetzt den Wassersensor HRI-B4/D1/8L-HRI-PulseUnit, genauso einen wie du den hast, auf meinen Wasserzähler Sensus 620C montiert.
Ebenfalls die entsprechende viewtopic.php?f=27&t=23005&start=140#p199093 Wiederstandsschaltung realisiert.
Der Wassersensor gibt Impulse die ich entsprechend mit dem Sender HM-ES-TX-WM weiter an die CCU senden kann.
Ich hätte dazu aber noch eine Frage:
1. Auf der CCU unter Einstellungen/Geräte/HM-ES-TX-WM (bei mir Zaehler-Wasser), hast du da den Sender bei den Kanalparameter als Sensor-Typ "Gas" oder als Sensor-Typ "Unbekannt" eingetragen. Hier würden mich also der Typ sowie deine Einstellungen interessieren. Ich habe den Kanalparameter als Sensor-Typ "Gas" genommen und als Gas-Zählerkonstante einen Wert von 0.001 m3/Imp.
Ich erhalte nicht so genaue Werte wie ich mir erhoffe. Wenn ich 100 Liter Wasser entnehme, abgelesen an der Wasseruhr, zeigt mir die CCU ca. einen Verbrauch von 110 Litern an.
Eventuell habe ich ja auch irgendwas komplett falsch gemacht.
Deine weiteren beiden Scripte "initialen Referenzwert und Zählerstand" habe ich aufgrund der Komma-Setzung (natürlich Punkt) nicht so richtig durchgeführt.
Da kamen immer utopische Werte heraus. Ich nehme mal an weil ich den Punkt nie richtig gesetzt habe. Mal hatte ich minus, mal ein dickes plus.
Daher habe ich die Werte über die App Pocket Control gesetzt.
Anbei zwei Bilder, vielleicht helfen die meinen Fehler zu erkennen. Wenn du mir oder natürlich auch jeder andere gerne, helfen könnt oder einen Tipp geben könnt, würde ich mich natürlich freuen.
Grüße Jurij
-
- Beiträge: 1200
- Registriert: 03.02.2016, 14:44
- System: Alternative CCU (auf Basis OCCU)
- Wohnort: irgendwo aus Süd BaWü
- Hat sich bedankt: 139 Mal
- Danksagung erhalten: 85 Mal
Re: Zählersensor HM-ES-TX-WM - Universelle Zählerstandberech
Hallo,
ich verwende das Skript nun doch recht lange, aber seit dem 23.03. werden meine Stände nicht mehr aktualisiert.
Um kurz vor 0:00 Uhr wird mir ein Email geschickt:
letzte Stromverbrauchswerte vom Stand 22.03.2018:
Stromverbrauch heute: 12.306 kWh, Stromverbrauch gestern: 12.338 kWh
Dann:
letzte Stromverbrauchswerte vom Stand 23.03.2018:
Stromverbrauch heute: 20.142 kWh, Stromverbrauch gestern: 12.306 kWh.
Und:
letzte Stromverbrauchswerte vom Stand 24.03.2018:
Stromverbrauch heute: 43.749 kWh, Stromverbrauch gestern: 12.306 kWh.
Dieses Skript erledigt das dafür:
Um 0:00 Uhr läuft dann dieses Skript hier und sollte die Werte zurücksetzen, tut es aber leider nicht mehr.
Gestern habe ich auch versucht nochmal von vorne anzufangen und das Initalskript ausgeführt, aber heute Nacht dann:
letzte Stromverbrauchswerte vom Stand 25.03.2018:
Stromverbrauch heute: 60.392 kWh, Stromverbrauch gestern: 12.306 kWh.
Bis zu dem Zeitpunkt lief es ohne Probleme, hat das noch jemand?
Ich verwende die letzte FW mit Community Rega.
Grüße,
Slice
ich verwende das Skript nun doch recht lange, aber seit dem 23.03. werden meine Stände nicht mehr aktualisiert.
Um kurz vor 0:00 Uhr wird mir ein Email geschickt:
letzte Stromverbrauchswerte vom Stand 22.03.2018:
Stromverbrauch heute: 12.306 kWh, Stromverbrauch gestern: 12.338 kWh
Dann:
letzte Stromverbrauchswerte vom Stand 23.03.2018:
Stromverbrauch heute: 20.142 kWh, Stromverbrauch gestern: 12.306 kWh.
Und:
letzte Stromverbrauchswerte vom Stand 24.03.2018:
Stromverbrauch heute: 43.749 kWh, Stromverbrauch gestern: 12.306 kWh.
Dieses Skript erledigt das dafür:
Code: Alles auswählen
string KumVerbrauchHeute = dom.GetObject("Strom Verbrauch heute").Value().ToString(3);
string KumVerbrauchGestern = dom.GetObject("Strom Verbrauch gestern").Value().ToString(3);
string KumVerbrauchWoche = dom.GetObject("Strom Verbrauch Woche").Value().ToString(3);
string KumVerbrauchletzteWoche = dom.GetObject("Strom Verbrauch letzte Woche").Value().ToString(3);
string KumVerbrauchMonat = dom.GetObject("Strom Verbrauch Monat").Value().ToString(3);
string KumVerbrauchletzterMonat = dom.GetObject("Strom Verbrauch letzter Monat").Value().ToString(3);
string KumVerbrauchJahr = dom.GetObject("Strom Verbrauch Kalenderjahr").Value().ToString(3);
string KumZaehlerstand = dom.GetObject("Strom Zaehlerstand").Value().ToString(3);
! Mail-Text zusammensetzen
string Nachricht;
string sDate = system.Date("%d.%m.%Y");
Nachricht = " \r\n anbei die letzten Stromverbrauchswerte vom Stand " # sDate # ": \r\n";
Nachricht = Nachricht # "Stromverbrauch heute: " # KumVerbrauchHeute # " kWh, Stromverbrauch gestern: " # KumVerbrauchGestern # " kWh. \r\n";
Nachricht = Nachricht # "Stromverbrauch Woche: " # KumVerbrauchWoche # " kWh, Stromverbrauch letzte Woche: " # KumVerbrauchletzteWoche # " kWh. \r\n";
Nachricht = Nachricht # "Stromverbrauch Monat: " # KumVerbrauchMonat # " kWh, Stromverbrauch letzter Monat: " # KumVerbrauchletzterMonat # " kWh. \r\n";
Nachricht = Nachricht # "Stromverbrauch Kalenderjahr: " # KumVerbrauchJahr # " kWh. \r\n";
Nachricht = Nachricht # "Der Stromzaehlerstand betraegt aktuell: " # KumZaehlerstand # " kWh. ";
! Nachricht in Variable füllen und E-Mail absenden
dom.GetObject("Mailtext").State(Nachricht);
! Nachricht per CUxD senden
dom.GetObject("CUxD.CUX2801001:1.CMD_EXEC").State("/etc/config/addons/email/email 10");
Gestern habe ich auch versucht nochmal von vorne anzufangen und das Initalskript ausgeführt, aber heute Nacht dann:
letzte Stromverbrauchswerte vom Stand 25.03.2018:
Stromverbrauch heute: 60.392 kWh, Stromverbrauch gestern: 12.306 kWh.
Bis zu dem Zeitpunkt lief es ohne Probleme, hat das noch jemand?
Ich verwende die letzte FW mit Community Rega.
Grüße,
Slice
----------------------------------------------------------------------------------------
Raspi3B+ Bullseye mit HB-RF-ETH und RPI-RF-MOD auf piVCCU-FW 3.75.7 / Addons: CuxD v2.11 - E-Mail v1.7.6 - Patcher v1.0.0 - Philips Hue v3.2.5 - Programme drucken v2.6 - Scriptparser v1.11 - XML-API v2.3
Geräte: 141 / Kanäle: 791 / Datenpunkte: 6080 / SysVars: 275 / Programme: 161 / Regadom IDs: 14010 / 48 CUxD-Kanäle in 3 CUxD-Geräten
Intel NUC i3-5010U @ 2,1 GHz mit 16 GB RAM & 512 GB SSD für Proxmox mit ioBroker VM und CCU-Historian/InfluxDB/Grafana VM
----------------------------------------------------------------------------------------
Projekte im Forum: HomeHub v4.1 / Fritzbox-Anruferliste für HomeHub
----------------------------------------------------------------------------------------
Raspi3B+ Bullseye mit HB-RF-ETH und RPI-RF-MOD auf piVCCU-FW 3.75.7 / Addons: CuxD v2.11 - E-Mail v1.7.6 - Patcher v1.0.0 - Philips Hue v3.2.5 - Programme drucken v2.6 - Scriptparser v1.11 - XML-API v2.3
Geräte: 141 / Kanäle: 791 / Datenpunkte: 6080 / SysVars: 275 / Programme: 161 / Regadom IDs: 14010 / 48 CUxD-Kanäle in 3 CUxD-Geräten
Intel NUC i3-5010U @ 2,1 GHz mit 16 GB RAM & 512 GB SSD für Proxmox mit ioBroker VM und CCU-Historian/InfluxDB/Grafana VM
----------------------------------------------------------------------------------------
Projekte im Forum: HomeHub v4.1 / Fritzbox-Anruferliste für HomeHub
----------------------------------------------------------------------------------------
Re: Zählersensor HM-ES-TX-WM - Universelle Zählerstandberech
Guten Morgen,
ich habe in meinem Fehlerlog folgende Meldung bekommen:
IseESP::ExecDP: WARNING: incorrect use of Device() (use Channel()):
Diese taucht dort alle zwei Minuten auf.
Das Script läuft seit ca. einem halben Jahr ohne Probleme und auch jetzt stimmen alle Werte.
Allerdings habe ich vor Kurzem ein Update der Raspberry-Matic Firmware auf RaspberryMatic-2.31.25.20180120-rpi3 gemacht.
Am Script selbst habe ich keine Änderungen gemacht.
Wo liegt der Fehler?
Was muss ich im Script ändern?
Vielen Dank im Voraus für Eure Hilfe!
Güße,
Homer
ich habe in meinem Fehlerlog folgende Meldung bekommen:
IseESP::ExecDP: WARNING: incorrect use of Device() (use Channel()):
Diese taucht dort alle zwei Minuten auf.
Das Script läuft seit ca. einem halben Jahr ohne Probleme und auch jetzt stimmen alle Werte.
Allerdings habe ich vor Kurzem ein Update der Raspberry-Matic Firmware auf RaspberryMatic-2.31.25.20180120-rpi3 gemacht.
Am Script selbst habe ich keine Änderungen gemacht.
Wo liegt der Fehler?
Was muss ich im Script ändern?
Vielen Dank im Voraus für Eure Hilfe!
Güße,
Homer
- jmaus
- Beiträge: 9844
- Registriert: 17.02.2015, 14:45
- System: Alternative CCU (auf Basis OCCU)
- Wohnort: Dresden
- Hat sich bedankt: 462 Mal
- Danksagung erhalten: 1863 Mal
- Kontaktdaten:
Re: Zählersensor HM-ES-TX-WM - Universelle Zählerstandberech
Na das steht doch klipp und klar in der Warnmeldung: D.h. suche in deinem Skript das "Device()" und ersetze es gegen "Channel()".19Homer73 hat geschrieben: Wo liegt der Fehler?
Was muss ich im Script ändern?
Zuletzt geändert von jmaus am 29.03.2018, 09:08, insgesamt 1-mal geändert.
RaspberryMatic 3.75.6.20240316 @ ProxmoxVE – ~200 Hm-RF/HmIP-RF/HmIPW Geräte + ioBroker + HomeAssistant – GitHub / Sponsors / PayPal /