Forum: Mikrocontroller und Digitale Elektronik Scheibe für Drehgeber


von tubbu (Gast)


Lesenswert?

Hallo,

ich möcht eine Drehbewegung optisch auslesen.
Ich dachte ich bringe einfach eine Scheibe mit Strichen, sowie zwei
Gabellichtschranken an, um einen graycode als Ausgabe zu erhalten.

Nun stellt sich das Problem, wie ich eine solche Scheibe anfertige.

Das Drucken auf Folie usw. ist kein Problem, aber wie erstelle ich das
genaue Aussehen?
Die scheibe sollte einen Durchmeser von 8cm haben.
Gibt es irgendein Programm, mit dem man solche Scheiben machen kann?
oder kann man das mit normalen Zeichenprogrammen machen, wenn ja wie?

Danke

von Koopi (Gast)


Lesenswert?

Einen Kreis mit einer gestrichelten Linie in großer Strichstärke.
Natürlich nur wenn Anzahl der Impulse nicht wichtig ist.

Koopi

von tubbu (Gast)


Lesenswert?

hm, es sollte schon eine definierte anzahl von strichen sein, z.B.
256..

ich hab hier corel draw und gimp...

von tubbu (Gast)


Lesenswert?

Hab jetzt eine Scheibe gefunden und zur Not nehm ich die
http://www.roboterwelt.de/forum/archiv/2004/0604/messages/2095.html
Allerdings hätte ich lieber eine, wo ich die Abstände, Anzahl der
Striche, etc.. selbt bestimmen kann.

Wenn also noch jemand was weiss--> DANKE

von JojoS (Gast)


Lesenswert?

wenn es etwas kleiner sein darf: einfach eine alte mechanische Rollkugel
Maus schlachten, da sind zwei Scheiben und passende Gabellichtschranken
drin.
Ansonsten würde mir noch einfallen sowas per Programm zu zeichnen.

von tubbu (Gast)


Lesenswert?

Mit was für einem Programm könnte man sowas zeichnen?

Habe gerade eine alte Maus auseinandergebaut, die Scheiben sind
allerdings zu klein, bzw haben zu wenig Speichen für meine Anwendung.

Mir ist allerdings aufgefallen, dass pro Scheibe nur ein Sensor
verwendet wird. Jetzt frage ich mich, wie da die Drehrichtung
festgestellt werden kann?

von JojoS (Gast)


Lesenswert?

Die Mäuse haben zwei Fotodioden, aber einen gemeinsamen Anschluss, da
müssten 3 Pins dran sein. Geht es vielleicht mit dem Mausrad und
mechanischer Übersetzung ?
Mit Programm meinte ich das man sich selbst soetwas schreiben könnte.
Aber ganz einfach ist das natülich auch nicht.

von EZ81 (Gast)


Angehängte Dateien:

Lesenswert?

Zweiter Versuch, deshalb kürzerer Text:
Ein einfaches 2D-Cad-Programm sollte gut gehen: ein paar Kreise,
Geraden, trimmen, Sektoren füllen, um Mittelpunkt rotieren/kopieren.

Habe mal schnell zum Vergnügen mit Qcad was zusmammengeklickt, die
Füllungen sind mit SChraffur geschummelt, daher die Größe...

Grüße
;Matthais

von Steffen (Gast)


Lesenswert?

Mit Corel Draw ist das eigentlich kein Thema. Einfach einen Kreis
zeichnen, einen gefüllten Sektor als Polygon erzeugen und den dann im
gewünschten Winkel drehen (bzw. dann der Kopie zuweisen). Das dann so
oft, bis alle Sektoren fertig sind.

von till (Gast)


Lesenswert?

also früher gab es für sowas ja mal turbopascal 3 mit turtlegraphix...

von tubbu (Gast)


Lesenswert?

@ez81 wow, danke, dsa sieht ja schonmal echt gut aus :-)
 hab ein bisschen mit qcan rumexperimentiert, muss mich aber erst noch
einarbeiten ;-)

@steffen danke, werd ich mir mal anschauen

@till glaube du meinst logo.
 hab mir gestern schonmal eine logoversion runtergeladen, aber das wird
  ja pixelgraphik, keine vektoren, d.h. zum drucken ist das nicht
besonders geeignet...

von Rahul (Gast)


Lesenswert?

