Go-Funktion in der asuro.c
Code: [View More of this Code] [View Even More of this Code] [View Less of this Code] [Select All of this Code]
00491 enc_count=distance*10000;
00492 enc_count/=12823;

Diese zwei Zeilen sind auskommentiert, warum? Kann man mit diesen Zeilen eine Umrechnung auf Meter durchführen oder welche Funktion haben/hatten die Zeilen?
Hallo Stallion,

die ursprüngliche Version der Go() und Turn() Funktion ist von mir. Dem Hinzufügen der Regelung der Radencoder stand ich kritisch gegenüber, weil es Funktionsprobleme bei Fremdlicht bis zum Programmhänger geben kann. Die beiden Zeilen im Go() sind noch aus der ersten Version. Etwas später habe ich herausgefunden, dass die Ungenauigkeiten der Umrechnung in mm genau daher kamen, dass ich das große "L" hier vergessen hatte. Wenn man das große "L" hinter der 10000 einfügt, dürfte die Umrechnung einigermaßen gut funktionieren.
@m.a.r.v.i.n Bei einem Update der ASURO-Lib fände ich es nicht schlecht, wenn Du die Umrechnung wieder einführen würdest ( noch mal nachkontrollieren, ob der Faktor stimmt ). Dann hat man wenigstens eine vernünftige Maßeinheit für die gefahrene Strecke.

Gruß,
stochri

Oh, edit ...Nachtrag:

Ich habs bisher immer nur mit (long) gecastet. Von daher war mir diese Schreibweise nicht bekannt.

Ich hab jetzt die Go-Funktion in meiner asuro.c so angepasst, dass man jetzt die Entfernung in Zentimetern angeben kann (veränderte Zeilen sind mit Pfeilen markiert): i
Wie ich grad noch übersehen hatte, hast Du es ja bereits herausgefunden. Die Einheiten in mm anzugeben fände ich allerdings besser. Mit den großen Radencoderscheiben kommnt man auf eine Genauigkeit von ca. 2mm, wenn man die Länge nur in cm angibt, verschenkt man etwas Auflösung.