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
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
Hallo Peter, mit welcher Prellzeit rechnet man bei mechanischen Kontakten? Gruß Dominik
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...
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.
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
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..........
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.