Forum: Mikrocontroller und Digitale Elektronik Auswerteelektronik Quatratursignal


von Dennis (Gast)


Lesenswert?

Guten Tag,

ich suche eine einfache und kompakte Möglichkeit, ein AB-Signal eines 
Encoders, auszuwerten.
Ich habe eine Linearführung mit optischem Messsystem inklusive 
Interpolator aus dem dann die Quatratursignal kommen.
Nun hätte ich gerne einen einfach Zähler an dem ich die zwei Signale 
anschließe. Am besten könnte ich dann an diesem Zähler die Auflösung 
meines Messsystems eingeben.
Anschließend würde ich gerne die zurückgelegte Strecke an einem Display 
ablesen.
Ich hätte das gerne wie bei den Digital-Anbaumessschieber nur mit 
externem Messsystem.

Leider finde nichts passendes. Hat jemand was ähnliches schon mal 
eingesetzt?

MfG
Dennis

von Falk B. (falk)


Lesenswert?

Ob es da was Fertiges gibt? Für die Grundlagen und Hinweise, siehe 
Drehgeber.

von Georg (Gast)


Lesenswert?

Dennis schrieb:
> Nun hätte ich gerne einen einfach Zähler an dem ich die zwei Signale
> anschließe

Gibt es bei Heidenhain, kosten aber Geld. Hat sich damit wohl erledigt.

Georg

von Georg (Gast)


Lesenswert?

Dennis schrieb:
> Nun hätte ich gerne einen einfach Zähler an dem ich die zwei Signale
> anschließe. Am besten könnte ich dann an diesem Zähler die Auflösung
> meines Messsystems eingeben.
> Anschließend würde ich gerne die zurückgelegte Strecke an einem Display
> ablesen.

So etwas habe ich mal gebaut:
https://www.rk-elektronik.de/wegmessung/index.html

Aber das war 1996. Es gab dafür Zähler mit Quadratureingang, z.B. 
Thct12024.pdf. Heute gibt es meines Wissens auch Controller mit 
Quadratureingängen.

Georg

von m.n. (Gast)


Lesenswert?

Dennis schrieb:
> Leider finde nichts passendes. Hat jemand was ähnliches schon mal
> eingesetzt?

Wie schnell werden die Signale ausgegeben?
Bis 50 - 100 kHz geht es mit einem AVR-Controller per Software. Hast Du 
genug Ahnung, es selber zusammenzulöten oder brauchst Du eine fertige 
Lösung?
Für das Selbermachen siehe hier: 
http://mino-elektronik.de/mt12_iic/mt12_iic.htm

Was wäre Dir eine fertige Lösung wert? Man kann eine Controllerplatine 
(AVR, STM32 oder Pico-Board) mit LCD/TFT nehmen und diese passend 
programmieren.

Georg schrieb:
> Aber das war 1996. Es gab dafür Zähler mit Quadratureingang, z.B.
> Thct12024.pdf.

Hätte ich auch noch anzubieten ;-)

von Hugo H. (hugo_hu)


Lesenswert?


von Sönke P. (s03nk3)


Lesenswert?

TouchDRO https://www.touchdro.com und ggf. die quelloffene ESP32 
Firmware https://github.com/romeo987/TouchDRO_Interface/ dazu.

von Detlef W. (detlefr)


Lesenswert?

Fertige DROs bekommst du bei fast jeder Bude, die dir z.B. Glasmaßstäbe 
verkauft. Kompakt sind die meisten aber nicht, da sie an Maschinen 
montiert auch unter ungünstigen Umgebungsbedingungen gut ablesbar sein 
sollen.

Wenn es was selbst gebautes sein darf: alle STM32 die mir bislang über 
den Weg gelaufen sind haben mindestens einen Timer mit Quadraturencoder. 
Dann braucht es nur noch ggfs. einen Pegelwandler, ein kleines Display 
von Ali und eine Handvoll Zeilen Programmcode. Ist halt auch die Frage, 
wie zuverlässig das alles werden soll.

von Veit D. (devil-elec)


Lesenswert?

Hallo,

oder  https://www.microchip.com/en-us/application-notes/an2434

für alle megaavr Typen. Bsp. Atmega4809, AVRxDBx, oder die ATtiny 
Varianten solange genügend Timer/CCL vorhanden sind. Wobei der diskrete 
Aufbau aus #5 auch reizen würde.  :-)

