smay
20.04.2004, 12:58
Hallo Forum,
Um nochmal die Diskussion etwas detailierter zu gestalten, werde ich mal schreiben, was ich mit dem Radencoder realisiert habe:
Ich habe mir eine Schlitzscheibe mit dem Postscript von http://massmind.org/techref/io/sensor/pos/enc/enc_ps.htm ausgedruckt. Einfach das Postscript bearbeitet und dann mit Ghostscript (Ghostview) ausgedruckt. Die Scheibe hat einen Durchmesser von 30mm und 50 Slots (d.h. 50 schwarze Striche und 50 weiße Striche). Gedruckt habe ich auf einer Laserfolie mit einem HP LaserJet 4050. Die Auflösung war ok, aber der Grad der Schwärzung war nicht ausreichend. Dazu später mehr.
Als Lichtschranke verwende ich den SFH9340 (Conrad 153833). Vorteil dieser Lichtschranke ist, daß die Auswerteschaltung schon integriert ist und ein TTL-Signal zur Verfügung steht.
Nach dem Zusammenbau habe ich leider festgestellt, daß die schwarzen Bereiche meiner Encoder-Scheibe nicht schwarz genug sind. Es kam immer noch so viel Licht durch, daß die Lichschranke kein Signal rauswarf. Nach langen Experimenten mit den Einstellungen meines Laserdurckers habe ich einfach 2 Scheiben zusammengeklebt, das brachte dann den gewünschten Erfolg. Daß die schwarzen Bereiche nicht dunkel genug sind, liegt wahrscheinlich an der Eigenschaft der Folie elektrostatische Felder zu verfälschen. Ob das mit einem Tintenstrahldrucker anders ist, habe ich noch nicht ausprobiert. Ich bin da eher skeptisch wegen der Auflösung.
Nachdem das Signal in Ordnung ist, nun zu meinem Hauptproblem: Die Anzahl der Slots ist viel zu gering für meine Anwendung. Ich wollte damit eigentlich die Geschwindigkeit und den Geradeauslauf meines Roboters regeln. Mein PID-Regler habe ich in C implementiert, er wird alle 100ms aufgerufen. In dieser Zeit bekomme ich jedoch nur maximal 13 Impulse und das ist viel zu wenig. Ich könnte die Zeitspanne jetzt auf 200ms vergrößern, dann bekomme ich aber noch größere Probleme mit Schwingungen in meinem Regelkreis. Eigentlich müßte ich die Zeit sogar noch veringern!
Und nun zur eigentlichen Frage: Wie kann man die oben genannten Probleme lösen? Anzahl der Slots auf der Scheibe vergrößern? Das macht meine Lichtschranke leider nicht mit. Oder den Motor (RB35-0100) umbauen? Wozu benutzt Ihr überhaupt die Radencoder?
ciao, Stefan.
Um nochmal die Diskussion etwas detailierter zu gestalten, werde ich mal schreiben, was ich mit dem Radencoder realisiert habe:
Ich habe mir eine Schlitzscheibe mit dem Postscript von http://massmind.org/techref/io/sensor/pos/enc/enc_ps.htm ausgedruckt. Einfach das Postscript bearbeitet und dann mit Ghostscript (Ghostview) ausgedruckt. Die Scheibe hat einen Durchmesser von 30mm und 50 Slots (d.h. 50 schwarze Striche und 50 weiße Striche). Gedruckt habe ich auf einer Laserfolie mit einem HP LaserJet 4050. Die Auflösung war ok, aber der Grad der Schwärzung war nicht ausreichend. Dazu später mehr.
Als Lichtschranke verwende ich den SFH9340 (Conrad 153833). Vorteil dieser Lichtschranke ist, daß die Auswerteschaltung schon integriert ist und ein TTL-Signal zur Verfügung steht.
Nach dem Zusammenbau habe ich leider festgestellt, daß die schwarzen Bereiche meiner Encoder-Scheibe nicht schwarz genug sind. Es kam immer noch so viel Licht durch, daß die Lichschranke kein Signal rauswarf. Nach langen Experimenten mit den Einstellungen meines Laserdurckers habe ich einfach 2 Scheiben zusammengeklebt, das brachte dann den gewünschten Erfolg. Daß die schwarzen Bereiche nicht dunkel genug sind, liegt wahrscheinlich an der Eigenschaft der Folie elektrostatische Felder zu verfälschen. Ob das mit einem Tintenstrahldrucker anders ist, habe ich noch nicht ausprobiert. Ich bin da eher skeptisch wegen der Auflösung.
Nachdem das Signal in Ordnung ist, nun zu meinem Hauptproblem: Die Anzahl der Slots ist viel zu gering für meine Anwendung. Ich wollte damit eigentlich die Geschwindigkeit und den Geradeauslauf meines Roboters regeln. Mein PID-Regler habe ich in C implementiert, er wird alle 100ms aufgerufen. In dieser Zeit bekomme ich jedoch nur maximal 13 Impulse und das ist viel zu wenig. Ich könnte die Zeitspanne jetzt auf 200ms vergrößern, dann bekomme ich aber noch größere Probleme mit Schwingungen in meinem Regelkreis. Eigentlich müßte ich die Zeit sogar noch veringern!
Und nun zur eigentlichen Frage: Wie kann man die oben genannten Probleme lösen? Anzahl der Slots auf der Scheibe vergrößern? Das macht meine Lichtschranke leider nicht mit. Oder den Motor (RB35-0100) umbauen? Wozu benutzt Ihr überhaupt die Radencoder?
ciao, Stefan.