Forum: Mikrocontroller und Digitale Elektronik Drehimpulsgeber macht Blödsinn.


von Jan R. (Gast)


Angehängte Dateien:

Lesenswert?

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.

von Mike (Gast)


Lesenswert?

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.

von Achim S. (Gast)


Lesenswert?

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).

von Thomas (kosmos)


Lesenswert?

wo ist denn das Problem

11 00 01 11 00 01...

man muss doch nur die Bitfolge auswerten

von Winfried J. (Firma: Nisch-Aufzüge) (winne) Benutzerseite


Lesenswert?

das bild passt zu vertauschten Anschlüssen

der Untere Kanal bildet /(/A&/B) ab

von Drehimpulsgeber (Gast)


Lesenswert?

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)

von Axel R. (Gast)


Lesenswert?

Was kann man denn da falsch anschliessen?
Schliesst der eine den anderen jetzt kurz?

von Mike (Gast)


Lesenswert?

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.

von Mike (Gast)


Lesenswert?

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.

von Wolfgang (Gast)


Lesenswert?

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 ;-(

von Winfried J. (Firma: Nisch-Aufzüge) (winne) Benutzerseite


Lesenswert?

Mit einem Draht funktioniert es nicht und ab zwei kann man verwechseln. 
Hier sind nun sage und schreibe drei im Spiel.

;)))

von Mike (Gast)


Lesenswert?

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?

von Easylife (Gast)


Lesenswert?

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.

von Mike H. (--scotty--)


Lesenswert?

Jan R. schrieb:
> Was ist das für ein Gequirlter Dreck?
Jan R. (macman2010)

von Jan R. (Gast)


Lesenswert?

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.

von Easylife (Gast)


Lesenswert?

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.

von Mike H. (--scotty--)


Lesenswert?

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.

von Mike (Gast)


Lesenswert?

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.

von Jan R. (Gast)


Lesenswert?

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.

von MaWin (Gast)


Lesenswert?

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.

von Mike (Gast)


Lesenswert?

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".

von Thomas (kosmos)


Lesenswert?

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...

von Easylife (Gast)


Lesenswert?

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?

von Mike (Gast)


Lesenswert?

Thomas O. schrieb:
> 11 00 01 11 00 01...
> man muss doch nur die Bitfolge auswerten

Thomas 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

von Jan R. (Gast)


Lesenswert?

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.

von Jan R. (Gast)


Lesenswert?

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?

von Mike (Gast)


Lesenswert?

Jan R. schrieb:
> Was in aller Welt ist ein Prosaschaltplan?

http://de.wikipedia.org/wiki/Prosa

von m.n. (Gast)


Lesenswert?

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.

von spontan (Gast)


Lesenswert?

Lieber m.n.

wieso willst Du Deine (Pseudo-)Lösung durchdrücken?
Noch dazu wo sie anerkannter Mist ist?

kopfschüttel

von m.n. (Gast)


Lesenswert?

Weder bin ich lieb, noch will ich etwas 'durchdrücken'.
Jan.R. ist mit seinem Interrupt-Ansatz auf dem richtigen Weg, und da 
helfe ich gerne :-)

von Thomas (kosmos)


Lesenswert?

das Datenblatt sagt aber auch aus wann das Signal stabil ist, also wann 
das Prellen und hin/herschalten vorbei ist.

: Bearbeitet durch User
von Axel R. (Gast)


Lesenswert?

Kricht euch mal wieder ein, er hat "Glied" gesagt, hihi ;)

von Axel S. (a-za-z0-9)


Lesenswert?

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.

von Zittermann (Gast)


Lesenswert?

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

von Jan R. (Gast)


Lesenswert?

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.?

von Klaus (Gast)


Lesenswert?

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

von Mike (Gast)


Lesenswert?

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 ;-)

von Simpel (Gast)


Lesenswert?

In der alternativen und empirischen Medizin gilt der Satz:
"Wer heilt hat Recht."

von Gray (Gast)


Lesenswert?

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 :-)

von Gray (Gast)


Lesenswert?

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...

von Simpel (Gast)


Lesenswert?

@Gray

Ich hatte am WE auch keinen Sex. Aber ich kann deswegen trotzdem cool 
bleiben... ;-)

von m.n. (Gast)


Lesenswert?

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' :-)

von Peter D. (peda)


Lesenswert?

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.

von m.n. (Gast)


Lesenswert?

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 :-)

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.