: Bearbeitet durch User
von Michael B. (laberkopp)


Lesenswert?

Dennis schrieb:
> Leider finde nichts passendes.

Dabei ist die Welt voller DRO.

Warum gefallen die dir nicht ?

Welche Sonderlocke brauchst du ?

Das übliche DRO kann

- 0-stellen an beliebiger Position

- Vorzeichen wechseln

- mal 2 für Durchmesser

- Umschalten zwischen mm und inch

Ob an einem DRO nun ein Messschieber, ein Magnetlesekopf, ein 
Glasmassstab, ein Incrementalencoder dran hangt, ist eine reine 
Programmierungsfrage.

von Jobst M. (jobstens-de)


Lesenswert?

m.n. schrieb:
> Bis 50 - 100 kHz geht es mit einem AVR-Controller per Software.

Wenn er nichts anderes machen soll, gar Faktor 10 schneller.

Gruß
Jobst

von Falk B. (falk)


Lesenswert?

Jobst M. schrieb:
>> Bis 50 - 100 kHz geht es mit einem AVR-Controller per Software.
>
> Wenn er nichts anderes machen soll, gar Faktor 10 schneller.

Jaja, der Schwanzvergleich auf dem Schulhof. Na dann zeig mal einen AVR, 
der rein in Software ohne Hardwaredekoder und Zähler 1MHz schafft!
Hier waren es "nur" knapp 870kHz.

Beitrag "Re: Versetzte Rechtecksignale auswerten, kein drehgeber"

von olaf (Gast)


Lesenswert?

> Leider finde nichts passendes. Hat jemand was ähnliches schon
> mal eingesetzt?

Du bist 20-30Jahre zu spaet. Sowas gab es mal HCTL-2000/ 2016 / 2020.

Heute macht man es bei langsamen Signalen im TimerIRQ eines 
Microcontroller und fuer schnelle Steuerungsaufgaben nimmt man einen 
Controller der sowas integriert hat. Oder fuer ganz krasse Sachen dann 
halt ein FPGA.

Olaf

von olaf (Gast)


Lesenswert?

https://www.ebay.com/itm/124106220643

Gibt es sogar noch. :-D

Olaf

von Jobst M. (jobstens-de)


Lesenswert?

Falk B. schrieb:
> Jobst M. schrieb:
>>> Bis 50 - 100 kHz geht es mit einem AVR-Controller per Software.
>>
>> Wenn er nichts anderes machen soll, gar Faktor 10 schneller.
>
> Jaja, der Schwanzvergleich auf dem Schulhof. Na dann zeig mal einen AVR,
> der rein in Software ohne Hardwaredekoder und Zähler 1MHz schafft!
> Hier waren es "nur" knapp 870kHz.

Meinst Du, ich lasse mich von Dir blöde anmachen und liefere Dir dann 
noch Beweise?
870kHz liegt in 50 bis 100 kHz * 10 voll drin!

...

Gruß
Jobst

von Thomas F. (igel)


Lesenswert?

Dennis schrieb:
> Nun hätte ich gerne einen einfach Zähler an dem ich die zwei Signale
> anschließe.

Gibt es bei Ali:

https://de.aliexpress.com/item/1005002906844344.html

https://de.aliexpress.com/item/32869353712.html

Die Auflösung bietet aber nur feste Werte zur Auswahl.

: Bearbeitet durch User
von Dennis (Gast)


Lesenswert?

Vielen Dank für die Hilfe. Der Begriff 'DRO' hatte mir gefehlt.

MfG
Dennis

von Klaus S. (kseege)


Lesenswert?

olaf schrieb:
> Du bist 20-30Jahre zu spaet. Sowas gab es mal HCTL-2000/ 2016 / 2020.

Sowas gibt es heute unter dem Namen "IC-MD" vom IC-Haus in Mainz.
Wahlweise 1x48bit, 2x24bit oder 3x16bit Zähler. Anbindung über SPI (das 
habe ich benutzt) oder ein mir unbekanntes Interface mit dem Namen 
Bliss.
Habe 5 Stück als Evaluationsmuster für 5Euro/Stück erwerben können.

Gruß Klaus (der soundsovielte)

von Olaf (Gast)


Lesenswert?

