Wie kann ich einige S0-Zähler mit fhem auf einer Fritz!Box 7390 auslesen?

Begonnen von Christian., 03 Juni 2013, 15:29:39

Vorheriges Thema - Nächstes Thema

fhainz

Zitat von: Spuckiii am 26 August 2014, 20:58:08
das was ich eigenltich haben möchte ist der verbrauch in KW/h

Das hab ich oben schon erwähnt wie ich das mache.
Zitat von: fhainz am 25 August 2014, 21:35:59
Zum auswerten von tagen/wochen/monaten etc würd ich das hourcounter modul empfehlen.
Das bringt alles notwendige mit. Das lässt man dann wiederum durch den impuls auslösen.

Grüße

tresa

Hallo zusammen,

ich würde gerne das SML Protokoll meiner EHZ Zähler auslesen. Hat das schon jemand gemacht?

Also ich würde mir das folgendermaßen vorstellen:
2 EHZ an einem Arduino Mega. Ein EHZ ist von der PV Anlage, der andere ist der Zweirichtungszähler vom Versorger. Zum einen könnte man in Fhem die aktuellen Zählerstände anzeigen und zum anderen würde ich gerne die aktuelle Leistung berechnen um z.B. bei Stromüberschuss die Wärmepumpe an zuschalten.

Könnte das über FIRMATA funktionieren? Bzw. kann man damit die Serielle Schnittstelle vom Arduino auslesen?

Einen Arduino scratch habe ich bereits dafür, jetzt würde ich die Daten halt gerne im Fhem haben. Eine andere Möglichkeit wäre aber auch, diese Werte vom Arduino irgendwie ins Fhem zu bringen.


Damian

Zitat von: tresa am 13 September 2014, 22:22:29
ich würde gerne das SML Protokoll meiner EHZ Zähler auslesen. Hat das schon jemand gemacht?

Ja über einen IR-Lese-Kopf (RS232), bezogen über volkszähler.org und ein angepasstes smlusb-Modul siehe hier:

http://forum.fhem.de/index.php/topic,14117.msg199640.html#msg199640

Gruß

Damian
Programmierte FHEM-Module: DOIF-FHEM, DOIF-Perl, DOIF-uiTable, THRESHOLD, FHEM-Befehl: IF

tresa

Würde das mit den Hager EHZ001 auch funktionieren? Die sind bei mir bereits verbaut.

Grüße
Andreas

Damian

Zitat von: tresa am 13 September 2014, 22:48:24
Würde das mit den Hager EHZ001 auch funktionieren? Die sind bei mir bereits verbaut.

Grüße
Andreas

Beide sprechen OBIS, es gibt sicherlich feine Unterschiede siehe hier: http://wiki.volkszaehler.org/software/obis. Du kannst es erstmal mit dem 70_SMLUSB.pm probieren. Ich habe das Modul für meine Zähler angepasst, weil es bei mir nicht richtig funktionierte (bei mir läuft FHEM unter Windows).

Gruß

Damian
Programmierte FHEM-Module: DOIF-FHEM, DOIF-Perl, DOIF-uiTable, THRESHOLD, FHEM-Befehl: IF

tresa

Ok, das sieht alles sehr gut aus. Aber wie kann ich die serielle Schnittstelle des Arduinos ansprechen?

Wenn ich das richtig verstehe hast du den Lesekopf per USB am Windowsrechner angeschlossen?

Christian.

Zitat von: tresa am 13 September 2014, 22:22:29
Könnte das über FIRMATA funktionieren?
Firmata ist meiner Meinung nach hier nur sinnvoll, wenn der Arduino noch weitere Aufgaben übernehmen soll. Dann müsstest Du einen weiteren Arduino-Sketch (ein sog. FirmataFeature) schreiben, der als Adapter zwischen Deinem bestehenden Sketch und Firmata fungiert. Soll der Arduino keine weiteren Aufgaben übernehmen, ist es einfacher, den bei Dir bereits bestehenden Sketch direkt an FHEM anzubinden.