Mit CorelDraw sollte das wirklich kein Problem sein.
Für eine Richtungserkennung sind auf jeden Fall zwei Lichtschranken
notwendig. Dabei werden beide so angeordnet, dass die eine voll
abgedeckt ist, während die andere sich an einer Kante zwischen hell und
dunkel befindet. Das wäre dann das Prinzip der Drehencoder.
Geht es nur um eine Drehzahlaufnahme, braucht man nur eine
Lichtschranke.
Fischertechnik hatte auf jeden Fall mal welche. Vielleicht mal bei
Knobloch-Elektronik (ft-Ersatzteillieferant) gucken...

von dds5 (Gast)


Lesenswert?

Hier werden offenbar 2 verschiedene Gebertypen durcheinander geworfen.

1. Inkrementalgeber: wie in einer alten Maus. Diese geben beim Drehen
auf 2 Leitungen Impulse aus, aus denen man die Richtung erkennen kann.

2. Absolutgeber: die geben durch Abtastung der Spuren auf der
Codescheibe Graycode mit entsprechender Auflösung aus.


Dieter

von tubbu (Gast)


Lesenswert?

Ich dachte immer der Gray-Code wäre das mit den zwei Impulsen
siehe:
http://www.mikrocontroller.net/forum/read-4-37992.html

die Scheibe, die ich weier oben gepostet habe ist für absolute
bestimmung, aber das brauche ich nicht, ich hätte dann halt nur die
äusseren Markierungen verwendet.

von Rahul (Gast)


Lesenswert?

2Bit-Graycode...

von dds5 (Gast)


Lesenswert?

Da hat sich Peter Dannegger offenbar geirrt, Graycode ist definitiv das,
was bei der Abtastung dieser Mehrspurscheibe entsteht. Die Aussage "es
wechselt immer nur ein Bit zwischen benachbarten Codes" kann man
wunderbar nachvollziehen, wenn man sich die Scheibe mal genauer
ansieht.
Der tiefere Sinn ist ganz einfach: wenn z.B. bei Binärcode von 7 auf 8,
also 0111 auf 1000 gewechselt wird, schafft man es nie, die 4 optischen
Empfänger so gut auszurichten, dass wirklich alle 4 exakt zur
gleichen Zeit umschalten, deshalb der Graycode.

Für die zwei Signale eines Inkrementalgebers liest man gelegentlich
auch den Begriff "Quadratursignal" bzw. für die Auswerteschaltung
"Quadraturencoder". Hier wechselt durch die Phasenverschiebung
natürlich auch immer nur ein Signal seinen Zustand.

Gruß     Dieter

von Rahul (Gast)


Lesenswert?

@Dieter:

"...Hier wechselt durch die Phasenverschiebung
natürlich auch immer nur ein Signal seinen Zustand."

Genau das macht den Graycode aus.
Von einem Wert zum nächsten wechselt immer nur ein Bit den Zustand.
Es gibt auch 4Bit-Graycode (und vermutlich auch noch mehr). Sieht zwar
etwas "bekloppt" für den "Normalbinärgucker" aus, ist aber schon
sinnvoll.
Teilt man eine Scheibe in 16 Segmente und benutzt 4 Sensoren (egal, ob
taktil oder optisch), dann kann man anhand des Codes genau feststellen,
wo man sich befindet (auch im Werkzeugmaschinenbau [CNC] beliebt,
allerdings linear).
Sollten sich mehr als nur 1 Bit ändern, liegt ein Fehler vor...

von Andi (Gast)


Angehängte Dateien:

Lesenswert?

@tubbu: Habe mir überlegt, wie man so was per PC-Software erstellen
kann.
Mit Access-Basic (Access 2000/2003) ist das kein Problem und ich habe
DIE Lösung für Dich (siehe Anhang mit exakter Nachbildung der Scheibe
aus dem Link oben).
Einfach im "Detailbereich_Format" eine Routine mit Parametern
aufrufen und es ist sofort druckbereit erstellt.
Bei Interesse sende mir eine E-Mail.

MfG
Andi

von Lai (Gast)


Lesenswert?

Graycode Scheiben schauen so aus:

http://www.mipraso.de/enzyklopaedie/g/gray-code-tabelle.html

Gruß Lai

von Andi (Gast)


Angehängte Dateien:

Lesenswert?

Ach echt?
Guckts Du im Anhang, gerade eben schnell erstellt.
Geht zwar gegen den Uhrzeigersinn ist aber das selbe.
Per Winkelangabe eines jeden Ringes ist es auch anders rum möglich.

