Forum: Mikrocontroller und Digitale Elektronik Fototransistor / PCF8583 Event-Counter / Prellen


von F. C. (random236)


Angehängte Dateien:

Lesenswert?

Hallo zusammen,

da dies mein erstes größeres, eigenes Projekt im Bereich Elektronik ist 
bräuchte ich etwas Hilfestellung und vll. etwas Tipps im allgemeinen 
Schaltungsaufbau bzw. etwas ausführliche Erläuterungen zu bestimmten 
Punkten. Ich bin bemüht selbst den Kopf einzuschalten, bitte aber um 
etwas Nachsicht, sollten die ein oder anderen Dinge nicht direkt 
schalten.

Konkretes Ziel ist das Auslesen des Zeigerdurchgangs einer Wasseruhr, es 
gibt da ja bereits eine Vielzahl an verschiedenen Projekten im Netz. 
Jedoch erfüllt keines mein Anforderungsprofil. Da die Schaltung im 
finalen Zustand, im Batteriebetrieb laufen soll möchte ich ungerne einen 
Mikrocontroller 24/7 laufen lassen. Daher die Lösung den Zählerdurchgang 
mittels PCF8583 im Event-Counter auszuzählen und den Mikrocontroller 
(ESP8266) per Interrupt aufzuwecken wenn der Zähler voll ist bzw. im 
festen Intervall aufwecken, Zählerstand auslesen und per MQTT zu 
verschicken.

Für die Detektion der Zählerscheibe hab ich mich im Netz (Volkszähler) 
einer Lösung mittels Kollimator fokussierter High-Power grüner LED 
(Kontrastverstärkung) als Punkt auf den Zähler bedient. Ein 
Fototransistor vom Typ PT334-6C dient als "Auge".

Den bisherigen Schaltungsaufbau und dazugehörige Oszilloskopmessungen 
findet ihr im Anhang!

Erster Schritt war es das Fototransistorsignal direkt per Interrupt am 
ESP als fallende Flanke zu verarbeiten. Im File Messung.jpg (Gelbe 
Linie) gemessen Klemme K1 gegen Masse ist der Ausgang des 
Fototransistors, die bleibende Abweichung beim Durchschalten von T2, ich 
vermute hier die Kollektor-Emitter Saturation Voltage (lt. Datenblatt 
0,4V), diese verhindert das Auslösen des Interrupt.

Gibt es hier vll. als einfachste Lösung die Möglichkeit mittels Diode 
o.Ä, die restliche Spannung zu vernichten und direkt auszuwerten?

Nächster Schritt im Ideenprozess, war dann die Auswertung mittels 
Komparator um mir sauber definierte Schaltschwellen zu erzeugen. Per 
Spannungsteiler und Abgleichpoti habe ich dann eine Schaltschwelle von 
0,8V eingestellt. Der Komparator kippt dann zwischen 0 und 5V. Wie in 
der Messung zu sehen (Klemme K2 - blaue Linie), schaltet der Komparator 
auch sauber durch. Wenn ich dieses Signal auf den Event-Counter führe 
bekomme ich auch gezählte Impules, allerdings zählt er nicht einen 
sondern mehrere hundert Impulse. Also am OSCI-Eingang gemessen und ein 
schönes Prellen des Komparator festgestellt. Ich vermute hier den 
unsauberen Übergang / Reflektionen der Zählerscheibe bis sie im sauberen 
"Lichtschatten" ist.

Wie im Bild zu sehen braucht es bei geringstem Wasserdurchfluss, als 
"schlechtesten" Zustand fast 50 ms bis zum klaren Pegel.

Meine nachfolgende Idee wäre ein Monoflop (74123), wenn ich das 
Datenblatt richtig verstehe brauche ich jedoch einen Kondensator 0,22*C 
[pF] um ein Re-Trigger des Signals mit jeder Prellflanke zu verhindern, 
heißt bei 50ms käme ich auf rund 230 uF. Daraus folgt ja mit einem 
externen Widerstand von (100kOhm) nach Formel aus dem Datenblatt eine 
Impulsdauer des Monoflop von fast 6s. Kann ich den Widerstand belibig 
klein wählen, um meine Impulsdauer zu drücken? Ich habe wenn der 
Wasserhahn läuft, einen Durchgang des Zeigers etwa alle 12s (siehe Bild 
Langzeitmessung) und brauche ja nur einen sehr kurzen Impuls für den 
Event Counter.

Oder gibt es vll. eine viel einfachere Lösung für das Problem?

Vielen Dank für eure Hilfstellungen

Lg random

