Impulserfassung

OP #7107008
Lesenswert?

guten Tag zusammen.
ich möchte mit esp8266, einem Impulsgeber (Impulslänge = 200ms) an einer 
Wasseruhr den Wasserverbrauch beobachten, es sollte einen Impuls pro 
Liter bzw pro Umdrehung des Magnets geben, das hat der Multimeter auch 
bestätigt, aber ich bekomme leider zu viele Impulse bzw einsen ( 
s.Bild).

pot = ADC(0)

while True:
    try:
        pot_value = pot.read()
        print(pot_value)
        time.sleep(0.15)
        client.publish('testclient', str(pot_value))
    except :
        client.disconnect()
        sys.exit()

hat jemand Ahnung woran es liegen könnte?
Angehängte Dateien:
Gast #7107019
Lesenswert?

Vermutlich am sogenannten Prellen. Da Dein Geber wohl keine 
Versorgungsspannung benötigt, handelt es sich um um einen mechanischen 
Kontakt. Die schliessen nicht und bleiben zu, wie man es sich 
idealerweise wünschen würde, vielmehr hüpfen sie unter Umständen noch 
mehrmals, bevor dann Ruhe einkehrt. Das passiert viel zu schnell für 
Dein Multimeter, aber der ESP ist schnell genug, um das als einzelne 
Pulse zu zählen.

Das gesuchte Zauberwort heißt : "Entprellung", kann man auch in Software 
erledigen.
OP #7107067
Lesenswert?

Mario P. schrieb:
> FOp schrieb:
>> Das gesuchte Zauberwort heißt : "Entprellung"
>
> Neuling A. schrieb:
>> Reed-kontakt Äquivalent, Passiver, Impulsgeber, Open Drain.
>
> Der Impulsgeber besitzt eine Elektronik. Er gibt einen 200ms-Impuls aus.
> Da kein mechanischer Kontakt vorliegt, schließe ich Prellen aus.
>
> Mario P.

was kann dann dabei helfen, die Impulse richtig zu erfassen?
#7107075
Lesenswert?

Neuling A. schrieb:
> ich bekomme leider zu viele Impulse bzw einsen

Der Impulsgeber liefert einen 200ms-Impuls, in Deinem Programm wartest 
Du aber nur 150ms. Da wirst Du den selben Impuls wohl (öfter) 2x 
erfassen.
Bei open Drain am Impulsgeber ist die Abfrage über den ADC eher 
ungünstig, da ich nur 2 Potentiale habe. Ich würde hier eher einen 
"normalen" Eingangspin wählen und bei Potentialänderung am Pin einen 
Interrupt auslösen lassen (geht vielleicht auch für eine Flanke - ich 
kenne die Möglichkeiten des ESP nicht. Da können hier sicher Andere 
helfen).

Mario P.
#7107085
Lesenswert?

Peter D. schrieb:
> Dann meint "Reed-kontakt Äquivalent" wohl Optokoppler.

aus dem Datenblatt:
Impuls-Charakteristik    : Reed-Kontakt Äquivalent,
                           Passiver Impulsgeber,
                           Open Drain
Maximale Abfragespannung : 30 V
Maximale Strombelastung  : 25 mA

kann Optokoppler sein oder auch einfach Transistor/Fet

Wolfgang schrieb:
> Je nach Leitungslänge emp­fiehlt es sich jedoch, einen niederohmigeren
> externen Pullup-Widerstand zu verwenden, um die Störempfindlichkeit zu
> verringern.

ACK

Mario P.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren