Hallo!
Ich bin auf der Suche nach einer leichter erhältlichen Alternative zu
diesem Chip:
http://www.lsicsi.com/pdfs/Data_Sheets/LS7082N1.pdf
Wichtig ist mir auch der INDX-Eingang, um verlorene Schritte zu
signalisieren.
Der verlinkte Chip wäre perfekt, man kann ihn jedoch nicht bei den bei
uns üblichen Händlern bekommen (Conrad, Reichelt, RS-Components)
Leider brachte eine Suche bei oben genannten Händlern nach "Incremental
Encoder Interface" oder "Incremental Encoder IC" keine Treffer.
Deshalb meine Frage an euch:
Kennt jemand einen entsprechenden Chip, der leichter erhältlich ist?
Vielen Dank im Voraus!
Man kann das Teil mit Hardware nachbauen. Was brauchst Du denn genau?
Welche Auflösung 1-, 2- oder 4-fach? Welche Versorgungsspannung und
welche Eingangsfrequenz?
Wenn Du anschließend nur einen Zähler betreiben möchtest, gibt es auch
ICs, die diesen schon integriert haben: zum Beispiel THCT12024.
Davon habe ich noch einige herumzuliegen.
Wenn die Eingangsfreuquenz nicht zu hoch ist, schafft es ein AVR, die
Signale auszuwerten und anzuzeigen.
Hier ist eine ähnliche Schaltung aus zwei Logik-ICs:
https://www.mikrocontroller.net/articles/Drehgeber#Dekoder_mit_diskreten_Logik-ICs
Den Indeximpuls könntest du ebenfalls mit dem Takt synchronisieren, wenn
du statt des 6-Bit-D-Registers eins mit 8 Bit nimmst.
Im Gegensatz zum LS7082 brauchst du hier noch eine Taktquelle, dafür
entfällt die Vorfilterung der Eingangssignale. Die Zuverlässigkeit bei
zappeligen Eingangssignalflanken dürfte mit dieser Methode besser sein.
Hallo!
Danke für die Tipps!
Ich habe mich für den HCTL-2022 entschieden.
Eine Frage hätte ich:
Was macht der HCTL-2022 mit dem Index-Impuls? Ich kann keinen Ausgang
entdecken, der einen Fehler signalisiert...
Danke im Voraus!
Encoder schrieb:> Das heißt, du würdest das Index-Signal in den Mikrocontroller leiten,> der liest dann den Zähler aus und schaut, ob noch alles passt?
Ja - falls du höhere Pulsfrequenzen hast, nimmst du einen µC, der das
Zählen in Hardware macht.
Encoder schrieb:> Das heißt, du würdest das Index-Signal in den Mikrocontroller leiten,> der liest dann den Zähler aus und schaut, ob noch alles passt?
Wie wertest du denn den Zähler überhaupt aus?
Da schöne an den Avago Teilen ist ja, dass sie einen sehr schnellen,
internen Zähler haben, den man mit niedriger Geschwindigkeit auslesen
kann.
Da gehen dann eigentlich keine Pulse verloren.
Encoder schrieb:> Was macht der HCTL-2022 mit dem Index-Impuls?
Er setzt den Zähler zurück auf 0.
> Ich kann keinen Ausgang entdecken, der einen Fehler signalisiert...
Den hat der LS7082 auch nicht. Dort wird nur der Indeximpuls selbst
(synchronisiert mit der steigenden Flanke des A-Signals) ausgeben.
Ok, dann war das ein Missverständnis. Meine Frage war, was der HCTL-2022
mit dem Index-Signal macht.
Mit Mikrocontroller zähle ich nicht, da es mehrere Sensoren sind und der
µC schnell überfordert wäre...
Der HCTL-2022 hat einen Takt von 33MHz für einen Sensor. Die Gefahr,
dass dabei Schritte verloren gehen, ist sehr gering.
Außerdem spart es Zeit, da man nicht so viel programmieren muss.
Yalu X. schrieb:> Encoder schrieb:>> Was macht der HCTL-2022 mit dem Index-Impuls?>> Er setzt den Zähler zurück auf 0.
Warum gibt es dann auc noch einen Reset-Eingang?
Ich dachte, der merkt sich den Abstand zwischen zwei Impulsen und prüft
in Zukunft, ob der Abstand gleich viele Schritte gehabt hat oder so...
Wäre ja vorteilhaft für die Fehlererkennung....
>>> Ich kann keinen Ausgang entdecken, der einen Fehler signalisiert...>> Den hat der LS7082 auch nicht. Dort wird nur der Indeximpuls selbst> (synchronisiert mit der steigenden Flanke des A-Signals) ausgeben.
Alles klar...
Gut, muss man halt mit dem Mikrocontroller (der mehrere HCTL-2022
ausliest) machen...
Encoder schrieb:> Das heißt, du würdest das Index-Signal in den Mikrocontroller leiten,> der liest dann den Zähler aus und schaut, ob noch alles passt?
Nein.
Encoder schrieb:> Mit Mikrocontroller zähle ich nicht, da es mehrere Sensoren sind und der> µC schnell überfordert wäre...
Bei STM32 kann jeder 2-Kanal Timer auch Quadrature Impulse in Hardware
zaehlen. Und wenn Du noch mehr Kanaele in dem Timer hast, kannst Du mit
den Indexpuls den Zaehlerstand auch in Hardware "capturen".
Encoder schrieb:> Warum gibt es dann auc noch einen Reset-Eingang?
Damit man den Zähler auch anderweitig, bspw. durch einen Endschalter
zurücksetzen kann.
> Ich dachte, der merkt sich den Abstand zwischen zwei Impulsen und prüft> in Zukunft, ob der Abstand gleich viele Schritte gehabt hat oder so...> Wäre ja vorteilhaft für die Fehlererkennung....
Ja, das wäre praktisch, ist aber nicht implementiert.
Encoder schrieb:> Mit Mikrocontroller zähle ich nicht, da es mehrere Sensoren sind und der> µC schnell überfordert wäre...
Dann nenne doch mal Fakten.
Um wieviele Zähler geht es?
Was ist die maximale Pulsfrequenzen?
Guck dir mal einen Arduino Due (SAM3X8E) an. So schnell ist der nicht
überfordert.
Encoder schrieb:> Was macht der HCTL-2022 mit dem Index-Impuls? Ich kann keinen Ausgang> entdecken, der einen Fehler signalisiert...
Dazu ist der Index-Impuls ja auch nicht da, sondern zur Initialisierung,
da es sich um einen Inkremental-Zähler handelt - es gibt erst einen
gültigen Positionswert, wenn die Indexmarke überfahren wurde und dabei
der Zähler auf Null (oder irgendeinen anderen definierten Wert) gestellt
wird. Einen Fehler kann man nur detektieren, wenn die Marke erneut
überfahren wird und der Wert nicht übereinstimmt, aber erstens ist
garnicht sicher, ob das passiert (z.B. weil die Indexmarke am Ende des
Massstabs sitzt), und zweitens enthält dein Original-IC garkeinen
Zähler, kann also auch verlorene Schritte nicht feststellen.
Es gibt Maschinen, die nach der Bearbeitung eines Werkstücks erneut über
die Indexmarke fahren, aber der Vorgang unterscheidet sich nicht von der
ersten Initialisierung. Man kann dann natürlich prüfen, ob der
definierte Wert noch stimmt, wenn nicht wird das Werkstück fehlerhaft
sein. Aber diese Logik muss in der Steuerung implementiert sein.
Ich habe für solche Encoder PLDs oder CPLDs eingesetzt.
Georg
Wolfgang schrieb:> Dann nenne doch mal Fakten.> Um wieviele Zähler geht es?> Was ist die maximale Pulsfrequenzen?
Das sind vermutlich zu viele Fragen auf einmal. Was vielleicht klar
geworden ist, daß nicht ein Encoder sondern ein Decoder gesucht wird.