FHEM Forum

FHEM - Hausautomations-Systeme => Sonstige Systeme => Thema gestartet von: Jorge3711 am 22 Juni 2016, 16:43:00

Titel: Modul RPI_GPIO Counter entprellen
Beitrag von: Jorge3711 am 22 Juni 2016, 16:43:00
Hallo zusammen,

für meinen ELSTER Gaszähler habe ich mir einen IN-Z65 besorgt um den Reedkontakt des Balgenzählers auswerten zu können. Umgesetzt habe ich das ganze nach folgender Vorlage aus dem Forum: Elster Gaszähler auswerten (https://forum.fhem.de/index.php?topic=30068.0)

Nun ist dort bereits beschrieben, dass man den Counter über das Attribut debounce_in_ms entprellen kann. Allerdings scheint bei mir der max. mögliche Zeitwert nicht auszurechen um fehlerfrei zu entprellen. Mein Counter zählt immer zu schnell, d.h. mein Counter läuft kontinuierlich dem realen Zählwert davon, zeigt also zu viel an. Zähler hängt am GPIO3 eines RPI2 mit Raspian Wheezy mit FHEM. Beides jeweils mit aktuellem Patchlevel.

Mehr als 250 ms entprellen geht nicht, ist vom Modul so vorgegeben. Hat jemand eine Idee wie dem noch Herr zu werden ist?

Viele Grüße
Carsten
Titel: Antw:Modul RPI_GPIO Counter entprellen
Beitrag von: klausw am 22 Juni 2016, 17:20:26
Zitat von: Jorge3711 am 22 Juni 2016, 16:43:00
Mehr als 250 ms entprellen geht nicht, ist vom Modul so vorgegeben. Hat jemand eine Idee wie dem noch Herr zu werden ist?

Du kannst in Zeile 368 der Datei 51_RPI_GPIO.pm den Wert 250 testweise vergrößern. Allerdings solltest du im Hinterkopf behalten, das während dieser Entprellzeit FHEM blockiert ist.

Allerdings finde ich eine Entprellzeit von einer viertel Sekunde schon extrem lang.
Wie ist der IN-Z65 an das Pi angeschlossen?
Welchen Widerstandswert hat der Pullup?
Zählt der Counter auch, wenn der IN-Z65 gar nicht an den Zähler angebaut ist?
Titel: Antw:Modul RPI_GPIO Counter entprellen
Beitrag von: Jorge3711 am 23 Juni 2016, 08:32:33
Zitat von: klausw am 22 Juni 2016, 17:20:26
Wie ist der IN-Z65 an das Pi angeschlossen?
Welchen Widerstandswert hat der Pullup?

Der Zähler hängt direkt auf den GPIO Pins, ohne Pullup Widerstand. Hab dazu jetzt ein wenig nachgelesen und werde es mit Widerstand probieren, wahrscheinlich ist das die Ursache. Wahrscheinlich habe ich die Anleitung falsch interpretiert und der Schreiber der Anleitung ist davon ausgegangen, dass selbstverständlich ein Pullup verwendet wird. Bin was RasPi und GPIOs angeht Frischling.

Danke für den Schubser! :-)

Grüße Carsten
Titel: Antw:Modul RPI_GPIO Counter entprellen
Beitrag von: klausw am 23 Juni 2016, 09:16:29
Zitat von: Jorge3711 am 23 Juni 2016, 08:32:33
Danke für den Schubser! :-)
gern  8)

Versuche es bitte gleich mit einem externen Pullup
Der Interne ist bei langen Leitungen zu hochohmig.
Und dann mit dem debounce Attribut bisschen spielen und es möglichst klein machen.
Titel: Antw:Modul RPI_GPIO Counter entprellen
Beitrag von: Jorge3711 am 23 Juni 2016, 21:39:34
So, habe jetzt nen 100kOhm Widerstand besorgt und verbastelt und das debounce auf 100ms gesetzt. Werde berichten.
Titel: Antw:Modul RPI_GPIO Counter entprellen
Beitrag von: Jorge3711 am 24 Juni 2016, 20:23:12
Nach einem Tag kann ich berichten, dass der GPIO immer noch ohne das vom Zähler ein Impuls kommt auslöst/zählt. In ~24h waren es 18 Impulse die der Zähler davon lief. Mit debounce brauche ich ja nicht spielen, wenn vom Zähler selbst gar kein Impuls kommt.

Jemand eine Idee? Anderen Widerstand probieren, 15k hätte ich noch rumliegen.
Titel: Antw:Modul RPI_GPIO Counter entprellen
Beitrag von: Jorge3711 am 25 Juni 2016, 20:21:10
Habe jetzt den GPIO Pin gewechselt auf GPIO4 und statt auf 3,3V den PullUp Widerstand auf 5V geklemmt. Dann beobachten wir mal.
Titel: Antw:Modul RPI_GPIO Counter entprellen
Beitrag von: Jorge3711 am 26 Juni 2016, 16:21:29
Jetzt passt es. Ich denke der Wechsel auf die 5V für den Pullupwiderstand war der Trick.
Titel: Antw:Modul RPI_GPIO Counter entprellen
Beitrag von: klausw am 26 Juni 2016, 23:04:05
Naja, die GPIOs sind nur 3,3V tolerant.
Wie lang ist denn die Leitung zwischen Pi und Zählersensor?
Titel: Antw:Modul RPI_GPIO Counter entprellen
Beitrag von: Jorge3711 am 27 Juni 2016, 10:34:36
Der Zähler hängt mit seinem Kabel direkt auf dem Pi. Was werden das sein, 50 cm? Pullup ist ein 100kOhm Widerstand. Der Pi ist ein Modell B+, welchen ich gestern komplett neu aufgesetzt habe. FHEM läuft jetzt auf Raspbian Jessie Lite und ist per FHEM2FHEM an meine FHEM Hauptinstanz angebunden (noch experimentell).
Titel: Antw:Modul RPI_GPIO Counter entprellen
Beitrag von: klausw am 27 Juni 2016, 17:25:31
Zitat von: Jorge3711 am 27 Juni 2016, 10:34:36
Der Zähler hängt mit seinem Kabel direkt auf dem Pi. Was werden das sein, 50 cm? Pullup ist ein 100kOhm Widerstand. Der Pi ist ein Modell B+, welchen ich gestern komplett neu aufgesetzt habe. FHEM läuft jetzt auf Raspbian Jessie Lite und ist per FHEM2FHEM an meine FHEM Hauptinstanz angebunden (noch experimentell).
Das ist jetzt nicht soo lang. liegt das Kabel parallel zu Verbrauchern die dynamisch viel Strom ziehen?
Hast du 15k auf 3,3V versucht?
Man könnte noch einen Tiefpass vor den GPIO bauen.