Danke für eure Mithilfe

Nach

von S. R. (svenska)


Lesenswert?

F. C. schrieb:
> Gibt es hier vll. als einfachste Lösung die Möglichkeit mittels Diode
> o.Ä, die restliche Spannung zu vernichten und direkt auszuwerten?

Du könntest den Ausgang durch einen Hochpass-Filter schicken, der dir 
den DC-Anteil wegfrisst. Oder einen Trafo, der reagiert auch nur auf 
Wechselanteile.

Ansonsten kannst du auch einfach einen Schmitt-Trigger an dein 
Eingangssignal kleben, der sollte ein sauberes Signal ausgeben.

Eine Pfuschervariante wäre, die Masse vom ESP um 400mV anzuheben, dann 
stört dich die bleibende Abweichung nicht. Aber das kostet vermutlich 
mehr Strom als die anderen Varianten.

Das Prellen kann dir relativ egal sein: Wenn ein Signal kommt, dann 
wacht der Controller auf, wartet 100ms ab und wenn das Signal noch immer 
da ist, reagiert er - ansonsten nicht. Das kann er auch im Idle machen.

: Bearbeitet durch User
von Werner (Gast)


Lesenswert?

Der LM393 sollte als ST mit entsprechender Hysterese ausgelegt werden.

von Peter D. (peda)


Lesenswert?

F. C. schrieb:
> schönes Prellen des Komparator festgestellt.

Komparatoren oszillieren immer in der Nähe der Umschaltschwelle.
Deshalb baut man mit dem Komparator einen Schmitt-Trigger auf (positive 
Rüxckkopplung).

F. C. schrieb:
> Da die Schaltung im
> finalen Zustand, im Batteriebetrieb laufen soll möchte ich ungerne einen
> Mikrocontroller 24/7 laufen lassen.

Das geht prima z.B. mit einem AVR im PowerDown (<1µA).

von F. C. (random236)


Angehängte Dateien:

Lesenswert?

Danke für euer Feedback! Leider hat es doch ein paar Tage gedauert bis 
ich eure Vorschläge umsetzen konnte. Ich denke ich bin auf dem richtigen 
Weg.

Werner schrieb:
> Der LM393 sollte als ST mit entsprechender Hysterese ausgelegt werden.

Das habe ich jetzt getan, und siehe da es funktioniert. Der Eingang vom 
Fototransistor liegt jetzt direkt auf dem Schmitt-Trigger. (Siehe 
Anhang)

Peter D. schrieb:
> Das geht prima z.B. mit einem AVR im PowerDown (<1µA).

Nutze einen ESP8266 aber da gibt es ja auch entsprechende 
DeepSleep-Modis

Der Event Counter kommt jetzt auch mit dem Impulsen vom Schmitt Trigger 
zurecht, und zählt entsprechend, leider habe ich noch einige Fehlimpulse 
gerade nach dem Start des Systems. Könnten dies fehlende 
Abblockkondensatoren sein?

Einen aktuellen Schaltplan findet ihr auch im Anhang, habe jetzt eine 
Konstellation von R5=70k, R4=10k, R9=210k. Wenn ich den Artikel im 
hauseigenen Wiki richtig verstehe, stellt mein Spannungsteiler aus R4 
und R5 meine Referenzspannung ein, welche die Mitte zwischen der 
Hysterese darstellt. Ist R9 als Rückkopplungswiderstand dann alleine für 
die Hysteresebreite zuständig? Ich würde das System gerne Final auf eine 
Platine bringen, und möchte die Schaltschwellen bei einem Umzug o.Ä. 
gerne auf einen neuen Wasserzähler mit anderer Reflexion anpassen 
können. Dafür würde ich dann Trimmer einbauen. Oder stehen alle drei 
Widerstände im Verhältnis zueinander, und sollten alle per Trimmer 
justierbar sein?

Anhand des Oszilloskopbilder komme ich auf eine Schaltschwelle von 720mV 
und 760 mV obwohl ich rechnerisch auf 0,6V und 0,8V komme, die Potis 
habe ich seperat außerhalb der Schaltung auf die Werte getrimmt, sind 
aber auch sehr einfache mit einer Abweichung von +-20%.

Abschließend noch eine Frage zum Thema Abblockkondensatoren, ich habe da 
jetzt ein bisschen was drüber gelesen und es scheint eine halbe 
Wissenschaft zu sein. Oder reicht bei einer so einfachen Schaltung jedes 
IC per Faustwert 100n Kerko nah an VCC gegen GND.

Vielen Dank für eure Ratschläge und eure Hilfe?

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.