> Habe 5 Stück als Evaluationsmuster für 5Euro/Stück erwerben können.

Man muss Muster kaufen? Normalerweise schicken einem die Firmen
die doch immer so zu.

Olaf

von Klaus S. (kseege)


Lesenswert?

Olaf schrieb:
> Man muss Muster kaufen? Normalerweise schicken einem die Firmen
> die doch immer so zu.

Keine Ahnung, ich bin vermutlich unnormal, vielleicht auch das IC-Haus?

Als Entwickler von Kleinststückzahlen (1!) bediene ich mich meist 
einfach bei Reichelt. Wenn ich Spezialbauteile brauche, wird der erste 
genommen, der sie mir anbietet. Theoretisch könnte ich stundenlange 
Suche mit der Einsparung von 40 Euro verbringen. Aber habe ich dazu 
Lust? Meine Arbeit hat auch viel mit Vergnügen zu tun :-)

Just my 2 cents

von 🍅🍅 🍅. (tomate)


Lesenswert?

Billiges CPLD Board, ein büsschen Code und ein LED/LCD Display....

von Wolfgang (Gast)


Lesenswert?

Georg schrieb:
> Heute gibt es meines Wissens auch Controller mit Quadratureingängen.

Selbst Arduinoboards gibt es, die Quadraturencoder direkt in ihrer 
Timer-HW unterstützen.

von 🍅🍅 🍅. (tomate)


Lesenswert?

Timer bringt doch nix, bei Quadratursignal.
Am besten legt man sowas auf externen Interrupt und macht die Auswertung 
dann in der ext. Interrupt Routine.

CPLD/FPGA ist trotzdem besser, der macht Auswertung, Display und was 
sonst alles anfällt, alles gleichzeitig.

von Falk B. (falk)


Lesenswert?

Rote T. schrieb:
> Timer bringt doch nix, bei Quadratursignal.

Lies mal die Doku der Xmegas. Dort wirst du erfahren, daß der 
Hardwaredekoder UP/DOWN Impulse generiert, die ein passend 
konfigurierter Timer direkt zählen kann, ohne daß die CPU da was tun 
muss.

> Am besten legt man sowas auf externen Interrupt und macht die Auswertung
> dann in der ext. Interrupt Routine.

Nö. Lies mal was zum Thema Drehgeber.

> CPLD/FPGA ist trotzdem besser, der macht Auswertung, Display und was
> sonst alles anfällt, alles gleichzeitig.

Kann ein Mikrocontroller ebenso, und mit Hardwaredekoder auch bei 
ziemlich hohen Frequenzen. CPLD/FPGA ist hier nicht wirklich das Mittel 
der Wahl.

von Klaus S. (kseege)


Lesenswert?

Ich habe den Eindruck, daß hier Äußeres und Inneres fröhlich 
durcheinandergeht.  Ob ein Up-Down-Counter, der schnell genug ist, um 
das Oszillieren eines der beiden Quadratursignale richtig(!) 
mitzuzählen, in einem CPLD/FPGA oder in einem Mikrocontroller sitzt, ist 
doch völlig unerheblich. Das ist in beiden Fällen die Hardwarelösung.

Die Softwarelösung ist der Timerinterrupt, der oft genug stattfindet, um 
das Abtasttheorem zu erfüllen.  Der ignoriert schlicht und einfach das 
Oszillieren.

Insofern ist doch das wichtige Entscheidungskriterium das Wissen um die 
Geschwindigkeit des Gebers. Ist der Geber so langsam, daß zwischen Ende 
der Oszillation und Erreichen des folgenden Zustands mindestens ein 
Timerinterrupt garantiert stattfindet, so reicht die Softwarelösung. 
Wenn das nicht garantiert ist, braucht man die Hardwarelösung, die 
ihrerseits schneller sein muß als die Geberoszillation, um richtige 
Ergebnisse zu produzieren.

Alles Weitere ist aus meiner (natürlich unmaßgeblichen) Sicht nur die 
Schönheit im Auge des Betrachters.

Just my 2 cents

von m.n. (Gast)


Lesenswert?

Klaus S. schrieb:
> das Oszillieren eines der beiden Quadratursignale richtig(!)

Nein, falsch. Hier ist nicht das HF-Forum!
Es geht hier um Quadraturdekoder und nicht um Oszillatoren. Und wenn bei 
Dir etwas oszilliert oder wabbert oder zittert, dann kaufe Dir einen 
Lötkolben und wirf Dein Steckbrett weg.