MfG
Andi

von Jens-Erwin (Gast)


Lesenswert?

Was nimmst Du denn für Lichtschranken, müssten ja ganz kleine sein?

von Rufus T. Firefly (Gast)


Lesenswert?

@Andi:
Das ist 'ne binär zählende Scheibe, kein Graycode. Dessen Hauptmerkmal
ist ja, daß von Wert zu Wert immer nur ein Bit wechselt; betrachtest Du
Deine Scheibe, wirst Du erkennen, daß das bei der anders aussieht.

von Rahul (Gast)


Lesenswert?

@Jens:
Das gibt nette kleine Reflex-Lichtschranken, die sich ziemlich gut
dafür eignen.

@Rufus:
So freundlich hätte ich es nicht ausdrücken können...

von Andi (Gast)


Lesenswert?

@Rufus und @Rahul:
Die letzten beiden Beispiele sollten eigentlich nur aufzeigen, was mit
dem sehr einfachen Programm mit Access im Bericht möglich ist und
gegebenenfalls sende ich es gerne Tubbu, wenn er sich meldet.

MfG
Andi

von Peter Dannegger (Gast)


Lesenswert?

@Dieter

"Da hat sich Peter Dannegger offenbar geirrt, Graycode ist definitiv
das,
was bei der Abtastung dieser Mehrspurscheibe entsteht. Die Aussage
"es
wechselt immer nur ein Bit zwischen benachbarten Codes" kann man
wunderbar nachvollziehen, wenn man sich die Scheibe mal genauer
ansieht."


Wo steht denn geschrieben, daß ein Graycode nicht 2 Bit haben darf ?

"Mehrspur" ist alles größer 1 also eben auch 2.

Solange die Bedingung (keine gleichzeitigen Bitwechsel) erfüllt ist,
ist es ein Graycode, völlig egal, ob 2 Bit, 4 Bit oder 1000 Bit.

Daß der 2-Bit Graycode noch unter anderen Namen firmiert ist nichts
Ungewöhnliches, es dürfte ja der am häufigsten benutzte Graycode sein.


Peter

von dds5 (Gast)


Lesenswert?

@ Peter

Sorry dass ich Dich des Irrtums bezichtigt habe, der lag wohl eher auf
meiner Seite. In meinem Sieb ist offenbar die Info durchgefallen, dass
auch 2 Bit eine parallele Information darstellen.
Wenn man sich die zwei inneren Spuren der Codescheibe ansieht erkennt
man ja auch sofort die Übereinstimmung.
Es ist halt auch schon zu lang her dass ich mit Stegmann Drehgebern zu
tun hatte.

//Ironie ein
Theoretisch ließe sich auch eine 1 Bit Ubertrgung als Graycode
bezeichnen, es wechselt ja auch immer nur 1 Bit.
//Ironie aus

Gruß    Dieter

von Andi (Gast)


Angehängte Dateien:

Lesenswert?

@Rufus
Ups, jetzt ist der Groschen gefallen, verzeihung!
Wollte ja, wie schon erwähnt, nur mal aufzeigen, das mit Software wie
Access, wo man mit 1440dpi Zeichnungen (Berichte mit Grafikinhalt)
erstellen kann, so was machbar ist.
Access hat den Vorteil das es stark verbreitet ist, man muß halt nur
Basic können und sich ein bißchen mit Punktrotationen beschäftigen.
Im Anhang jetzt der 4-Spurige Graycode.

MfG
Andi

von tubbu (Gast)


Lesenswert?

@Andi
Hi, ich hätte natürlich Interesse an deiner Basic Lösung.
Access hab ich sicher auch noch irgendwo...

Willst du den Basic-Code nicht posten?
Ich denke es gibt ausser mir auch noch andere Leute, die sowas brauchen
können, oder irgndwann mal werden.

Danke für deine Mühe

Tubbu

von crazy horse (Gast)


Lesenswert?

"Solange die Bedingung (keine gleichzeitigen Bitwechsel) erfüllt ist,
ist es ein Graycode, völlig egal, ob 2 Bit, 4 Bit oder 1000 Bit."

Das ist nun definitiv falsch. Es gibt massig einschrittige Codes, der
Gray-Code ist einer davon, und auch der meistverwendete.
Ein paar Beispiele:
-Glixon
-O'Brien
-Tompkins
-Exzeß3
-RRE
-Gillham
gibt noch mehr

