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

Eine eigene Frage? Dieser Thread ist über 4 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.