Zitat von: tresa am 13 September 2014, 22:22:29
Bzw. kann man damit die Serielle Schnittstelle vom Arduino auslesen?
Dafür brauchst Du Firmata nicht; die serielle Schnittstelle kannst Du ja direkt ansprechen, sobald der Arduino angeschlossen ist. Aus FHEM heraus, oder auch ohne FHEM. Dein Sketch muss dafür entweder selbst regelmäßig die EHZ-Daten auf der seriellen Schnittstelle ausgeben, oder auf Kommandos von außen warten.

Der von Damian beschriebene Weg kommt ganz ohne Arduino aus; die EHZ werden dabei direkt an FHEM angebunden.

Ich verwende zur PV-Überwachung übrigens SolarView; auch bei SolarView wird der Zähler direkt (ohne Arduino) per USB angeschlossen. Die Daten stehen dann über das SolarView-Modul auch in FHEM zur Verfügung.
Raspberry Pi 3 mit FHEM; Arduino Nano mit ConfigurableFirmata (S0-Stromzähler); nanoCUL (MAX!); SIGNALduino (RXB6, 433 MHz); eBus; RS485 & D0 (SolarView); DVB-T (Thermo-/Hygrometer); Z-Wave; ZigBee

Damian

Zitat von: tresa am 14 September 2014, 00:38:04
Wenn ich das richtig verstehe hast du den Lesekopf per USB am Windowsrechner angeschlossen?

Den IR-Lese-Kopf kannst du direkt am FHEM-Rechner anschließen. Den gibt es in verschiedenen Versionen (USB, RS232). Ich habe mich für die RS232-Version entschieden, weil ich über 20 m zum Rechner überbrücken musste - USB schafft standardmäßig nur 5 m. Am Rechner selbst habe ich natürlich über einen Adapter die RS232-Signale wieder auf USB umgesetzt.

Meine angepasste SMLUSB-Version bedient sowohl den Zweirichtungszähler (wie oben beschrieben über D0-Schnittstelle), als auch gleichzeitig einen S0-Zähler für die PV-Anlage, welches über das Modul CUL_EM eingebunden ist. Die beiden Zähler werden bei mir synchron ausgelesen, dadurch kann ich sehr genau im Modul den Eigenverbrauch ermitteln und schön mit Produktion, Einspeisung und Bezug plotten.

Ich komme ohne weitere Software wie SolarView oder SMA-Spot aus.

Gruß

Damian
Programmierte FHEM-Module: DOIF-FHEM, DOIF-Perl, DOIF-uiTable, THRESHOLD, FHEM-Befehl: IF

tresa

Zitat von: Christian. am 14 September 2014, 07:51:28
Dafür brauchst Du Firmata nicht; die serielle Schnittstelle kannst Du ja direkt ansprechen, sobald der Arduino angeschlossen ist. Aus FHEM heraus, oder auch ohne FHEM.

Wie kann ich das machen? Die serielle Schnittstelle vom Arduino aus Fhem heraus ansprechen? Ich steh da grad voll auf dem Schlauch wäre super wenn ihr mir da auf die Sprünge helfen könntet.

SpenZerX

Hallo,

ich möchte meine Elektrik auch mit S0-Zähler ausstatten. Dafür habe ich eine eigene Lösung auf Basis Arduino Due entwickelt.

Frage ist nun wie man das alles Verdrahtet? Gibt es da Vorschriften, Standards oder ähnliches? Also bezüglich Verlegung und Leitungsmaterial?
Ich habe erstmal eine Netzwerkleitung zum Gas/Wasser/Gartenwasserzähler gelegt. Für Hallsensoren, Reedkontakte, oder ähnliches.
Als nächstes möchte ich 1 Phasenzähler mit S0, 2-3 Stück hinter Sicherungen im Zählerschrank schalten (für große Verbraucher). Hauptzähler hat noch kein S0.

Wie schließt man das alles an ohne das ein Elektriker einen Schrecken bekommt?


Christian.

Zitat von: tresa am 16 September 2014, 15:14:49
Wie kann ich das machen? Die serielle Schnittstelle vom Arduino aus Fhem heraus ansprechen?

In welcher Form sendet der Arduino denn die Daten über die serielle Schnittstelle? Falls Du ein bekanntes Protokoll verwendest, gibt es vielleicht schon ein passendes FHEM-Modul. Bei Firmata wäre das FRM, bei SML könntest Du SMLUSB ausprobieren. Es gibt auch noch weitere, z.B. für ECMD. Wenn Du was eigenes gestrickt hast, musst Du ein passendes FHEM-Modul schreiben; vielleicht gibt es auch etwas allgemeines zum Einlesen von Strings über die serielle Schnittstelle?

In jedem Fall wird die serielle Schnittstelle, z.B. /dev/usb1 oder COM5, dann als IODev im FHEM-Modul gesetzt.
Raspberry Pi 3 mit FHEM; Arduino Nano mit ConfigurableFirmata (S0-Stromzähler); nanoCUL (MAX!); SIGNALduino (RXB6, 433 MHz); eBus; RS485 & D0 (SolarView); DVB-T (Thermo-/Hygrometer); Z-Wave; ZigBee

Christian.

Zitat von: SpenZerX am 16 September 2014, 15:46:58
Wie schließt man das alles an ohne das ein Elektriker einen Schrecken bekommt?

Ich habe meine Hutschienenzähler direkt neben oder unter den Sicherungsautomaten platziert und mit einem kurzen Stück NYM-Leitung verbunden; der Querschnitt entspricht der bestehenden Leitung (1,5 mm² oder 2,5 mm²).

Wenn Du Dir nicht sicher bist, ist es keine schlechte Idee, einen Elektriker hinzuzuziehen.
Raspberry Pi 3 mit FHEM; Arduino Nano mit ConfigurableFirmata (S0-Stromzähler); nanoCUL (MAX!); SIGNALduino (RXB6, 433 MHz); eBus; RS485 & D0 (SolarView); DVB-T (Thermo-/Hygrometer); Z-Wave; ZigBee

SpenZerX

Zitat von: Christian. am 16 September 2014, 17:27:26
Ich habe meine Hutschienenzähler direkt neben oder unter den Sicherungsautomaten platziert und mit einem kurzen Stück NYM-Leitung verbunden; der Querschnitt entspricht der bestehenden Leitung (1,5 mm² oder 2,5 mm²).

Wenn Du Dir nicht sicher bist, ist es keine schlechte Idee, einen Elektriker hinzuzuziehen.

1,5mm² für die S0 Leitung?  Ich dachte eher an einen Querschnitt von 0,25mm²
Alle S0+ an Arduino +5V
Die  S0- an die jeweiligen Eingänge und Pull Down Konfigurieren.

Dafür würde ich die Adern einer Netzwerkleitung nehmen. Sollte dann ja für 7 Zähler reichen.

Oder ist irgendwo ein Denkfehler?

Christian.

Zitat von: SpenZerX am 16 September 2014, 18:46:40
Ich dachte eher an einen Querschnitt von 0,25mm²
Dafür würde ich die Adern einer Netzwerkleitung nehmen. Sollte dann ja für 7 Zähler reichen.

Ich meinte natürlich den Phaseleiter. Für die S0-Signale reicht ein Netzwerkkabel wie von Dir beschrieben. Ich habe bei mir aber S0- an Masse und S0+ an die Arduino-Pins angeschlossen, und setze dann den Arduino-internen Pull-up.
Raspberry Pi 3 mit FHEM; Arduino Nano mit ConfigurableFirmata (S0-Stromzähler); nanoCUL (MAX!); SIGNALduino (RXB6, 433 MHz); eBus; RS485 & D0 (SolarView); DVB-T (Thermo-/Hygrometer); Z-Wave; ZigBee

Bennemannc

Hallo,

ich habe das umgekehrt gemacht. Da ich ein Batterieversorgtes Teil habe, arbeite ich mit Pull-Down und geben für den Impuls ein Plus auf den Pin. Dann habe ich keine (noch so kleinen) Ruheströme über den Pullwiderstand.

gruß Christoph
Cubietruck, Fhem 5.8
CC-RT-DN|LC-SW2-FM|RC-12|RC-19|LC-SW4-BA-PCB|LCp-SW1-BA-PCB|ES-PMSw1-Pl|LC-Bl1PBU-FM|PBI-4-FM|CC-VD|CC-TC|SEC-SC(2)|RC-KEY3-B|LC-Sw1PBU-FM|PB-2-FM|WDS100-C6-O|WDC7000|LC-Bl1-FM
Module: Dewpoint,FB_Callmonitor,HCS,Panstamp,at,notify,THRESHOLD,average,DOIF