Trapper
14.02.2009, 11:16
Da ich Neuling auf dem Gebiet der Robotertechnik bin und da mich in erster Linie die Programmierung interessiert, habe ich mir ein PRO-BOT128 Fertiggerät von Conrad zugelegt.
Die Inbetriebnahme des Geräts mit den mitgelieferten Programmen hat einwandfrei funktioniert.
Dann wollte ich ausgehend von den wirklich guten Beispielprogrammen ein paar eigene Programmroutinen schreiben.
Dabei habe ich aber nie die gewünschten Ergebnisse erzielt. Ich habe dann festgestellt, dass ich Probleme mit den Signalen der Radencoder habe.
Wenn ich die Radencoder mit dem mitgelieferten Programm "Radencoder_Check" teste funktioniert alles prima. Wenn man die Encoderscheiben von Hand dreht oder den Roboter hin und her schiebt wird auf beiden Seiten exakt mitgezählt.
Wenn ich jetzt zusätzlich noch den Antrieb initialisiere (z.B. mit der mitgelieferten Routine DRIVE_INIT() funktioniert das Zählen nicht mehr. Besonders auf der linken Seite werden zu viele Signale gezählt. Wenn man die Encoder_Scheibe um 1 Segment weiterdreht zählt man plötzlich 40 - 100 Signale. Der gleiche Effekt tritt auch beim hin- und herschieben auf. Ich habe festgestellt, dass der Fehler auftritt nachdem das PWM-Signal für den Antrieb konfiguriert wurde "Timer_T1PWMX(256,128,128,PS_8)". Die Antriebe müssen nicht laufen, es reicht das PWM-Signal.
Ich habe dann einen Hardwarefehler mit Störungen auf den Signalleitungen vermutet und den Roboter inkl. der C-Control bei Conrad umgetauscht (das wurde übrigens ohne Probleme abgewickelt).
Die neuen Teile zeigen aber genau das gleiche Verhalten. Jetzt vermute ich, dass der Fehler doch bei mir liegt
Kennt jemand dieses Problem? Hat jemand eine Idee was ich falsch gemacht haben könnte?
Die Inbetriebnahme des Geräts mit den mitgelieferten Programmen hat einwandfrei funktioniert.
Dann wollte ich ausgehend von den wirklich guten Beispielprogrammen ein paar eigene Programmroutinen schreiben.
Dabei habe ich aber nie die gewünschten Ergebnisse erzielt. Ich habe dann festgestellt, dass ich Probleme mit den Signalen der Radencoder habe.
Wenn ich die Radencoder mit dem mitgelieferten Programm "Radencoder_Check" teste funktioniert alles prima. Wenn man die Encoderscheiben von Hand dreht oder den Roboter hin und her schiebt wird auf beiden Seiten exakt mitgezählt.
Wenn ich jetzt zusätzlich noch den Antrieb initialisiere (z.B. mit der mitgelieferten Routine DRIVE_INIT() funktioniert das Zählen nicht mehr. Besonders auf der linken Seite werden zu viele Signale gezählt. Wenn man die Encoder_Scheibe um 1 Segment weiterdreht zählt man plötzlich 40 - 100 Signale. Der gleiche Effekt tritt auch beim hin- und herschieben auf. Ich habe festgestellt, dass der Fehler auftritt nachdem das PWM-Signal für den Antrieb konfiguriert wurde "Timer_T1PWMX(256,128,128,PS_8)". Die Antriebe müssen nicht laufen, es reicht das PWM-Signal.
Ich habe dann einen Hardwarefehler mit Störungen auf den Signalleitungen vermutet und den Roboter inkl. der C-Control bei Conrad umgetauscht (das wurde übrigens ohne Probleme abgewickelt).
Die neuen Teile zeigen aber genau das gleiche Verhalten. Jetzt vermute ich, dass der Fehler doch bei mir liegt
Kennt jemand dieses Problem? Hat jemand eine Idee was ich falsch gemacht haben könnte?