Ausser mit Gray habe ich bis jetzt aber auch nur theoretisch
Bekanntschaft gemacht :-)

von Peter Dannegger (Gast)


Lesenswert?

@crazy horse

O.k., also:

Solange die Bedingung (einschrittig und vollständig) erfüllt ist,
ist es ein Graycode, völlig egal, ob 2 Bit, 4 Bit oder 1000 Bit.


Die anderen von Dir genannten Codes sind nicht vollständig, d.h. bei 4
Bit werden nicht alle 16 möglichen Kombinationen verwendet (und Exzeß3
ist nicht mal einschrittig).


Peter

von crazy horse (Gast)


Lesenswert?

Von Vollständigkeit war bis jetzt nicht die Rede, und ich habe auch
keine Ahnung, ob die anderen das sind oder nicht, ist eh irrelevant, da
kaum Bedeutung.
Exzeß3: ok, muss heissen "reflektierender Exzeß3-Code"

von Andi (Gast)


Lesenswert?

@tubbu: Wie siehts aus? Habe es Dir gestern per E-Mail geschickt. Kommst
Du damit klar?

MfG
Andi

von tubbu (Gast)


Lesenswert?

Oh. hab die Mail garnicht gesehen, im Spam geht doch gern was unter,
vorallem, wenn der Absender unbekannt ist ;-)

Ich werd jetzt mal die Access CD suchen unds mir dann anschauen, Danke

von tubbu (Gast)


Lesenswert?

@andi

hi, das script ist toll, komme bestens damit zurecht :-)

ich habe vorher mel eine scheibe ausgedruckt und an einer Maus
getestet, ob es geht, leider druckt mein Drucker wohl nicht deckend
genug, oder lässt (zuviel) UV-Licht durch, obwohl ich zweimal
drübergedruckt habe.
Muss da wphl noch etwas rumprobieren.

Vielleicht zeichne ich die Striche auch einfach mit Edding nach..

Naja, jedenfalls vielen Dank euch allen!!!

von Andi (Gast)


Lesenswert?

Das beste wird ein Laserdrucker dazu sein mit mindesten 1200dpi.
Ist genauer, ziemlich gleiche Stärken der schwarzen und weißen
"Balken", und glaube auch dekender und unempfindlicher als Tinte.
Zur Sicherheit würde ich auf der Druckseite der Folie noch eine selbst
klebende Folie drüberkleben.

MfG
Andi

von Andi (Gast)


Lesenswert?

Ach ja, bei Laserdruckern braucht man evtl. Lasertaugliche Folien wegen
der Einbrennwalze.

MfG
Andi

von tubbu (Gast)


Lesenswert?

So und hier ist er, der Scratching Midicontroller:

http://tubbu.cwsurf.de/bilder/scratch1.jpg

:-)))


Danke nochmal an alle, die mir hier geholfen haben

von Andi (Gast)


Lesenswert?

Ja was das denn?
Midi-Files von Diskette?
Ist die optische Scheibe am Schwungrad?

MfG
Andi

von tubbu (Gast)


Lesenswert?

Das Teil ist vollständig ausgeschlachtet.
an der Unterseite sitzt die Scheibe an dem Schwunrad, ja.

von Andi (Gast)


Lesenswert?

Und was macht der "Scratching Midicontroller" nun?

MfG
Andi

von tubbu (Gast)


Lesenswert?

Naja, mit der Scheibe kann man eben wie mit einer Schallplatte
scratchen, wenn man den Controller an den PC hängt (ein entsprechendes
Programm natürlich vorrausgesetzt).

Man kann natürlich auch alles andere steuern, was man mit MIDI
ansteuern kann...

von Andi (Gast)


Lesenswert?

Also ein Drehimpulsgeber über Midi/Joystick-Schnittstelle?

MfG
Andi

von tubbu (Gast)


Lesenswert?

Naja, man kann das ganze recht flexibel einsetzten, also auch zum
Beispiel an einen Synth hängen, oder ähnliches....

von eProfi (Gast)


Lesenswert?

Zum Thema gibt es einen neuen Thread mit guten Lösungen:
Beitrag "Kreisskala zeichen - Programm / Anleitung gesucht"

von eProfi (Gast)


Angehängte Dateien:

Lesenswert?