Im Netz gibt es ein Programmbeispiel für eine PIO-Lösung mit RP2040, die 
rund 9 MHz schaffen soll. Selber würde ich beim RP2040 2-3 Eingänge mit 
1 MHz periodisch abtasten und auswerten. Das Teil hat ja sonst nichts zu 
tun.
Der 3. Eingang wertet den Indeximpuls aus, was bei den meisten 
Schnellschusslösungen nie beachtet wird.

Dennis schrieb:
> Vielen Dank für die Hilfe.

Immer wieder gerne und schön, daß Du keine Rückfragen beantwortet hast.

von Wolfgang (Gast)


Lesenswert?

Rote T. schrieb:
> Timer bringt doch nix, bei Quadratursignal.

Wenn der Takt vom Encoder kommt - schon.
Das ist der selbe HW-Zähler, nur eine andere Taktquelle.

von max123 (Gast)


Lesenswert?

hallo,
Jetzt stochern wir um Lösungen herum, da wir  die Anforderung nicht 
genau
kennen. Im Buch

978 3 645 65 131 8


ist das Problem mit einem Zustandsdiagramm gelöst. Bei Atmel gibt es 
Prozessoren, bei denen der Clock mit einem PLL hochgesetzt wird.
.

von Alois (Gast)


Lesenswert?

Klaus S. schrieb:
> Ich habe den Eindruck, daß hier Äußeres und Inneres fröhlich
> durcheinandergeht.  Ob ein Up-Down-Counter, der schnell genug ist, um
> das Oszillieren eines der beiden Quadratursignale richtig(!)
> mitzuzählen, in einem CPLD/FPGA oder in einem Mikrocontroller sitzt, ist
> doch völlig unerheblich. Das ist in beiden Fällen die Hardwarelösung.


Lieber Klaus - Du vergisst, in welchem Forum du dich befindest...

Natürlich werden hier wild Dinge durcheinander geschmissen: Die einen 
reden von Steckbrett vs. Lötkolben, andere von uC vs. CPLD/FPGA - und in 
null-komma-nichts finden sich dann Stimmen, die meinen, Weller sei voll 
old-school und man müsse schon nochmal unterscheiden zwischen CPLD und 
FPGA - und vor allem auf bleifreies Lötzinn achten. Und bloß nicht die 
Abblock-Kondensatoren vergessen ...

Und dann gibt es noch die große Gruppe von Renommisten, die alles 
sowieso besser wissen, dem Rest der Welt versuchen klar zu machen, was 
für Vollpfosten sie doch sind - und sobald ihnen die Argumente ausgehen, 
mit unflätigen Ausdrücken um sich schmeißen ...

Solche Fäden machen dann Spaß, wenn man um die soziologischen 
Hintergründe weiß. Also - ich könnt mich manchmal kugeln vor Lachen ...

von Guido Körber (Gast)


Lesenswert?

Bisschen wenig Informationen zu den eigentlichen Anforderungen.

Da ist es schwer zu entscheiden welche von vielen Möglichkeiten die 
richtige sein wird.

Im Zweifelsfall gibt es hier Dekoder mit USB:
https://www.codemercs.com/de/drehgeber

von Georg (Gast)


Lesenswert?

Klaus S. schrieb:
> Das ist in beiden Fällen die Hardwarelösung.

Die hat nur einen Haken: ein mehrstelliger Zähler liefert beim Auslesen 
falsche Zahlen, wenn gleichzeitig weiter gezählt wird. Spezialbausteine 
wie die LS/THCT2000 Reihe haben dazu Vorkehrungen, nämlich einen 
Zwischenspeicher, der einen aktuellen Wert einfriert bis alle Register 
ausgelesen sind. Aber solche Probleme kann man erst erkennen wenn man 
das Problem tatsächlich verstanden hat. Einen Positionszähler kann man 
ja auch nicht einfach anhalten.

Falk B. schrieb:
> Jaja, der Schwanzvergleich auf dem Schulhof.

Ein typisches Falk-"Argument". Selbst wenn du etwas sachliches beitragen 
könntest, andere anzupöbeln und zu beleidigen ist dir einfach viel 
wichtiger als jede Sachfrage.

Georg

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.