Drehzahlmessung

Gast #1529120
Lesenswert?

Guten Abend !

Da ich nun mein Gleichstrommotor per PWM ansteuern kann, möchte ich auch 
gerne die aktuelle Drehzahl des Ankers/Welle ermitteln.

Ich würde dann einen magneten an die Welle befestigen und mit einem 
Hallsensor ebenhalt messen. Nur muss ich doch die Zeit berechnen, 
zwischen zwei Punkten wo der Hallsensor durchschaltet oder nicht ?

Ist das überhaupt möglich so schnell das mit der Software zu lösen ? 
Benutzt wird ein Attiny2313.

Ich wäre für Anregungen und Tipps sehr dankbar !

MfG,
Anfänger
Gast #1529140
Lesenswert?

Hallo !

Danke für die Hilfe !

Ich habe mir das so vorgestellt:


Sobald der Hallsensor durchschaltet fängt der Timer am Attiny2313 sofort 
an zu "zählen" und beim nächsten Impuls vom Hallsensor hört er und fängt 
von vorne an usw...

Kann ich das ganze so pogrammieren, dass es quasi den anderen Code im 
Programm nicht blockiert ? Ich meine ebenhalt: Multi-Threading. Wäre ja 
schlecht wenn ich wegen dem Zählen etc.. immer im Code pause machen 
müsste.
Gast #1529147
Lesenswert?

>Kann ich das ganze so pogrammieren, dass es quasi den anderen Code im
>Programm nicht blockiert ?

Ja. Guck mal, ob der ATTiny auch einen Inputcapture-Mode hat.
Dann läuft die Aktion völlig autonom und meldet sich nur beim Erreichen 
einer Flanke.
Der ATmega8 hat die InputCapture-Unit auf jeden Fall.
Gast #1529154
Lesenswert?

>Du misst allerdings jetzt nicht direkt die Impulse/Minute
sondern die Zeit zwischen 2 Impulsen.

Ja genau das meine ich. Dann habe ich ja die Umdrehung pro der 
gemessenen Zeit ebenhalt die der AVR "misst". Das kann man dann auf 
Minute (dreisatz :D) rechnen und fertig ist die Laube !

Dann beschäftige ich mich mal jetzt mit dem TIMER vom Attiny2313. Ein 
paar Atmega8 hab ich auch rumstehen...

Eine Frage zum Schluss:
Welche Programmiersprache ich jetzt nehme ist doch egal oder ? Ich 
programmiere eigentlich gerne in BASCOM kann auch aber in C, wenn es 
sein muss. Aber ich habe doch keine "Verzögerung etc.." wenn ich mit 
BASCOM arbeite oder ?

Es ist ja bekannt, dass die Assember Programme ja schneller ablaufen als 
die C Programme...
Gast #1529167
Lesenswert?

Hi

>Welche Programmiersprache ich jetzt nehme ist doch egal oder ?

Von einem notorischen Assemblerprogrammierer: Nimm die Sprache, die du 
am besten kannst. Erst wenn es damit nicht geht, solltest du umsatteln.

MfG Spess

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