www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Verständnisfrage Input Capture/Frequenz/Timer mit Tastenentprellung


Autor: Dominik Steg (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

ich beschäftige mich erst seit 3 Wochen mit AVR's und habe erste LED's 
zum leuchten und blinken gebracht.
Ich lese fleißig die Tutorials und möchte nun eine Frequenz mittels 
einem Reedkontakt und einem Magnet (schmutzunempfindlich) einlesen and 
einem Prüfstand.
Der Prüfstand dreht bis zu 16000 U/min, ca. 267Hz, d.h. ca. 3,75ms.
Ich dachte da an die input capture Funktion, die soll ja für solche 
Fälle sein.
Der Reedkontakt muss ja entprellt werden. Bis jetzt habe ich die Routine 
aus dem Tutorial von Peter Danegger genommen, wo die Taste über den 
Timer 4x geprüft wird.
Nur geschieht der overflow in dieser Routine (die ich leider nicht 
verstehe, sondern einfach übernommen habe) alle 10ms.
Wen ich jetzt bei voller Drehzahl aber alle 3,75ms ein Signal bekomme, 
dann wäre doch das "Abtasten" der Tasten alle 10ms zu spät.
Kann man das Problem mit EINEM Timer lösen? Denn ich möchte ja auch die 
Drehzahl über die Zeit berechnen.

Danke!
Dominik

Autor: Peter Dannegger (peda)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Dominik Steg schrieb:
> Der Prüfstand dreht bis zu 16000 U/min, ca. 267Hz, d.h. ca. 3,75ms.

Da dürfte ein mechanischer Kontakt mit 2ms Prellzeit überfordert sein. 
Gerade Reed-Kontakte sind besonders langsam.
Nimm nen Hall-IC.


Peter

Autor: Dominik Steg (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Peter,

mit welcher Prellzeit rechnet man bei mechanischen Kontakten?

Gruß
Dominik

Autor: Dominik Steg (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo nochmal,

bleibt jedoch dann trotzdem die Frage noch weiter bestehen, wie ich das 
mit einem Timer managen kann, da ja der Kontakt alle 3,75ms geschlossen 
wird. Oder ist hier zwingend ein weiterer Timer erforderlich, dann 
müsste ich einen anderen µC mit 2-Timern wohl verwenden...

Autor: Ulrich (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Man braucht keinen 2 ten Timer. Das Entprellen kann man so lösen, dass 
einer Flanke ersteinmal für die Prellzeit oder etwas länger (z.B. 2-3 
ms)  keine weiteren Signale angennommen werden. Die Verzögerung und die 
Messung der Zeit kann man mit einem Timer lösen. Die Wartezeit muß ja 
auch nicht so exakt sein, Hauptsache länger als die Prellzeit.

Wenn die Prellzeit allerdings zu lang ist geht es einfach nicht mit dem 
Kontakt.

Autor: Florian Schütte (der_picknicker)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Auch solltest du bedenken, dass die Abtastrate (also das Abfragen des 
Pins) doppelt so hoch sein sollte, wie die max. Eingangsfrequenz um 
Informationsverlust (also falsche Berechnungen) zu vermeiden. Mehr dazu 
hier:
http://de.wikipedia.org/wiki/Abtastrate
http://de.wikipedia.org/wiki/Nyquist-Shannon-Abtasttheorem

Autor: Reed-Schalter (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Dominik,

ich rate Dir dringend zu einem Hall-IC.
Von einem ähnlichen Problem stand ich auch schon mal, schon viele Jahre 
her. Ich habe den Gedanken Reed-Kontakt, so verlockend das auch sein mag
sehr schnell aufgegeben. Grund war die Lebensdauer des Reed-Kontaktes.
Rechne Dir mal aus, wie lange das Teil hält, Anzahl der Schaltungen (aus
Datenblatt) und dann aus der Einschaltdauer bzw. Laufzeit des 
Prüfstandes
die Lebensdauer errechnen..............

Dann kommst Du vermutlich schnell vom Reed-Kontakt ab. Ich habe die 
Entscheidung kein Reed-Kontakt nicht bereut..........

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.