Optischen Drehgeber mit GPIO einlesen

  • Hallo liebes Forum!

    Hat jemand Erfahrung damit, ob sich ein inkrementaler Drehgeber über die GPIO-Pins auswerten lässt?

    Und wenn ja, wie sieht es da mit der maximalen Abtastfrequenz aus?

    Vielen Dank schon einmal im Voraus!

    Liebe Grüße Juben

  • Dafür gibts Libraries, die das machen. Ich hab selbst noch keine benutzt, aber schon öfter was drüber gelesen.

    Wenn das gut implementiert ist, dürfte das im KHz-Bereich liegen. Wie viel brauchst du denn?

    Oh, man kann hier unliebsame Nutzer blockieren. Wie praktisch!

  • Wie viel brauchst du denn?

    Anfangs habe ich schon versucht den Sensor mit einer SPS auszuwerten. Da habe ich eine Zykluszeit von 250 µs verwendet, das ergibt also 4 kHz.

    Allerdings wurde der Sensor da nicht richtig ausgewertet, so wurden für den gleichen Verfahrweg bei unterschiedlichen Geschwindigkeiten einmal rund 5000 Pulse gezählt und einmal nur 3000 Pulse. Also ich würde sagen, dass ich auf jeden Fall deutlich höher muss als 4 kHz :D

    Danke für die rasche Antwort :)

  • Eine sinnvolle Steuerung würde eher keine Zykluszeit nehmen, sondern mit Interrupts arbeiten.

    Aber mal andersrum gefragt: Welche Auflösung hat dein Drehgeber und wie viele Umdrehungen/min läuft der denn?

    Oh, man kann hier unliebsame Nutzer blockieren. Wie praktisch!

  • Hallo Juben,

    wenn Du eine Library benutzt, die in C(*) geschrieben ist und zeitoptimierten Code erzeugt, dann kannst Du mit 40 bis 50 MHz Abtastfrequenz rechnen.

    Für ein Auftragsprojekt habe ich mal eine GPIO-Library in Assembler entwickelt, die brachte es auf mehrere 100 MHz Setzen bzw. Lesen von GPIO-Pins.

    In solche Regionen kommst Du aber nur, wenn die Library-Funktion für einen Zeitraum Impulse zählt und nach Ablauf der Zeit das Ergebnis überträgt.

    Sobald Du einzelne Impulse über Dein Anwendungsprogramm erfassen und zählen möchtest, dann ist's mit den Dutzend MHz ganz schnell vorbei.


    Beste Grüße

    Andreas

    (*) gilt für alle Programmiersprachen, die sich auf C zurückführen lassen

    Ich bin wirklich nicht darauf aus, Microsoft zu zerstören. Das wird nur ein völlig unbeabsichtigter Nebeneffekt sein.
    Linus Torvalds - "Vater" von Linux

    Linux is like a wigwam, no windows, no gates, but with an apache inside dancing samba, very hungry eating a yacc, a gnu and a bison.

Jetzt mitmachen!

Du hast noch kein Benutzerkonto auf unserer Seite? Registriere dich kostenlos und nimm an unserer Community teil!