Jump to content

Drezahlmessung mit TF?


Recommended Posts

Hallo,

ich möchte eine Drehzahl messen. Einen Sensor habe ich schon, das ist ein Hall Sensor, der die Bewegung von kleinen Zahnrädern Erkennt. Der Sensor gibt mir pro Zahn einen Puls von 30µs länge aus.

 

Mein plan wäre, jeden Puls mit einem Zeitstempel zu versehen (auf ca.1µs genau??). Anschließend würde ich gern so alle 10ms die aufgelaufenen Pulse zählen, und mit den Zeitstempeln des ersten und letzten Pulses die Drehzahl berechnen.

 

Wäre so etwas mit TF möglich? Mit welcher Hardware?

 

Danke schon mal!

Link to comment
Share on other sites

Hab in den vergangenen Tagen einige Tests mit optischen Drehzahlsensoren durchgeführt. Hatte zwei zur Probe. Der Erste gibt Spannungsimpulse aus, der Zweite einen konditionierten Strom von (4...20)mA. Hab mit dem DC Brick einen Gleichstrommotor gesteuert und die Geschwindigkeit über den LinearPoti geregelt. Auf die kleinen Scheibe ist ein Reflektionsstreifen geklebt. Bei Kontakt wird das ausgesendete Licht zum Sensor zurückgeworfen. Die Impulse hab ich über den I/O 16 erfasst. Strom musste ich mit dem Multimeter messen, da ich leider kein Current-Bricklet zur Hand hatte. Auf dem LCD hab ich mir dann noch paar Werte anzeigen lassen. Hab noch einen weiteren Sensor in der mache der auf ein anderes Prinziep setzt. Bei geeigneter Kalibrierung kann man so aber ganz gut die Umdrehungen messen. Anbei noch ein Bild vom Aufbau.

IMAG0306.thumb.jpg.66ae8c3c9c1c4c78cd703f363ed4f4cf.jpg

Link to comment
Share on other sites

Das finde ich spannend Borgel,

 

kannst du noch ein paar mehr Details verraten:

- In welchem Bereich hast du gemessen (insbesondere max RPM. würde mich interessieren)

- Gab es bei hohen RPM irgendwann Messprobleme?

 

Ich würde erwarten, dass du bei deinem Aufbau nicht mehr als 1000 RPM messen kannst... (wohlgemerkt mit TF-Hardware) (dummer Rechenfehler, siehe unten; Minuten sind was anderes als Sekunden!!!!)

Link to comment
Share on other sites

Hallo AuronX,

 

also wie gesagt eine Kalibrierung hab ich nicht vorgenommen. War mehr zur Probe gedacht. Der Motor hat glaube maximal 14500 U/min, hab ihn aber nicht mit voll Drehzahl laufen lassen. Messprobleme hatte ich keine. Der I/O hat immer eine Veränderung zwischen High und Low und bei dem AOmA Signal war ich im unteren Messbereich des Sensors. Die Sensoren können (muss ich noch mal prüfen) max. 10000 U/min. Bin mir da aber nicht ganz sicher. Ich schätze mal, dass ich so bis 5000 - 6000 U/min gemessen habe. Werde das mal mit einem Messgerät vergleichen, also bei einer mir bekannten Umdrehung.

Link to comment
Share on other sites

  • 3 weeks later...

LOL! Ich hatte ja so ein großes Brett vor dem Kopf...

 

ich habe oben geschrieben, dass maximal 1000 Umdrehungen pro Minute gehen sollten weil ja ein IO nur maximal 1000 Impulse pro Sekunde verarbeiten kann. Da hab ich in der Schule wohl nicht aufgepasst.

 

Meine neue Vermutung liegt demnach bei maximal 60000 RPM (1000 RPS) ;-)

 

Ansonsten kann man sich aber natürlich auch mit einer Übersetzung behelfen.

Also da wo gemessen wird mit halber Drehzahl arbeiten.

Link to comment
Share on other sites

Ich würde mal vorsichtshalber konservativ von 800 Nachrichten pro Sekunde ausgehen (Slots gehen verloren da das Betriebssystem scheduled und sowas).

 

Dann sollten wir noch Nyquist anwenden (http://de.wikipedia.org/wiki/Nyquist-Frequenz). Dann komme ich auf 800*60/2 = 24000 Umdrehungen/Minute unter der Annahme dass Callbacks verwendet werden und sonst im System keine Nachrichten unterwegs sind :).

Link to comment
Share on other sites

@borg: Danke für die Aufklärung. Ich bin in dieser Hinsicht tatsächlich nicht so fit.

Aber ist meine naive Annahme eigentlich richtig, dass ich mithilfe einer Übersetzung (oder heißt das dann Untersetzung?) auch höhere Drehzahlen messen kann, dafür aber nicht mehr mit voller Auflösung?

 

Beispiel: Mein tatsächliches Rad dreht mit 64.000 RPM, aber ich führe die Messung an einem Rad durch das mit einer 4:1 Übersetzung zum Urrad dreht? Dann würde ich dort nur noch 16000 RPM anliegen haben... Ist das so richtig, oder übersehe ich irgendwas?

Link to comment
Share on other sites

@AuronX

 

Ist das Übersetzungsverhältnis i < 1 ist es eine Übersetzung, ist i > 1 so spricht man auch von einer Untersetzung. In deinem Fall muss du um auf i zu kommen deine Antriebsdrechzahl duch deine Abtriebsdrehzahl teilen. Das heißt i = 16000/64000 = 0,25 --> also eine Übersetzung. Bei Wiki giebt es auch einen Eintrag dazu ^^

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

×
×
  • Create New...