Absender: Timo Sandmann
Datum: Mo, 02.07.2007 21:10:47
In-reply-to:
<000001c7bcd7$ff73d400$fe78a8c0@mexpnew>
References:
<000001c7bcd7$ff73d400$fe78a8c0@mexpnew>
Hallo, Am 02.07.2007 um 20:37 schrieb Frank Menzel:
Bei der Motorregelung ist es ja beim Kalibrierungsverhalten so, dass amEnde die Reglerwerte direkt auf dem Bot-Screen ausgegeben werden und einfach nur in die bot_local.h eingetragen werden müssen. Danach das Verhalten via Define wieder ausschalten und alles ist gut-hat übrigens prima bei mir geklappt.
das freut mich sehr! Vielen Dank für's Testen! :-)
Bei den Abstandssensoren ist es aber wohl scheinbar so, dass nach dem normalen HEX-flashen die Sensoren nicht auf Entfernung reagieren und beide 999 anzeigen. Da gibt es doch aber die unten erwähnte sensor_correction.h, die zumindest bei mir zu Beginn nichts bewirkt. Dann kann man wohl das Verhalten starten und diverse Male den bot auf richtigen Abstand bringen. Danach werden per log die Daten ausgegeben,die man wiederum in die sensor_correction.h eintragen kann. Habe leider kein WLan und kein Kabel-da waren die Ausgaben der Motorregelung auf demDisplay prima. Warum greifen aber die Standardwerte in der Datei nicht zu Beginn ? Jetzt muß ich also immer nach jedem flashen den bot langwierig mit dem Verhalten auf die Abstände bringen und erst dann kanns losgehen...
Also das Kalibrierverhalten für die Distanzsensoren schreibt sein Ergebnis automatisch ins EEPROM, die Log-Ausgabe ist sozusagen nur zusätzlich. Trägt man die Werte auch in sensor-correction.h ein, so generiert der Compiler ein (für den eigenen Bot) korrektes EEPROM- Image (die Datei ct-Bot.eep), das man ebenfalls per Programmer (oder Bootloader) übertragen kann, um das EEPROM mit den Standardwerten (und / oder eben den für die Distanzsensoren kalibrierten Werten) zu befüllen. Wenn man den Bot-Code (also das hex-File) per Bootloader flasht (was auch deutlich schneller geht), bleibt das EEPROM auf jeden Fall erhalten und die Distanzsensoren funktionieren auch weiterhin nach einer Flash-Update wie gewünscht. Wenn man den Bot-Code per ISP- Programmer flasht, kann man einstellen, ob das EEPROM bei jedem Flashen gelöscht werden soll (nicht so clever, dann muss man immer auch die ct-Bot.eep Datei "flashen"), oder erhalten bleiben soll, dann ändert sich an den Werten für Distanzsensoren (und außerdem auch bot_turn(), "online-schnell-Justierung" der Motorregelung und dem Cache für Mini-Fat-Dateien auf einer MMC) nichts.
Ich seh schon, die Doku ist zu knapp... ;-) Gruß Timo