|
 |
 |
 |
|
|
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: Timo Sandmann
Datum: Do, 06.09.2007 16:58:30
In-reply-to:
<000001c7efea$e012c260$fe78a8c0@mexpnew>
References:
<000001c7efea$e012c260$fe78a8c0@mexpnew>
Hallo,
Am 05.09.2007 um 20:30 schrieb Frank Menzel:
Hallo,
ich bin etwas verwirrt: Bis vor kurzem habe ich auf meinem echten Bot
auch eine Map gehabt ohne Kartenerweiterung, zwar nur 2K gross aber
immerhin...
ich glaube es waren nur 512 Byte (zwei Sections).
Nun habe ich vor wenigen Tagen den neuesten Develcode ausgecheckt und
wollte heute damit experimentieren, doch es liessen sich einfach keine
Mapfunktionen mehr aktivieren was jedoch mit gleichem Exe-Code
funktioniert.
[...]
D.h. keine Erweiterung also auch keine Map mehr ? Hin zum Zwang der
Kartenerweiterung ?
Der Punkt ist: Richtig sinnvoll ist eine Karte IMHO nur dann, wenn
sie a) groß genug ist, so dass alle Bot-Positionen erfasst werden, b)
detailliert genug ist, so dass sich auch Hindernisse und Wege scharf
genug erkennen lassen, c) persistent gespeichert und d) irgendwie
angezeigt werden kann.
Hierfür bietet sich eine MMC oder SD-Karte eben an, vor allem lässt
sich die Karte dann sehr leicht am PC anschauen und debuggen. Der
Atmega32 hat leider nicht besonders viel Speicher und eine Karte soll
ja nicht nur im RAM liegen, sondern auch benutzt werden können, daher
kommt man hier sehr schnell an die Grenzen des Mikrocontrollers.
Außerdem muss es möglich sein, dass der Bot die Karte während der
Fahrt "nebenbei" aktualisieren kann. Deshalb befindet sich der Map-
Code zurzeit im Umbau (siehe http://www.heise.de/ct/projekte/machmit/
ctbot/ticket/129) und wird aus den o.a. Gründen für die MMC
optimiert. Durch diesen Umbau der Kartenorganisation ging der Map-
Code so ohne Weiteres nun nicht mehr auf MCU ohne MMC. Hinzu kommt,
dass verschiedene Methoden zur Datenablage den Map-Code nicht gerade
übersichtlicher machen. Darum hatten wir erstmal beschlossen, diese
Option auszuschalten (fehlerhafte Karten bringen ja auch nichts und
es ist relativ schwierig diesen Code zu debuggen, weil man auf MCU
die Karte nicht ausgeben lassen kann).
Wir hatten allerdings auch nicht gedacht, dass jemand die Map ohne
MMC wirklich benutzt, eigentlich ist die Map ein Grund, warum eine
Speichererweiterung für den Bot Sinn macht und nicht andersrum. Ein
Zwang zur MMC-Erweiterung sollte das aber nun nicht sein.
Nur fehlerhaften Map-Code wollten wir keines Falls ins SVN stellen
(daher die automatische Deaktivierung, falls MMC aus ist), ohne die
Änderungen für MMC einzuchecken lässt sich aber nicht zu zweit daran
arbeiten.
Bitte auch bedenken, dass man jederzeit die alten Versionen von map.c
und map.h aus dem SVN auschecken und diese benutzen kann (oder
alternativ den Map-Code des stable-Zweigs).
Wenn Map ohne MMC doch praktisch eingesetzt wird, lässt er sich
natürlich auch wieder einbauen. Allerdings wohl erst nach der
Fertigstellung des Umbaus, ich möchte da jetzt außerdem auch nicht im
Map-Code rumbasteln, weil ich da nicht so den vollständigen Überblick
habe.
Aber das Auskommentieren hat's auch nicht gebracht, da gab's dann
diverse Fehler...
Bug oder Feature ? Ich sehe es als Bug...
Na ja, vielleicht eher work in progress...
Gruß Timo
|
|
|