Forum: Mikrocontroller und Digitale Elektronik Impulserfassung


von Neuling A. (jesuisla)


Angehängte Dateien:

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?

: Bearbeitet durch User
von Testuser (Gast)


Lesenswert?

Guck dir mal den Spannungsverlauf am ADC Eingang an. Vielleicht passt 
der Bereich nicht, vielleicht ist der Impuls lang, wer weiß.

von FOp (Gast)


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.

von Peter D. (peda)


Lesenswert?

Einen Kontakt liest man digital ein und nicht mit dem ADC. Und natürlich 
ist ein Pullup nötig (kann intern programmiert werden).
Entprellen muß man auch, wenn man die Flanken zählen will.

von Mario P. (mario_71950c)


Lesenswert?

was ist das für ein Impulsgeber - bitte die genaue Bezeichnung angeben

Mario P.

von Neuling A. (jesuisla)


Lesenswert?

PM +m Kommunikationsmodul
Reed-kontakt Äquivalent, Passiver, Impulsgeber, Open Drain.

https://www.allmess.de/fileadmin/multimedia/alle_Dateien/MA/MA_12715-AC%20MA%20BM+m%20PM+m_TS0921.pdf

von Neuling A. (jesuisla)


Lesenswert?

FOp schrieb:

> Das gesuchte Zauberwort heißt : "Entprellung", kann man auch in Software
> erledigen.

hast Du bitte einen Hinweis? meinst du vlt bounctime funktion?

von Mario P. (mario_71950c)


Lesenswert?

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.

von Neuling A. (jesuisla)


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?

von Wolfgang (Gast)


Lesenswert?

Peter D. schrieb:
> Und natürlich ist ein Pullup nötig (kann intern programmiert werden).

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

von Peter D. (peda)


Lesenswert?

Mario P. schrieb:
> Da kein mechanischer Kontakt vorliegt, schließe ich Prellen aus.

Dann meint "Reed-kontakt Äquivalent" wohl Optokoppler.
Trotzdem kann Entprellen nie schaden. Es unterdrückt auch Störungen, je 
nach Leitungslänge, Größe des Pullup und durch starke Verbraucher 
(Motoren) in der Nähe.

von Mario P. (mario_71950c)


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.

von Wolfgang (Gast)


Lesenswert?

Neuling A. schrieb:
> was kann dann dabei helfen, die Impulse richtig zu erfassen?

Erstmal würde ich ein Messwerkzeug bemühen, um beurteilen zu können, ob 
die Eingangssignal wie erwartet aussehen, i.e. ein Oszi.

von Mario P. (mario_71950c)


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.

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.