Ich habe mich mit dem Thema schon vor einiger Zeit befasst. Leider scheint es bei dieser ersten Lösung "Alterungserscheinungen" der verwendeten Komponenten zu geben. Immer mal wieder muss der Sensor nachjustiert werden.
Um dieses Problem zu lösen, habe ich eine komplett neue Lösung entwickelt. Der Aufbau ist etwas aufwändiger geworden. Da der GPIO des RasPi nur 3,3V verträgt, darf das Ausgangssignal des Sensors zum GPIO nicht höher sein. Das Problem ist eine eventuell große Kabellänge. Versorgt man die Schaltung mit 3,3V vom RasPi belastet man zum einen unnötig den LDO des RasPi und zum anderen kommen je nach Kabellänge und Querschnitt keine 3,3V an der Schaltung an, was zu Problemen führen kann, denn das Signal muss die gleiche Strecke zurück zum GPIO.
Um das Problem zu lösen, wird mit der 5V Spannung gearbeitet. Die Schaltung wird mit 5V versorgt. Sollte man diese 5V von einer externen Quelle (Netzteil, etc.) erhalten, ist es wichtig, die Masse der Quelle und des RasPi zusammen zu legen. Ein sparsamer LDO macht daraus die benötigten 3,3V für die Schaltung. Das Signal des IR-Sensors wird durch einen Komparator ausgewertet und ausgegeben. Um ein Prellen des Signal abzufangen ist dem Komparator noch ein zweistufiger Timer nachgeschaltet, der dafür sorgt, dass das Signal sauber zum RasPi übertragen werden kann.
Damit die Schaltung möglichst flexibel ist, um an abweichende Einbausituationen angepasst zu werden, kann man per Lötjumper einstellen, ob der Timer auf ein HIGH oder auf ein LOW Signal des Komparators reagieren soll. Ebenso lässt sich per Lötjumper bestimmen, ob das an den GPIO gesendete Signal HIGH oder LOW sein soll.
Statt des IR-Sensors kann auch ein Reed-Kontakt angeschlossen werden, um z. B. Gaszähler auszulesen. Auch das Auslesen von Impuls-Wasserzählern ist mit der Schaltung möglich. Ich werde das Thema in den nächsten Wochen weiter verfolgen und hier berichten.
Das System läuft bei mir seit einiger Zeit "fliegend verdrahtet" im Testaufbau. Bisher gab es nur minimale Abweichungen zwischen dem errechneten und dem realen Zählerstand. Mal in die eine, mal in die andere Richtung. Über mehrere Tage waren es 0,1kWh Differenz bei einem Verbrauch von 45kWh. Für mich ist das ausreichend genau.
Zur Visualisierung der Daten nutze ich die aktuellste Version von PiEM. Diese Software ist sehr anwenderfreundlich. Die Datei wird entpackt, das Programm aufgerufen und schon kann mal los legen. Es gibt die Möglichkeit, eine 30 Tage Testversion zu erhalten, um damit ausgiebig testen zu können.
Wie auf den Bildern zu sehen, wurde eine Halterung für den Sensor gedruckt. doing war so nett mir dabei zu helfen. Danke dafür!!
Die Halterung wird auf dem Zähler ausgerichtet und mit Klebeband fixiert. Danach wird der auf der Rückseite der Platine befindliche Sensor in die Halterung geklemmt. Es werden drei Leitungen benötigt (5V, GND, Signal zu GPIO) . Sobald die Schaltung mit der Spannung versorgt ist, kann damit begonnen werden die Empfindlichkeit des Sensors über das Poti einzustellen. Die drei LEDs dienen nur der optischen Kontrolle. Sie können bei Bedarf entfernt werden.
Wie fast immer habe ich mehr Platinen als eigenen Bedarf. Wer Interesse hat, kann sich gerne per PN melden.