Hallo,
habe bei Reichelt folgenden Impulsgeber beschafft.
http://www.reichelt.de/STEC11B02/3/index.html?&ACTION=3&LA=446&ARTICLE=73912&artnr=STEC11B02&SEARCH=drehimpulsgeber
mein Programm hat natürlich nicht funktioniert. Was aber aufgrund der
Obigen Oszillogramme auch klar war.
Was ist das für ein Gequirlter Dreck? Die Typische 90° Verschiebung ist
nicht gegeben. Beide Signale sind eigentlich gleich, unterscheiden sich
nur im Tastgrad. Was soll das? Ist der Kaputt?
Übrigens im Versuchsaufbau, war der Inkrementalgeber mit einem Motor
verbunden, um die Oszillogramme möglichst gleichmäßig zu haben.
Jan R. schrieb:> Was ist das für ein Gequirlter Dreck?
Welcher I...t hat den denn angeschlossen? Gnd muss an den gemeinsamen
Anschluss der beiden Schalter.
Jan R. schrieb:> Übrigens im Versuchsaufbau, war der Inkrementalgeber mit einem Motor> verbunden, um die Oszillogramme möglichst gleichmäßig zu haben.
Dreh viel langsamer und miss nochmal. (Schau dir im Datenblatt auch mal
die Zeitangaben für "Chattering" und "Bounce" an).
Hallo,
habe mir im Forum folgenden Nutzer beschafft:
Jan R.
Der Kerl hat natürlich nicht funktioniert. Was aber aufgrund der
des falschen Anklemmens auch klar war.
Was soll das? Ist der Kaputt?
Übrigens würde ich dafür gerne diesen Kerl mit einem Motor antreiben,
um ihn möglichst gleichmäßig wie einen Brummkreisel rotieren zu lassen.
(Aus der Sicht des Drehgebers)
Thomas O. schrieb:> wo ist denn das Problem>> 11 00 01 11 00 01...>> man muss doch nur die Bitfolge auswerten
Du hast den Sinn des Gray-Code nicht verstanden. Da dürfen sich zwei
Bits nicht gleichzeitig ändern, weil sie das in Wirklichkeit auch nie
tun würden und immer Glitches auftreten.
Axel R. schrieb:> Was kann man denn da falsch anschliessen?> Schliesst der eine den anderen jetzt kurz?
Nein, beim einen Signal hängen die Schalter in Serie hintereinander.
Axel R. schrieb:> Was kann man denn da falsch anschliessen?
Das fragt man sich manchmal wirklich.
Aber wie der TO zeigt, geht es schon. Man könnte natürlich auch ins
Datenblatt gucken ;-(
Winfried J. schrieb:> Mit einem Draht funktioniert es nicht und ab zwei kann man verwechseln.
Die große Frage ist jetzt, welcher von den Dreien ist verwechselt?
Mike schrieb:> Winfried J. schrieb:>> Mit einem Draht funktioniert es nicht und ab zwei kann man verwechseln.>> Die große Frage ist jetzt, welcher von den Dreien ist verwechselt?
Naja, so ein schweres Rätsel ist das ja nicht.
Mike (Gast) sagte es ja schon.
Jan R. hat common als einen Signalausgang genutzt, und GND an einen der
Schalter gelegt. Dadurch bleibt das Signal des blauen Kanals high,
solange der Schalter zu GND offen ist.
Pinbelegung aus Datenblatt:
A C B
Common ist der Pin, an dem das gelbe Signal abgegriffen wurde.
Stimmt common ist in der mitte ich hatte es außen. (Im Reichert
datenglatt war es aber auch außen.)
Motor habe ich in verschiedenen Drehzahlen getestet. dies Schnelle hat
da nicht verändert bzw. verschlechtert
Habe die dinger jetzt mit zwei Furzkissenkondensatoren Entprellt.
Jan R. schrieb:> (Im Reichert> datenglatt war es aber auch außen.)
Nein war es nicht. Da steht überall ACB bzw. BCA.
Jan R. schrieb:> Gequirlter Dreck> Furzkissenkondensatoren
Sag mal, hast du das Tourettsyndrom, oder was ist mit deine
Ausdrucksweise los? Wenn ja, ist ja nicht schlimm. Möchte es nur wissen,
ob man dich in Zukunft noch ernst nehmen soll.
Jan R. schrieb:> (Im Reichert> datenglatt war es aber auch außen.)
bullshit.
herrgott, steh doch wenigstens zu deinen fehlern. das ist doch
erbärmlich.
Jan R. schrieb:> Habe die dinger jetzt mit zwei Furzkissenkondensatoren Entprellt.
... und bei jedem Schließen macht der Schalter einen Kurzschluss über
dem Kondensator? Die Kontakte werden sich freuen.
Mike schrieb:> Jan R. schrieb:>> Habe die dinger jetzt mit zwei Furzkissenkondensatoren Entprellt.>> ... und bei jedem Schließen macht der Schalter einen Kurzschluss über> dem Kondensator? Die Kontakte werden sich freuen.
Schwachsinn 1k ist in Reihe.
>bullshit.>herrgott, steh doch wenigstens zu >deinen fehlern. das ist doch >erbärmlich.
Tut mir leid. Hatte mich verlesen. Hatte am Anfang selbstverständlich
auch gedacht verpolt zu haben. Aufgrund des Datenblatts aber
Ausgeechlossen.. (Lesefehler!)
>Jan R. schrieb:>>Gequirlter Dreck>>Furzkissenkondensatoren>Sag mal, hast du das >Tourettsyndrom, oder was ist mit >deine Ausdrucksweise los?
Wenn ja, >ist ja nicht schlimm. Möchte es >nur wissen, ob man dich in Zukunft
>noch ernst nehmen soll.
Nein Furzkissenkondensator sage ich schon immer zu Kerkos wegen der
Form. Das vorher ok. Hatte die Wochen schon ein paar Defektteile BLDC
mit defekter Phase usw. Deshalb war ich einfach genervt. Tut mir leid.
Jan R. schrieb:> Habe die dinger jetzt mit zwei Furzkissenkondensatoren Entprellt.
Man kann Kontakte durch Kondensatoren NICHT entprellen, man verschiebt
nur die Probleme.
Wenn der Schalter ein RC Glied bedient und das dann mit einem
Schmitt-Trigger ausgewertet wird, kann man zwar in hardware entprellen,
man muss aber Drehgeber und Taster nicht entprellen wenn man ein
ordentliches Programm schriebt, das entprellt nämlich von selber einfach
in dem der Kontakt in vernünftigen Zeitabständen abgefragt wird.
Glaubt man natürlich auf Flanken mit Interrupts reagieren zu müssen, hat
man ein dummes Programm und Probleme am Hals.
MaWin schrieb:> ... ordentliches Programm schriebt, das entprellt nämlich von> selber einfach in dem der Kontakt in vernünftigen Zeitabständen> abgefragt wird.
Und letzlich stört das Prellen beim Drehgeber auch nicht weiter die
Positionsauswertung, weil durch Verwendung des Gray-Codes benachbarte
Positionen einen Hamming-Abstand von genau 1 haben, die Zählung also
immun gegen Kontaktprellen ist.
Jan R. schrieb:> Schwachsinn 1k ist in Reihe.
Solch Schwachsinn entsteht halt, wenn du nur einen Prosaschaltplan von
der Eingangsbeschaltung "zeigst" und den Widerstand nicht
"einzeichnest".
Mike schrieb:> Du hast den Sinn des Gray-Code nicht verstanden. Da dürfen sich zwei> Bits nicht gleichzeitig ändern, weil sie das in Wirklichkeit auch nie> tun würden und immer Glitches auftreten.
Ich habe einfach die Signale am Oszi ausgewertet und einen
Lösungsvorschlag gemacht wie ich es auswerten würde. Ob der Drehencoder
Graycode ausspuckt oder nicht war mir egal.
Wenn man es richtig anklemmt lautet die Bitfolge laut Datenblatt
rechts rum 01 11 01 00 10 11 01 00 10 11...
links rum 11 10 00 01 11 10 00 01 11 10...
Thomas O. schrieb:> rechts rum 01 11 01 00 10 11 01 00 10 11...> links rum 11 10 00 01 11 10 00 01 11 10...
also der beste Zufallsgenerator, den man für Geld kaufen kann?
Thomas O. schrieb:> 11 00 01 11 00 01...> man muss doch nur die Bitfolge auswertenThomas O. schrieb:> Ob der Drehencoder Graycode ausspuckt oder nicht war mir egal.
Der Auswerteschaltung ist das aber nicht egal. Wenn du das Signal beim
ersten Übergang ("11" -> "00") interpretierst, entgeht dir, dass durch
nicht exakt gleichzeitiges Umschalten zwischen den ersten beiden
Zuständen, je nach Schaltreihenfolge auch die Zwischenzustände "10" oder
"01" auftreten
> Wenn man es richtig anklemmt lautet die Bitfolge laut Datenblatt ...
Bis auf den Zahlendreher (rechts startet mit "10") - Ja
MaWin schrieb:> Jan R. schrieb:>> Habe die dinger jetzt mit zwei Furzkissenkondensatoren Entprellt.>> Man kann Kontakte durch Kondensatoren NICHT entprellen, man verschiebt> nur die Probleme.>> Wenn der Schalter ein RC Glied bedient und das dann mit einem> Schmitt-Trigger ausgewertet wird, kann man zwar in hardware entprellen,> man muss aber Drehgeber und Taster nicht entprellen wenn man ein> ordentliches Programm schriebt, das entprellt nämlich von selber einfach> in dem der Kontakt in vernünftigen Zeitabständen abgefragt wird.>> Glaubt man natürlich auf Flanken mit Interrupts reagieren zu müssen, hat> man ein dummes Programm und Probleme am Hals.
Natürlich RC glied. Natürlich Schmitt-trigger.. Habe ich natürlich so
gemacht.
Mike schrieb:> Jan R. schrieb:>> Schwachsinn 1k ist in Reihe.>> Solch Schwachsinn entsteht halt, wenn du nur einen Prosaschaltplan von> der Eingangsbeschaltung "zeigst" und den Widerstand nicht> "einzeichnest".
Was in aller Welt ist ein Prosaschaltplan?
Jan R. schrieb:> Natürlich RC glied. Natürlich Schmitt-trigger.. Habe ich natürlich so> gemacht.
Mein Vorschlag, wenn Du einen AVR verwendest:
Beitrag "Drehgeber per Interrupt auswerten, AVR"
Wenn Du per Interrupt die Änderungen erfaßt, kannst Du von ganz langsam
bis ganz schnell alle Drehgeber verwenden.
Den Gray-Code muß man auch nicht kennen, um Drehgeber auszuwerten. Das
ist alles nur Wichtigtuerei.
m.n. schrieb:> Den Gray-Code muß man auch nicht kennen, um Drehgeber auszuwerten. Das> ist alles nur Wichtigtuerei.Genau!!1!elf
Man muß gar nichts kennen oder wissen. Immer diese Wichtigtuer, die
alles erklären!!1! Dabei reicht es doch vollkommen, wenn man etwas
nachbaut. Am besten was von Mino, dann fühlt er sich GROSS.
M.n. schrieb:
>> Den Gray-Code muß man auch nicht kennen, um Drehgeber auszuwerten.
Womit er Recht hat. Es ist vollkommen egal, ob man das Wort "Gray-Code"
schon einmal gehört hat, wenn der Verlauf der Impulse der beiden Kanäle
bekannt ist.
gez. Zittermann
Axel Schwenke schrieb:> m.n. schrieb:>> Den Gray-Code muß man auch nicht kennen, um Drehgeber auszuwerten. Das>> ist alles nur Wichtigtuerei.>> Genau!!1!elf>> Man muß gar nichts kennen oder wissen. Immer diese Wichtigtuer, die> alles erklären!!1! Dabei reicht es doch vollkommen, wenn man etwas> nachbaut. Am besten was von Mino, dann fühlt er sich GROSS.
Leute was ist euer Problem? Der Encoder stellt praktisch den Grey-Code
da. (Ich glaube jeder der in der Lage ist einen Drehencoder auszuwerten,
weis was der Graycode ist.) Warum macht ihr also den Fertig, der das
beigetragen hat.?
Jan R. schrieb:> (Ich glaube jeder der in der Lage ist einen Drehencoder auszuwerten,> weis was der Graycode ist.)
Wozu muß er das wissen? Ein Drehencoder oder ein Resolver liefert ein
Sinus/Cosinus Signal oder zwei um 90° verschobene Signale. Und das schon
seit der Zeit, als Herr Gray noch ein warmer Gedanke seiner Eltern war.
Und für einen 2 Bit Code hätte Herr Gray wohl auch kein Patent erhalten.
MfG Klaus
Klaus schrieb:> Ein Drehencoder oder ein Resolver liefert ein> Sinus/Cosinus Signal oder zwei um 90° verschobene Signale. Und das schon> seit der Zeit, als Herr Gray noch ein warmer Gedanke seiner Eltern war.
Leute, ob man das Zeugs nun als 2-Bit Gray-Code oder
Sinus/Cosinus-Signal bezeichnet, ist doch völlig wurscht, solange der
Hamming-Abstand aufeinanderfolgender Codeworte genau ein beträgt. Und ob
man die Theorie kennt, ist auch völlig wurscht, solange der
zusammengeklaubte Code (irgendwie) funktioniert ;-)
m.n. schrieb:> Den Gray-Code muß man auch nicht kennen, um Drehgeber auszuwerten. Das> ist alles nur Wichtigtuerei.
Ja, is klar. Muß man nicht kennen. Aber nur, wenn man die Regel nicht
begreift, daß sich nur ein Bit gleichzeitig ändern darf. Das ist schon
alles. Aber das muß man nicht kennen, ist ja alles Wichtigtuerei.
Mann, laß Hirn regnen, aber bitte ohne Interrupts :-)
Mike schrieb:> Leute, ob man das Zeugs nun als 2-Bit Gray-Code oder> Sinus/Cosinus-Signal bezeichnet, ist doch völlig wurscht,
Und hier gleich noch so einer. Wie kann man ein Rechtecksignal als
Sinus/Cosinus bezeichnen? Ach, ich vergaß, solche Wichtigtuerei muß man
ja nicht wissen. Schlimm, aber wahr...
Den Gray-Code zu verwenden hat einen Sinn, um zum Beispiel bei einem
4-Bit Zähler die Ausgangssignale auf Fehler zu überprüfen. Wenn
Fehlerfreiheit vorliegt, darf sich bei Änderung des Zählerstandes
jeweils nur ein Bit ändern.
Und ich wiederhole es gerne noch einmal, wer in ein Quadratursignal
einen beabsichtigten Gray-Code interpretiert, pußtet sich nur unnötig
auf.
Auf ähnliche Weise könnte man sich wichtig machen, zur Vermeidung einer
Multiplikation, die Addition von Logarithmen vorzuschlagen.
Unter Verkennung des Problems werden damit die Umwege als 'die' Lösung
suggeriert und durch aggressives Auftreten 'untermauert' :-)
m.n. schrieb:> pußtet sich nur unnötig> auf.
Ist mir egal, ob das jemand als Aufpusten bezeichnet.
Hauptsache der Code ist kurz und funktioniert und da kann ich absolut
nicht klagen. Kondensatoren brauch ich nicht.
Ich hatte allerdings mal den Fall, daß der Code nicht funktionierte. Mit
dem Oszi habe ich dann gesehen, daß die Schleifer des Drehgebers
wackelten, d.h. die Pulse waren willkürlich unterbrochen. Da helfen dann
auch keine Kondensatoren mehr. Vielleicht war er zu heiß gelötet oder
durch eingedrungenes Flußmittel verschmutzt.
Manchmal passiert es eben, daß der Drehgeber defekt ist. Dann kann auch
die beste Schaltung und die beste Software nichts mehr dran ändern.
Peter Dannegger schrieb:> Hauptsache der Code ist kurz und funktioniert und da kann ich absolut> nicht klagen.
Mir geht es genau so.
> Kondensatoren brauch ich nicht.
Ich schon; damit kann man u.a. auch gut Versorgungsspannungen abblocken.
Aber jeder so, wie er mag :-)