c't Projekte - c't-Bot und c't-Sim -
Mailinglisten
[Voriger (Datum)]
[Nächster (Datum)]
[Voriger (Thread)]
[Nächster (Thread)]
[Nach Datum][Nach Thread]
Absender: Benjamin Benz
Datum: Mo, 20.03.2006 09:44:17
In-reply-to:
<C12A92EB-9886-4802-A4F9-532C01670B21@xxxxxxxxxxxxxxxxxxxxxxxx>
References:
<C12A92EB-9886-4802-A4F9-532C01670B21@xxxxxxxxxxxxxxxxxxxxxxxx>
Danke für den Hinweis, ist im CVS eingebaut.
MfG Benjamin Benz
Lukas Jelonek wrote:
> Hallo allerseits,
>
> mir ist aufgefallen, dass die Motoren beim Wechsel von Geschwindigkeit
>>0 auf 0 unterschiedlich reagieren.
> Das rechte Rad stoppt und dreht noch ein klein wenig Rückwärts und das
> linke Rad rollt aus.
> Dabei sollten bei einem STOP ja beide Räder stehen bleiben (oder doch
> ausrollen?).
>
> Dieses unterschiedliche Verhalten liegt in der "mcu/motor-low.c" in der
> Funktion bot_motor(). Hier wird
> jeweils abgefragt, ob die Geschwindigkeit < 0 ist, aber da die Motoren
> invertiert sind reagieren diese
> unterschiedlich. Der rechte Motor dreht bei 0 Rückwärts(?) und der linke
> Motor dreht bei 0 Vorwärts(?).
>
> Um für beide Motoren gleiches Verhalten zu erreichen muss man die 0
> eindeutig einer Richtung
> zuordnen. Wenn wir nun wollen, dass der Motor ruckartig stehenbleibt,
> dann funktioniert der
> angehängte Patch, der die 0 einfach zum Rückwärtsfahren vom rechten
> Motor zuordnet (siehe Patch).
> Wenn der Motor ausrollen soll, dann müssen wir die 0 einfach nur dem
> linken zuordnen.
>
> mfg Lukas Jelonek
>
> Index: motor-low.c
> ===================================================================
> RCS file: /ctbot/ct-Bot/mcu/motor-low.c,v
> retrieving revision 1.4
> diff -u -r1.4 motor-low.c
> --- motor-low.c 27 Feb 2006 14:59:30 -0000 1.4
> +++ motor-low.c 9 Mar 2006 11:43:16 -0000
> @@ -77,7 +77,7 @@
> else
> BOT_DIR_L_PORT &= ~BOT_DIR_L_PIN;
>
> - if (right < 0 ) // Einer der Motoren ist invertiert, da er
> ja in die andere Richtung schaut
> + if (right <= 0 ) // Einer der Motoren ist invertiert, da er
> ja in die andere Richtung schaut
> BOT_DIR_R_PORT |= BOT_DIR_R_PIN;
> else
> BOT_DIR_R_PORT &= ~BOT_DIR_R_PIN;
>
> _______________________________________________
> ct-bot-entwickler Mailingliste
> ct-bot-entwickler@xxxxxxxxxxxxxxxxx
> http://www.heise.de/bin/newsletter/listinfo/ct-bot-entwickler
>
--
Benjamin Benz
Heise Zeitschriften Verlag
Redaktion c't
eMail: bbe@xxxxxxxx
WWW : http://www.heise.de