Vorstellung: HB-ES-S0-CNT6 - 6fach S0-Stromzähler für HomeMatic

Entwicklung und Bau von Hardware aller Art, die im HM-Umfeld eingesetzt werden kann

Moderator: Co-Administratoren

TomMajor
Beiträge: 1790
Registriert: 30.08.2017, 23:25
Hat sich bedankt: 175 Mal
Danksagung erhalten: 399 Mal
Kontaktdaten:

Vorstellung: HB-ES-S0-CNT6 - 6fach S0-Stromzähler für HomeMatic

Beitrag von TomMajor » 01.11.2019, 17:20

Hallo zusammen,

ich möchte euch heute eins meiner letzten Projekte, die Integration von Wechselstromzählern mit S0-Ausgang in HomeMatic vorstellen.

Das Gerät HB-ES-S0-CNT6 kann die S0-Impulse von bis zu 6 Wechselstromzählern einlesen und von diesen Zählerstand und Momentanverbrauch berechnen und in der Zentrale verfügbar machen.
Außerdem werden die Gesamtzählerstände aller Kanäle zyklisch intern im Gerät gespeichert um diese auch bei einem Stromausfall zu erhalten.

Zählerkonzepte und Geräte gibt es ja bereits einige für HomeMatic, ich habe mir ein paar angeschaut und mich dann entschlossen mein seit vielen Jahren stabil an FHEM laufenden System für HomeMatic zu portieren.

Features
  • Integration von Wechselstromzähler mit S0-Ausgang in HomeMatic/RaspberryMatic.
  • Anbindung an die Zentrale über Ethernet.
  • anpassbare Kanalanzahl für die Auswertung in der Zentrale, es sind max. 6 HW-Kanäle vorhanden.
  • für jeden Kanal gibt es eine Systemvariable Zählerstand [kWh] sowie Momentanverbrauch [Watt].
  • alle benötigten Systemvariablen können durch ein Skript automatisch erzeugt werden.
  • Alle Zählerstände werden 1x pro Stunde im EEPROM abgelegt und gehen bei einem Stromausfall nicht verloren.
  • Für das Ablegen der Zählerstände verwende ich einen Ringbuffer mit 12 Positionen (dabei nimmt eine Position alle 6 Zählerstände sowie ein Prüfsummen-CRC auf). Damit wird der gleiche EEPROM Platz nur 2x am Tag geschrieben, bei 100000 spezifizierten Write/Erase-Zyklen des ATmega328P EEPROM beträgt dessen Lebensdauer >100 Jahre.
  • Nach einem Stromausfall werden die letzten Zählerstände mit gültiger Prüfsumme aus dem EEPROM wiederhergestellt.
  • Der Zähler ist prinzipiell nicht nur für Wechselstromzähler sondern auch für andere Zählgeräte wie für Gas oder Wasser geeignet, sofern diese ähnliche Zähl-Impulsausgänge besitzen. In diesen Fall sind die Namen und Einheiten der verwendeten Systemvariablen und die Impulsfaktoren (siehe unten) entsprechend anzupassen.
  • Das Gerät läuft seit ein paar Wochen stabil als Prototypenaufbau. Ich werde dafür bei Gelegenheit noch eine Platine für ein Hutschienengehäuse entwickeln.
Hintergrund
  • Seit längerer Zeit betreibe ich im Haus 5 Wechselstromzähler mit S0-Ausgang (1x Gesamtverbrauch + 4x einzelne Kreise). Diese waren bisher über 1-Wire an FHEM angebunden.
  • Das FHEM Gerät lief über viele Jahre stabil. Im Zuge meines Umstiegs 2018/2019 von FHEM auf HomeMatic/RaspberryMatic habe ich diese Funktion jetzt in HomeMatic integriert.
  • Ich habe mir vorher mehrere Konzepte und Systeme angeschaut. Zunächst wollte ich den HBW-Sen-EP von jfische/stan23 verwenden, habe mich aber wegen des dafür notwendigen HomeMatic-Wired Gateways und Busses dagegen entschieden (da ich HM-Wired sonst nicht brauche).
  • Stattdessen habe ich das Konzept meines alten 1-Wire/FHEM 6-Kanal Gerätes für HomeMatic/Ethernet angepasst bzw. Teile davon neu entwickelt.

Alle weiteren Details, Anleitung, Schaltung, Skripte usw. sind hier zu finden:
https://github.com/TomMajor/SmartHome/t ... ES-S0-CNT6
..
Dateianhänge
1 WebUI.png
1 WebUI.png (10.08 KiB) 4881 mal betrachtet
2 FlotChart_Momentanverbrauch.png
3 Prototyp_Bild.jpg
Zuletzt geändert von TomMajor am 15.11.2019, 17:48, insgesamt 1-mal geändert.
Viele Grüße,
Tom

jp112sdl
Beiträge: 12085
Registriert: 20.11.2016, 20:01
Hat sich bedankt: 847 Mal
Danksagung erhalten: 2139 Mal
Kontaktdaten:

Re: HB-ES-S0-CNT6 : 6fach S0-Stromzähler für HomeMatic

Beitrag von jp112sdl » 01.11.2019, 17:23

Wow, klasse!
Was mir jetzt nur noch fehlt ist ein... Zähler mit S0 8)

VG,
Jérôme ☕️

---
Support for my Homebrew-Devices: Download JP-HB-Devices Addon

jp112sdl
Beiträge: 12085
Registriert: 20.11.2016, 20:01
Hat sich bedankt: 847 Mal
Danksagung erhalten: 2139 Mal
Kontaktdaten:

Re: HB-ES-S0-CNT6 : 6fach S0-Stromzähler für HomeMatic

Beitrag von jp112sdl » 01.11.2019, 17:27

TomMajor hat geschrieben:
01.11.2019, 17:20
Anbindung an die Zentrale über Ethernet.
Weshalb hast du dich für ETH entschieden und nicht für RF?

VG,
Jérôme ☕️

---
Support for my Homebrew-Devices: Download JP-HB-Devices Addon

TomMajor
Beiträge: 1790
Registriert: 30.08.2017, 23:25
Hat sich bedankt: 175 Mal
Danksagung erhalten: 399 Mal
Kontaktdaten:

Re: HB-ES-S0-CNT6 : 6fach S0-Stromzähler für HomeMatic

Beitrag von TomMajor » 01.11.2019, 18:09

jp112sdl hat geschrieben:
01.11.2019, 17:27
TomMajor hat geschrieben:
01.11.2019, 17:20
Anbindung an die Zentrale über Ethernet.
Weshalb hast du dich für ETH entschieden und nicht für RF?
Erstens sind bei mir Zentrale und Schaltschrank 1m auseinander, ein Switch ist auch in dem Raum und ich frage ja aller 3min ab um den Momentanverbrauch einigermaßen gut aufzulösen. Das wollte ich nicht über Funk machen.
Viele Grüße,
Tom

klassisch
Beiträge: 3974
Registriert: 24.03.2011, 04:32
System: Alternative CCU (auf Basis OCCU)
Hat sich bedankt: 110 Mal
Danksagung erhalten: 70 Mal

Re: HB-ES-S0-CNT6 : 6fach S0-Stromzähler für HomeMatic

Beitrag von klassisch » 01.11.2019, 18:30

Denke auch, daß für Zählersachen mt Aktualität Eth notfall WLAN DC schonender ist.
Wenn es nur um den reinen Zählerstand geht, mag das anders sein.
Aber wenn man z.B. ein Histogramm haben möchte, sind häufigere Updates nützlich.
So sieht es bei meinem Wasserzähler seit dem letzten Restart aus:
Betriebszeit: 473 00:24:33 (Tage Std:Min:Sek)

Code: Alles auswählen

	 ************** Histograms ********** 

	 figures in column 1 are the upper limits of the bins 

	 ************** flow ********** 
	liter/h	count	fraction 
	10.00	24630	0.18
	200.00	45118	0.33
	400.00	28567	0.21
	800.00	38491	0.28
	1000.00	506	0.00
	1200.00	150	0.00
	2000.00	50	0.00
	4000.00	3	0.00
	0.00	1	0.00

	 ************** ContinuousQuantity ********** 
	liter	count	fraction 
	1.00	12317	0.42
	2.00	4854	0.16
	10.00	10187	0.35
	20.00	1771	0.06
	100.00	368	0.01
	200.00	1	0.00
	400.00	0	0.00
	1000.00	0	0.00
	0.00	0	0.00

	 ************** ContinuousFlowTime ********** 
	seconds	count	fraction 
	5.00	2060	0.07
	15.00	6526	0.22
	45.00	13745	0.47
	105.00	5614	0.19
	485.00	1526	0.05
	1485.00	27	0.00
	3585.00	0	0.00
	-15.00	0	0.00

	 ************** DailyQuantity ********** 
	liter	count	fraction 
	10.00	3	0.01
	50.00	16	0.03
	100.00	67	0.14
	200.00	163	0.34
	300.00	159	0.34
	600.00	65	0.14
	1200.00	0	0.00
	0.00	0	0.00

	 ************** maxElapsedTime ********** 
	min	count	fraction 
	1.00	0	0.00
	10.00	0	0.00
	15.00	0	0.00
	60.00	0	0.00
	120.00	23	0.05
	360.00	367	0.78
	480.00	34	0.07
	0.00	49	0.10

	 ************** end ********** 
Ok, stelle fest, daß ich den fractions noch eine Stelle spendieren sollte.
Bei mir läuft das jetzt über das von Jérôme verhaßte WLAN, aber der ESP8266 hat das halt und Eth eben nicht. Aber mein Eth Kabel wäre auch < 1m weg.

jp112sdl
Beiträge: 12085
Registriert: 20.11.2016, 20:01
Hat sich bedankt: 847 Mal
Danksagung erhalten: 2139 Mal
Kontaktdaten:

Re: HB-ES-S0-CNT6 : 6fach S0-Stromzähler für HomeMatic

Beitrag von jp112sdl » 01.11.2019, 18:48

klassisch hat geschrieben:
01.11.2019, 18:30
Denke auch, daß für Zählersachen mt Aktualität Eth notfall WLAN DC schonender ist.
Hmm... die originalen HM ES TX WM senden auch alle 3min. per Broadcast.
Hat somit keinerlei Auswirkung auf den DC.

VG,
Jérôme ☕️

---
Support for my Homebrew-Devices: Download JP-HB-Devices Addon

klassisch
Beiträge: 3974
Registriert: 24.03.2011, 04:32
System: Alternative CCU (auf Basis OCCU)
Hat sich bedankt: 110 Mal
Danksagung erhalten: 70 Mal

Re: HB-ES-S0-CNT6 : 6fach S0-Stromzähler für HomeMatic

Beitrag von klassisch » 01.11.2019, 19:00

Ich sende durchflußbestimmt. ber laut Konfig derzeit nicht häufiger als alle 30 sec.

TomMajor
Beiträge: 1790
Registriert: 30.08.2017, 23:25
Hat sich bedankt: 175 Mal
Danksagung erhalten: 399 Mal
Kontaktdaten:

Re: HB-ES-S0-CNT6 : 6fach S0-Stromzähler für HomeMatic

Beitrag von TomMajor » 01.11.2019, 23:47

Man könnte das ganze sicher auch über AskSinPP per Broadcast senden.

Ganz ehrlich, wenn ich die Wahl habe, Ethernet in der Nähe ist und kein Batt.betrieb notwendig, dann bevorzuge ich Ethernet gegenüber HomeMatic 868 MHz bzw. WLAN.

Das Ganze ist ja auch als Weiterentwicklung von meinem alten 1-Wire System entstanden und als Alternative zum oben genannten HM-Wired Stromzähler.
Viele Grüße,
Tom

Alveran
Beiträge: 250
Registriert: 07.08.2018, 20:17
Hat sich bedankt: 73 Mal
Danksagung erhalten: 25 Mal

Re: HB-ES-S0-CNT6 : 6fach S0-Stromzähler für HomeMatic

Beitrag von Alveran » 02.11.2019, 07:37

Kannst du das mit dem LAN genauer Erklären? Gern auch in einem extra Thread. Habe beim Hausbau extra sehr viele Netzwerk Kabel verlegt um möglichst viel ohne Funk lösen zu können und jetzt funken selbst Geräte zur Homematic Zentrale obwohl sie im selben Schaltschrank hängen.

TomMajor
Beiträge: 1790
Registriert: 30.08.2017, 23:25
Hat sich bedankt: 175 Mal
Danksagung erhalten: 399 Mal
Kontaktdaten:

Re: HB-ES-S0-CNT6 : 6fach S0-Stromzähler für HomeMatic

Beitrag von TomMajor » 02.11.2019, 23:49

Alveran hat geschrieben:
02.11.2019, 07:37
Kannst du das mit dem LAN genauer Erklären? Gern auch in einem extra Thread. Habe beim Hausbau extra sehr viele Netzwerk Kabel verlegt um möglichst viel ohne Funk lösen zu können und jetzt funken selbst Geräte zur Homematic Zentrale obwohl sie im selben Schaltschrank hängen.
Hey Alveran,

bin nicht sicher was du genau erklärt haben willst.

Ich sehe das ähnlich wie du, wenn das Ethernet Kabel beim Gerätestandort in der Nähe ist nehme ich am liebsten das. Fast unschlagbar bzgl. Zuverlässigkeit, da kann Funk nicht mithalten.

Kurze Erklärung zur Datenübermittlung:
- der Arduino stellt einen Minimal Webserver zur Verfügung, dafür gibt es ausgereifte Libs. Er liefert u.a. eine webseite mit den Zählerständen aus.
- ein TCL Skript auf der Zentrale fragt alle 3min diese Website ab, ließt die Zählerständen ein, prüft die checksum und schreibt diese in HomeMatic Systemvariablen (nicht sichtbar).
- ein HomeMatic Skript berechnet daraus den aktuellen Zählerstand in kWh und aus der Differenz zum letzten Zählerstand den Momentanverbrauch, diese landen wiederum in Systemvariablen (sichtbar) zum Loggen und Auswerten.

Hilft dass? bzw. frag ruhig weiter was genau interessant für dich ist.

p.s. Dein ePaper Gehäuse sieht nach wie vor mega aus :D
Jetzt zeigt es auch den Momentanverbrauch des Hauptzählers, wenn auch wegen dem Update Intervall des ePapers nicht ganz so dynamisch.
Viele Grüße,
Tom

Antworten

Zurück zu „Hardwareentwicklung und Selbstbau von Aktoren und Sensoren“