Archiv verlassen und diese Seite im Standarddesign anzeigen : Schlitzscheibe für Umdrehungsmessung
Johannes
18.04.2004, 10:46
Moin,
kann mir jemand sagen, wo ich eine Schlitzscheibe herbekomme, mit der ich mit einer Gabellichtschranke die Umdrehung einer Achse messen kann? Da ich die Impulse mit dem Mikrocomputer direkt zählen möchte, lege ich nicht auf eine besonders gute Auflösung wert. Ich habe mal in eine alte Maus reingeschaut, aber diese Scheiben scheinen mir zu klein zu sein. Ich glaube nicht, dass ich da mit einer etwas höheren Geschwindigkeit mit dem Zählen hinterherkomme.
Irgendwo habe ich solche Scheiben mit schätzungsweise 5cm Durchmesser gesehen, aber ich weiß nicht mehr wo.
Habt ihr ne Idee?
Gruß
Johannes
Schau dir mal den GP1A71R von Sharp an. Das ist eine komplette Gabellichtschranke mit einer Auflösung von 60 bzw. 120 Strichen pro Umdrehung.
MfG Kjion
Johannes
18.04.2004, 11:24
Und wie schließe ich die Dinger an einen Mikrocontoller? Auch einfach Impulszählung?
Johannes
18.04.2004, 12:18
Kann man diese Taktscheibe nicht irgendwo einzeln kaufen? Das Ding ist ja doch recht teuer...
Wie ist es mit Excel Grafik und Laserdrucker auf Folie.
1/10 mm Präzision im Bild. Beim Bild in Excel Helfe ich.
Manfred
Johannes
18.04.2004, 12:32
jou, die Idee ist gut. Aber meinst du, dass das ganze stabil genug ist?
Aber wie ich so eine Graik mit Excel machen soll, weiß ich nicht. Einteilungen bräuchte ich vielleicht so 20 oder 40.
Was meint ihr, wenn ich das ganze mit nem Mega8 abfrage, und so 4 U/s. Wie viele Einteilungen kann man da nehmen?
Gruß
Johannes
NumberFive
18.04.2004, 13:29
Hallo
warum nicht mit einer maus du hast doch bestimmt noch ein rum fliegen.
da hast du auch gleich zwei.
Ich habe mal ein Schlitzscheibenbild programmiert und verkleinert. Wie soll es denn aussehen?
Manfred
schlitzscheibenersatz: ein eine scheibe einige loecher boren. das ist billiger und einfacher, allerdings sind loecher nicht optimal, obwohl es normalerweise funktioniert
.....
Einteilungen bräuchte ich vielleicht so 20 oder 40.
Was meint ihr, wenn ich das ganze mit nem Mega8 abfrage, und so 4 U/s. Wie viele Einteilungen kann man da nehmen?
....
Hi,
bei 4 U/s und 40 Einteilungen wäre das eine Taktfrequenz von nur 160Hz.
Wenn man bedenkt, dass der Mega8 selbst mit dem "langsamen" internen Takt von 1 MHz 1 Millionen Befehle pro Sekunde ausführt, kannst Du das mit nem Mega8 ganz locker "nebenbei" auswerten.
Eine Idee zur Schlitzscheibe wäre noch, die auf Folie ausgedruckte Scheibe auf eine Plexiglasscheibe zu kleben um sie stabiler zu machen. Die Scheiben aus ner Maus sollten aber auch gehen.
-- cut--
Ich habe mal in eine alte Maus reingeschaut, aber diese Scheiben scheinen mir zu klein zu sein. Ich glaube nicht, dass ich da mit einer etwas höheren Geschwindigkeit mit dem Zählen hinterherkomme.
Irgendwo habe ich solche Scheiben mit schätzungsweise 5cm Durchmesser gesehen, aber ich weiß nicht mehr wo.
-- cut--
Hmm, die Grösse der Scheibe ist doch wurscht. Die Anzahl der Takte, die Du pro Umdrehung rausbekommst hängt doch nur von der Einteilung der Scheibe ab, nicht von deren Grösse.
Hallo!
Ich arbeite mit Johannes zusammen, deswegen schreibe ich mal ein paar Daten zu der Scheibe.
Sie sollte im Durchmesser ca. 7cm betragen. Ist natürlich die Frage, mit was für einer Unterteilung man nun arbeiten soll. Die Striche müssen klar von einander getrennt erkannt werden, jedoch wird es natürlich genauer, je mehr Unterteilungen vorhanden sind.
@Manf: Wieviele unterteilungen würdest du denn da vorschlagen bzw. wie erstellst du das Schlitzscheibenbild? mit Exel? würd mich echt mal interessieren, wie das geht...
mfg Floyd
Johannes
18.04.2004, 18:31
Moin Floyd, was hast du hier verloren ;-)
Hmm, die Grösse der Scheibe ist doch wurscht. Die Anzahl der Takte, die Du pro Umdrehung rausbekommst hängt doch nur von der Einteilung der Scheibe ab, nicht von deren Grösse.
Ja, ungenau ausgedrückt. Was ich meinte sind die Abstände zwischen den Schlitzen.
Der Entwurf von der Scheibe ist schon mal gut, auch ich würde gerne mal wissen, wie man das mit Excel macht. Ich hätte sowas in Visual Basic programmiert ;-)
bei 4 U/s und 40 Einteilungen wäre das eine Taktfrequenz von nur 160Hz.
Wenn man bedenkt, dass der Mega8 selbst mit dem "langsamen" internen Takt von 1 MHz 1 Millionen Befehle pro Sekunde ausführt, kannst Du das mit nem Mega8 ganz locker "nebenbei" auswerten.
Wie ich schon in einem anderen Thread hier geschrieben habe, bin ich CC2-Geschwindigkeiten gewohnt. Da würde das so ohne weiteres glaube ich nicht gehen.
Gruß
Johannes
@Manf .... wie erstellst du das Schlitzscheibenbild? mit Exel? würd mich echt mal interessieren, wie das geht...
mfg Floyd
Ja, mich auch, wär nie auf die Idee gekommen, dass sowas mit Excel geht.
Das mit dem Ausdrucken und auf Plexi kleben scheint mir ein echt preiswerter Weg zu sein an Schlitzscheiben zu kommen, die sonst ziemlich teuer sind. Auf die Art könnte man sich sogar Winkeldrehgeberscheiben (sauteuer) mit beliebiger Auflösung machen.
Wär echt klasse Manf, wenn Du kurz umreissen könntest wie Du das in Excel machst.
Grüsse, Marvin
@Manf: Wieviele unterteilungen würdest du denn da vorschlagen bzw. wie erstellst du das Schlitzscheibenbild? mit Exel? würd mich echt mal interessieren, wie das geht...
Für die Zahl der Linien ist die gewünschte Auflösung in der Wegmessung maßgebend. Wechler Teil des Radumfangs soll meßbar sein? 1/40 oder 1/100 vielleicht. Die Meßfrequenz muß realisierbar bleiben.
Um den abzutastenden Strahl nicht beliebig fein fokussieren zu müssen, tastet man die Lochscheibe häufig durch eine Lamellenscheibe mit gleichem Raster ab, wobei für die Laufrichtungserkennung eine zweite, im Raster um 90° verschobene Lamellenscheibe eingesetzt wird.
(Das wird nichts neues sein. )
Das Erstellen in Excel Es klingt vielleicht auf den ersten Blick etwas kompliziert, aber es wird eine kreisförmige Mäanderkurve in einer Tabelle abgelegt, die dann als x,y Graph ausgegeben wird. Entweder die Linien sind schon breit genug, oder man füllt die Kurve als Bitmap mit schwarz aus.
Die gebogene Mäanderkurve ist eine Funktion, die alternierend in den Schritten einmal den Winkel Phi inkrementiert (um 2*Pi/n) und einmal den Radius R umschaltet, und dann eben x=R*cos(Phi), y=R*sin(Phi).
In einer "unendlich" langen Tabelle (1000 Zeilen "gedragt") wird die Alternierung z.B. mit Ganzzahl (n/2) erreicht. Dann kann man die Kurve mit dem Parameter 2-1000 Linien zeichnen.
Manfred
Im Encoder hat sich schonmal jemand damit beschäftigt und ein Postscript geschrieben. Siehe Link:
http://www.seattlerobotics.org/encoder/200109/dpa.html
Noch besser finde ich dieses Postscript:
http://massmind.org/techref/io/sensor/pos/enc/enc_ps.htm
Ich experimentiere im Moment auch mit Rad Encodern und bin leider nicht sehr erfolgreich damit. Ich möchte bei meinem Roboter die Drehzahl der Räder regeln, so daß ich geradeaus und auch Kurven definiert fahren kann.
Was benutzt Ihr für Lichtschranken an Euren Robotern? Welche Auflösung benutzt Ihr? Wo habt Ihr die Encoder-Scheiben montiert?
ciao, Stefan.
Was nehmt ihr denn für eine Elektronik. Bei dem letzten Link wurde ein IC verwendet das schwer zu bekommen ist.
Ich benutze die Gabel-Lichtschranke SFH9340 (Conrad 153833), die hat einen Schmitt-Trigger integriert. Der Ausgang ist TTL kompatibel.
Ansonsten kann man z.B. einen 74HC14 als Schmitt Trigger verwenden und eine beliebige Lichtschranke mit Phototransistor verwenden.
ciao, Stefan.
Was benutzt Ihr für Lichtschranken an Euren Robotern? Welche Auflösung benutzt Ihr? Wo habt Ihr die Encoder-Scheiben montiert?
Gute Frage, ich bin zunächst von einer Montage in der Nähe des Rades ausgegangen und habe eine Auflösung von 40-100 Teilungen vorgeschlagen.
Direkt am Motor kommt man sicher mit einer sehr viel geringeren Auflösung aus, zumal man das Getriebesspiel noch vor sich hat.
Manfred
Johannes
19.04.2004, 10:23
Also ich werde die Scheibe direkt an der Achse montieren. Im Prinzip muss ich dann noch auf die Druckvorlage eine Mittelpunktsmarkierung machen, aber das ist wohl kein Problem.
Die Gabellichtschranken habe ich aus einem Drucker ausgebaut. Noch ein Widerstand an die LED und dann den Fotowiderstand an einen digitalen Port. Funktioniert wunderbar mit einem Pullup-Widerstand. Da gab's hier irgendwo einen Schaltplan. Ich suche mal eben.
Gruß
Johannes
Johannes
19.04.2004, 10:31
https://www.roboternetz.de/phpBB2/viewtopic.php?t=113&highlight=radencoder
Bei der Montage am Rad stellt sich bei einer Auflösung von 100 Teilungen die Frage nach der Abtastzeit für den Regler. Mal abgesehen davon, daß ich maximal 50 Teilungen mit dem SFH9340 hinbekommen habe. Eine Abtastzeit von 100ms hat sich als viel zu ungenau herausgestellt und höhere Abtastzeiten neigen bei mir zum Schwingen.
Weiß denn irgendjemand, wo man sich Aluscheiben herstellen lassen kann? Meine Folien aus dem Laserdrucker sind leider nicht so doll.
ciao, Stefan.
Die elektrische Schaltung einer Gabellichtschranke ist meist unkritisch. Ein sicheres Schalten bei unterschiedlichem Umgebungslicht ist über einen weiten Bereich erreichbar.
Die Fokussierung ist meist auch ausreichend für die Schlitzscheibe sonst könnte man mit einer Lamellenscheibe die Auflösung erhöhen.
Die Drehrichtung kann mit einer zweiten, versetzen Lichtschranke erfasst werden oder einfach auch direkt vom Antrieb.
Was man nachmessen und einstellen könnte ist die Hysterese, damit bei Stillstand an der Kante keine Impluse auftreten.
Manfred
Hat jemand vielleicht mal ein kleines Windows VB oder C-Programm parat (möglichst mit Source zur eigenen Anpassung) mit dem man sich eine Taktscheibe in beliebiger Größe/Aufteilung generieren kann. Bräuchte das auch in Kürze, würde mir auch etwas Arbeit ersparen.
Johannes
19.04.2004, 14:26
Hm, gibt es sowas schon? Sonst könnte ich es mir mal überlegen, sowas zu programmieren... Obwohl ich im Moment wenig Zeit habe.
Ich stelle gerne das Excelsheet zur Verfügung wenn jemand damit klar kommt: Zahl der Segmente eingeben und bei Bedarf die Tabelle unterhalb der rötlichen Felder durch "draggen" bis Zeile 1000 verlängern.
Zeile 1000 ist der aktuelle Parameter von Datenquelle. Es geht auch bis 64k.
Die Umrißfunktion mit Zentrierkreuz (Tabelle blauer Teil) kann per Grafikprogramm gefüllt werden. Extrahieren: in Powerpoint kopieren und gruppierung aufheben, oder schlicht per screenshot.
Mal sehen, ob ich sie hochladen kann.
Manfred
Johannes
19.04.2004, 18:59
Wunderbar, wenn du mir noch schnell sagtst, wo man die Anzahl der Unterteilungen ändert, ist alles in Butter ;-)
Ich habe es eben mal ausgedruckt, aber die Farbe ist bei mir nicht wirklich deckend, trotz Laiserdrucker. Aber etwas nachmalen sollte da reichen.
Gruß
Johannes
Das ist fein mit der Exel Datei. Wozu Exel alles gut ist ;-)
Aber ab 8 Segmenten wird die Scheibe nicht mehr vollständig gezeichnet, was muss ich da ändern?
Hier, bei Segmente (roter Pfeil) und die Tabelle einfach durch "drag" verlängern. Ist die Methode bekannt? Die lange Tabelle hätte das File unterwegs nur aufgebläht.
Manfred
Ich fürchte, Excel wird nicht allen so geläufig sein:
Die Tabelle ist so aufgebaut, daß in jeder Zeile unterhalb des roten Berichs immer wieder dasselbe steht (berechne aktuellen Wert aus dem Wert obendrüber relativ, absolut, oder 4 pos oberhalb, oder 2 spalten links).
Um in 1000 Zeilen immer wieder das selbe zu schreiben selektiert man eine beliebige Zeile, hier unterhalb des von mir rot markierten Bereichs, geht mit dem Cursor auf den unteren rechten Eckpunkt des selektierten Feldes und dragt (zieht mit gedrückter linker Maustaste ) nach unten.
Ich staune auch immer wieder, was mit Excel alles geht. Es ist vor allem durch seine quasi parallele Verarbeitung sehr interaktiv.
Manfred
Danke, jetzt ist es soweit alles klar. Nur schade ist halt das man es nicht gleich gefüllt ausdrucken kann.
Kannst Du vielleicht bei Gelegenheit den Zeichnungsalgorithmus und die Spalten etwas erläutern damit man es gegebenenfalls auch in eine andere Programmiersprache umwandeln kann?
Gruß Frank
Es klingt vielleicht auf den ersten Blick etwas kompliziert, aber es wird eine kreisförmige Mäanderkurve in einer Tabelle abgelegt, die dann als x,y Graph ausgegeben wird. Entweder die Linien sind schon breit genug, oder man füllt die Kurve als Bitmap mit schwarz aus.
Die gebogene Mäanderkurve ist eine Funktion, die alternierend in den Schritten einmal den Winkel Phi inkrementiert (um 2*Pi/n) und einmal den Radius R umschaltet, und dann eben x=R*cos(Phi), y=R*sin(Phi).
In einer "unendlich" langen Tabelle (1000 Zeilen "gedragt") wird die Alternierung z.B. mit Ganzzahl (n/2) erreicht. Dann kann man die Kurve mit dem Parameter 2-1000 Linien zeichnen.
Manfred
Nochmal zum mitschreiben: Eine Mäanderkurve, Rechteckfunktion, die zwischen zwei Linien hin und her geht. Sie geht im Kreis herum und springt nach gleichen Winkeln jeweils vom äußeren auf den inneren Kreis und dann wieder zurück auf den äußeren.
Die Kurve kann parametrisch beschrieben werden. Der Parameter, auf dem die Beschreibung basiert ist der Winkel, der um gleiche Teile erhöht wird, in jedem zweiten Schritt. Dazu wird die Laufvariable durch 2 geteilt, es wird der Integerwert gebildet und dan wieder mit 2 multipliziert.
Der Radius, der aus dem Paramter abgeleitete Funktionswert wird zwischen seinen zwei Werten (innen und außen) immer dann geändert, wenn der Winkel sich nicht ändert.
Die Funktion des Radius über dem Winkel beschreibt nun die gewünschte Funktion, die zur Ausgabe mit x=r*cos(phi) und y=r*sin(phi) in karthesische Koordinaten transformiert wird.
Excel hat neben den Funktionsplots über der Laufvariablen: "Zeilennummer" auch den Funktionsplot x,y. Fortlaufende Verbindung aller Punkte der Koordinaten x,y einer 2spaltigen Tabelle (mit Absetzen bei Leerzeile).
(Die Kurve ist z.B. 1000 Zeilen lang und geht entsprechend oft im Kreis herum und überschreibt sich selbst. In einem sequenziellen Programm ist es sehr viel einfacher eine Schleife bis phi=2*pi zu schreiben.)
Manfred
Danke für Beschreibung, wollte doch eigentlich nur Spaltenüberschrift. Hab aber gerade entdeckt das oben ja die Spaltenüberschrift steht. Sorry, war wohl eben etwas blind!
Ist nu soweit klar und sollte sich recht einfach in Basic Programm umsetzen lassen. Da ich die Scheibe aber erst in ein paar Wochen brauche, werde ich es zur gegebenen Zeit mal tun (falls es dann nicht schon jemand gemach hat).
Gruß Frank
Johannes
20.04.2004, 11:41
Jup danke, hatte das Segment-feld nicht gesehen ;-(
Gruß
Johannes
Danke Manf, sehr hilfreich dass :):):)
Ich habe noch einmal über das Ausfüllen der Codescheibe nachgedacht: Es gibt natürlich die Lösung soviele Linien zu zeichnen, daß eine schwarze Fläche im Bereich der Segmente entsteht.
Das geht mit dem beiliegenden Excel File. Man muß nur die Auflösung (gelbes Feld oben) von 200 auf max. 4000 erhöhen und kann dann die Zahl der Segmente im entsprechenden Feld einstellen, sowie ra2 und ri.
Die Tabelle wieder verlängern auf (Auflösung +17) oder mehr. Das File wird dabei auf >1M vergrößert, was sicher nur beim Übertragen lästig ist.
Manfred
Wie kann ich eigentlich die Drehrichtung ermitteln?
Das Zählen der Impulse bekomme ich schon gut hin, nur möchte ich auch noch auswerten könne, ob sich das Rad vor- oder rückwärts dreht.
Gruß Frank
Mit zwei (um 90°) versetzten Sensoren von denen der eine immer die Richtung anzeigt während der andere gerade umschaltet.
Manfred
Matthias
01.08.2004, 10:42
Also zu viele striche zu haben ist gae nicht so schlimm: einfah nen nornmalen zähler (7490) hinten dran und mit Und-Gattern die entsprechende Zahl, bei der der µC zählen soll einstellen.
Man kann nartütlich auch direkt Frequenzteiler nehmen, aber da kann man sich die Zahlen nicht soschön aussuchen...
Matthias
01.08.2004, 10:47
Mann kann auch direkt drehimpulsgeber verwenden, bei C***** gibts sogar welche mit getrennten Ausgängen für Vorwärs und Rückwärts. Diese finde ich optimal. Die haben aber nur 15 impulse die umdrehung. Mit nem 7493 und der gerade genannten technik, würde er 1 impuls pro umdrehung haben und trotzdem ne supi genauigkeit.
@Manf: Kannst Du das bitte etwas näher erläutern (oder Link etc.)?
Zitat:
Mit zwei (um 90°) versetzten Sensoren von denen der eine immer die Richtung anzeigt während der andere gerade umschaltet.
Manfred
Zitatende
Bin noch ziemlich neu aif diesem Gebiet und brauche es etwas ausführlicher...
Gruß Frank
Hier steht, glaube ich, auch einiges drin:
www.huebner-giessen.de/produkte/cd-fg4/doc/technischedaten.pdf
sonst vielleicht erst mal goolge "licht impulse versetzt"
Manfred
Hat jemand vielleicht mal ein kleines Windows VB oder C-Programm parat (möglichst mit Source zur eigenen Anpassung) mit dem man sich eine Taktscheibe in beliebiger Größe/Aufteilung generieren kann. Bräuchte das auch in Kürze, würde mir auch etwas Arbeit ersparen.
@Manf, nicht schlecht deine Exceltabelle, für was das alles gut ist, wahnsinn ;-)
@Frank, für Encoderscheiben gibt's hier -> http://www.seattlerobotics.org/encoder/200109/dpa.html ziemlich weit unten, auch einen Text + Programm wie man die Scheiben direkt mit Postscript drucken kann. Wenn dir das Weiterhilft ;-)
Aber Excel ist da schon komfortabler...
Gruß, Sonic
Bastlwastl
01.08.2004, 19:02
Servus
Ich wollte mir auch eine Schlitzscheibe selbst machen, bin aber draufgekommen dass man die Scheibe nicht so genau wie die der Maus fertigen kann.
Außer man hat eine CNC-Fräse oder einen Teilkopf zu Hause.
Ich habe mir auch gedacht ich bedrucke eine Folie und klebe sie auf eine Plekiglasscheibe.
Als ich die Scheibe ausgedruckt habe ist sofort die grobe Pixxelung ins Auge gestochen.
Da mein Robotter nur sehr langsam verfährt kann ich eine Maus ohne umbauten verwenden.
(Musste nur das Gehäuse entfernen.)
Zu Testzwechen habe ich die Maus an meinen PC angeschlossen und bin auf eine Positionierungsgenauhigkeit von +- 5mm gekommen (Mechanische Positionierungenauhigkeiten sind eingerechnet) was für meine Anforderungen ausreicht.
Jetzt muss ich nur mehr herrauskriegen wie die Daten der Maus aussehen und wie ich sie aufschlüsseln muss.
mfg Bastlwastl
Bei der Gelegenheit wollte ich noch eine sehr viel einfachere Art zeigen, eine Strichscheibe selbst zu zeichnen, nämlich mit "Powerpoint" "Wordart" Kreisschrift mit den Buchstaben und Zeichen: I _ - auch in gedrehter Version und mit Buchstaben-Höhenausgleich.
Geht ganz schnell: Anzahl der Buchstaben ist Anzahl der Striche.
Manfred
Der Tip ist wirklich genial.
Vielen Dank
@Manf: Kannst Du das bitte etwas näher erläutern (oder Link etc.)? .... Bin noch ziemlich neu aif diesem Gebiet und brauche es etwas ausführlicher...
Dann guggst du da: https://www.roboternetz.de/phpBB2/viewtopic.php?p=89113#89113
Powered by vBulletin® Version 4.2.5 Copyright ©2024 Adduco Digital e.K. und vBulletin Solutions, Inc. Alle Rechte vorbehalten.