Die S0-Schnittstelle ist eine Hardwareschnittstelle, die anhand von Impulsen Aufschluss über Verbrauchswerte gibt. So dient z. B. die S0-Schnittstelle an einem Wirkarbeitszähler als Indikator für die abgerufene Wirkarbeit (Stromverbrauch). Diese Schnittstelle ist genormt nach DIN 43 864 und DIN VDE 0418 T. 5. Die Norm gibt Aufschluss über getroffene Standards, so ist z. eine Mindestimpuls- bzw. Pausenlänge von 30ms mit einer Anstiegs- bzw. Fallzeit von <= 5ms definiert. Abbildung 1 soll dies Graphisch darstellen. Abbildung 1 – Signaldefinition nach DIN 43 864 Hierbei ist tA die Anstiegszeit (<= 5ms), tF die Fallzeit (<= 5ms), t1 die Mindestimpulslänge (>=30ms) und t2 die Pausenzeit (>=30ms). Die Schnittstelle wird meist als Transistor- bzw. GitHub - dewomser/stromzaehler: Arduino Stromzähler mit S0 Impuls. Optokopplerausgang realisiert, sodass auf die richtige Polung beim Anschluss geachtet werden muss. Darüber hinaus sind Grenzen für die angelegte Spannung (<=27V DC) und den durchzulassenden Strom (<= 27mA) angegeben. Die Spannungsfestigkeit wird mit 5kV angegeben, kann jedoch auch größer ausfallen (je nach Hersteller).
Erst ein undokumentierter Tip aus dem Forum hat mir nach tagelangem Suchen weitergeholfen. Wobei das Forum (englischsprachig) nicht allzu stark frequentiert ist. Irgendwie bin ich mir mit der Software ziemlich allein gelassen vorgekommen. Allerdings, wenns mal läuft... Mal schauen, wofür ich mich dann entscheide 1 Seite 1 von 2 2 Photovoltaikforum Forum Photovoltaik Anlage Datenlogger
Neuere Stromzähler sind zum Teil mit einem Optokoppler ausgestattet, der für jede verbrauchte Wattstunde einen Impuls liefert (1000 Impulse = 1 kWh). Der Anschluss an einen Arduino gestaltet sich dem entsprechend einfach: D+ Ausgang des Zählers auf 5V legen und den D- Ausgang an einen digitalen Eingang des Arduino anschließen, dieser muss noch mit einem 4k7 Widerstand gegen Masse gezogen werden um ein klares Signal zu erhalten. Arduino Datenlogger Menü Temperatur und S0 Zähler - YouTube. Zur Darstellung des aktuellen Wattzahlen werden dabei im Arduino die Millisekunden zwischen zwei Flanken auf dem Eingang gezählt. Bei 1000 Impulsen pro kWh entsprechen 3600 Millisekunden zwischen den Flanken einem angeschlossenen Verbraucher mit 1000 Watt. /** Hilfsprogramm zur Auswertung der Zähler * Maximal 8 SO-Zähler können angeschlossen werden, die mit folgendem Protokoll * an die serielle Schnittstelle ausgegeben werden: * * byte0 byte1 byte2 byte3... * A-H 0-9 0-9 0-9 n * Kanal Millis Newline * Die Millis sind dabei die Millisekunden zwischen den letzten beiden Low-High-Flanken * auf dem angegebenen Kanal.