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?
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.
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.
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.
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. :-)
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.
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.
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!
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.
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 :-)
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.
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.
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.
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.
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 ...
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.
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.