Max. Encoder Ausleserate mit tinyAVR

Gast #1980790
Lesenswert?

Hallo,

ich möchte einen optischen Encoder (AB-Signal) mit einem tinyAVR (20 
MHz) auslesen. Der aktuelle Zählerstand soll vom tiny per SPI übertragen 
werden.

Was schätzt Ihr, wie hoch darf die Frequenz des AB-Signals werden, damit 
ich es noch sicher detektieren kann? (Theoretisch 10 MHz, aber der tiny 
benötigt ja einige loops für Berechnung und zum Bedienen des SPI 
Interfaces.)

Gruß,
Michael
(Firma: TravelRec.) Persönliche Seite #1980806
Lesenswert?

Michael schrieb:
> Was schätzt Ihr, wie hoch darf die Frequenz des AB-Signals werden, damit
> ich es noch sicher detektieren kann?

Detektieren heißt, die Pulse sauber zu erkennen. Dazu gehört auch eine 
Entprellung, wobei die Steilheit der ausgegebenen Flanken auch 
ausreichend schnell sein muss, um hohe Frequenzen zu erreichen. Aus dem 
Bauch heraus würde ich sagen, dass über 500kHz Schluss ist. Mit einem 
XMega mit integrierter Decoder-Hardware dürfte das deutlich schneller 
gehen. Dort kann auch die DMA-Einheit hilfreich sein.
#1980842
Lesenswert?

@  Michael (Gast)

>MHz) auslesen. Der aktuelle Zählerstand soll vom tiny per SPI übertragen
>werden.

Macht bei 8 Bit mindestens 16 Takte, sprich bei 16 MHz CPU-Takt 1 MSps.
Real eher die Hälfte oder weniger.

Irgendwann ist ein Controller nicht mehr sinnvoll, dann muss Hardware 
ran, siehe Artikel Drehgeber.

MFG
Falk
Gast #1980861
Lesenswert?

Laut Hersteller kommt aus dem Sensor ein sauberes Gray-Code Signal 
heraus. Entprellen sollte also nicht nötig sein.

500kHz sind zu wenig. Ich werde mir den XMEGA mal näher anschauen. Danke 
für den Tipp.

Gruß,
Michael

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