Nach ein wenig Tüfteln der ultimative Gray-Code-Scheiben-Generator in 
Postscript (697 bytes):
einfach Radius (rad), Strichdicke (inc) und gewünschte Bitanzahl 
(bit)setzen, und los gehts.
Umwandeln in PDF:
gswin32 -dBATCH -sDEVICE=pdfwrite -sOutputFile=graycode.pdf graycode.ps

Im Anhang ein Beispiel mit 11 Bits.

von eProfi (Gast)


Lesenswert?

PS: erfordert ghostscript

Erinnert mich sehr an Bifurkation bei Apfelmännchen / Mandelbrot.

http://de.wikipedia.org/wiki/Bifurkation
http://de.wikipedia.org/wiki/Bifurkation_(Mathematik)
http://de.wikipedia.org/wiki/Mandelbrot-Menge (Bezug zur Chaostheorie)

von eProfi (Gast)


Angehängte Dateien:

Lesenswert?

Bei
http://de.wikipedia.org/wiki/Gray-Code
ist das Bild  "Ein Gray-Code Absolutwertgeber mit 13 bits"
http://de.wikipedia.org/w/index.php?title=Datei:Gray_code_rotary_encoder_13-track_opened.jpg&filetimestamp=20100101093347

Das Bild in voller Auflösung:
http://upload.wikimedia.org/wikipedia/commons/thumb/a/a8/Gray_code_rotary_encoder_13-track_opened.jpg/313px-Gray_code_rotary_encoder_13-track_opened.jpg

Der Drehwinkelgeber wurde nach einem Wassereinbruch geöffnet, weil sich 
der Film teilweise von der Scheibe gelöst hat (zuerst meinte ich, die 
Scheibe sei zerbrochen).
Man kann gut in das Bild hineinzoomen.
Hersteller des optischen Sensors ist OPTOLAB.

Dort sind zwischen den Spuren dunkle Kreise, vermutlich damit die 
Trennung besser ist. Kann man bei meinem .ps durch das wegkommentierte
#14 setlinewidth
erreichen.
Man müsste aber danach die Ausgabe invertieren (schwarz <--> weiß).
Siehe neuer Anhang mit 13 bit.  Den hätte er sich auf die Scheibe kleben 
können, damit wäre der Drehgeber wieder repariert  ;-)

Habe einen Fehler gefunden, der die Breite zwar berücksichtige, aber den 
Abstand nicht:   /rad rad 15 add def   -->  /rad rad inc add def

Die Angabe der Radien, Breiten etc. ist in Punkten (1/72 Zoll). Wenn 
Millimeter erwünscht sind, einfach mm hinter die Maßzahl setzen, die 
Umrechnung erfolgt dann über das /mm define.

Die Radien beziehen sich auf die Mitte der Spuren.

Wie wurde wohl damals die Vorlage bei der Konstruktion erstellt?

von Klaus W. (mfgkw)


Lesenswert?

Praktikant?

von B. G. (smarti)


Lesenswert?

eProfi schrieb:
> Nach ein wenig Tüfteln der ultimative Gray-Code-Scheiben-Generator in
> Postscript (697 bytes):
> einfach Radius (rad), Strichdicke (inc) und gewünschte Bitanzahl
> (bit)setzen, und los gehts.
> Umwandeln in PDF:
> gswin32 -dBATCH -sDEVICE=pdfwrite -sOutputFile=graycode.pdf graycode.ps
>
> Im Anhang ein Beispiel mit 11 Bits.

Hey,

absolut genial! Nach 5 min Googlen mein Tag gerettet ;)

THX

von Info (Gast)


Lesenswert?


von Matthias S. (Firma: matzetronics) (mschoeldgen)


Lesenswert?

Dieser Fisch war allerdings schon vor vier Jahren geputzt - schau lieber 
erstmal aufs Datum, bevor du postest, da wird man auch durchs Forum 
gewarnt.

von Klaus W. (mfgkw)


Lesenswert?

Matthias Sch. schrieb:
> Dieser Fisch war allerdings schon vor vier Jahren geputzt - schau lieber
> erstmal aufs Datum, bevor du postest, da wird man auch durchs Forum
> gewarnt.

Warum so ungnädig?

- es passt zum Thema
- es ist eine sinnvolle Erweiterung
- wer danach sucht, kann davon profitieren.

Daß es der OT nicht mehr brauchen wird (wahrscheinlich), ist doch nicht 
schlimm.

Buxtehudre schrieb im Beitrag #3886794:
> Ihr alle stinkt

Daß dagegen ist ein sicher sinnloser Beitrag.

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.