Absender: Timo Sandmann
Datum: Mo, 16.11.2009 16:25:46
In-reply-to:
<822928125.20091116121057@xxxxxxxxxxxxxxxxx>
References:
<7693495C-4CF8-45ED-A358-C92DA07D1BAE@xxxxxxxxxxxxxxx> <4123414453.20091113221817@xxxxxxxxxxxxxxxxx> <4B010121.6060809@xxxxxxxx> <722069D7-4B77-408F-96CF-AA7F3FB96867@xxxxxxxxxxxxxxx> <822928125.20091116121057@xxxxxxxxxxxxxxxxx>
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Am 16.11.2009 um 12:10 schrieb Thorsten Thiele: > Drei Anmerkungen: > > 1) als Erweiterung obendrauf geht im Prinzip natuerlich auch, > irgendwann wird der Bot dann eben kopflastig. Ich würde die neue Erweiterung dann einfach anstatt des bisherigen Erweiterungsmoduls (MMC / WLAN) montieren. Wenn man zwei Platinen braucht, wird der Bot vielleicht noch ein bis zwei cm höher, das sollte auch kein Problem sein, da habe ich schon ganz andere Aufbauten auf dem c't-Bot gesehen... > 2) ob Linux sinnvoll ist, sollten wir diskutieren. Das ist dann so ein > Schmalspur-Linux weil keine Festplatte und keine richtige > Infrastruktur. Das läuft in solchen Umgebungen dann ja meist einfach von einer SD-Karte, was für uns völlig ausreichen sollte. Linux hätte meines Erachtens rein softwareseitig zwei große Vorteile: 1) Der Bot-Code läuft jetzt schon unter Linux, man hat also bereits sehr schnell eine brauchbare und funktionierende Plattform. 2.) Derselbe Code läuft auch auf einem PC zum Testen und Simulieren, das macht das Debugging deutlich einfacher. Hinzu kommt noch, dass man mit einer leistungsfähigeren CPU dann sicherlich auch bald mehr Komfort und weitere Möglichkeiten im Software-Framework haben möchte. Routinen zur Bildverarbeitung und eine entsprechende Auswertung möchte man vermutlich lieber in C++ schreiben als in C. Dafür braucht man zwar nicht zwangsläufig Linux, es macht die Sache aber deutlich angenehmer, wenn man in einer bereits bekannten Umgebung arbeiten kann. Der Nachteil ist natürlich, dass man dafür eine leistungsfähigere Hardware braucht und nicht so effizient ist. > 3) Beim Kamerathema sehe ich folgende Problematik, die wir zuerst > einmal diskutieren muessten: > > - wenn wir Bildverarbeitung "auf dem Bot" machen, muessen wir uns sehr > genau ueberlegen, was wir eigentlich erkennen und auswerten wollen. Um > einmal zwei Extrembeispiele zu geben: > > -- ein unbekanntes Labyrinth bestehend aus lauter gleichmaessig grauen > Waenden und einem Fussboden in gleicher Farbe, ganz gleichmaessig > ausgeleuchtet. Da hat man dann schon als Mensch gewisse > Erkennungsprobleme. > > Oder ebenfalls sehr aufwendig: ein Labyrinth aus lauter > Spiegelwaenden mit mehreren gleich aussehenden Bots darin unterwegs > > -- anderes Extrem: Labyrinth aus weissen Waenden mit dicken schwarzen > Markierungen, die den Weg zum Ausgang weisen Mit Letzterem würde ich mal anfangen, egal ob die Auswertung auf dem Bot oder einem PC abläuft. Ich glaube bei den anderen Beispielen stoßen wir eher an algorithmische Schwierigkeiten als an die Grenzen der Hardware... > und dazwischen dann ziemlich viele Moeglichkeiten. > > Fuer die Datenverarbeitung auf dem Bot muessten wir festlegen, was wir > erkennen und koennen wollen und dann die Hardware darauf auslegen. Und > sind dann damit darauf festgenagelt, mehr geht dann mit vertretbarem > Aufwand nicht mehr. Ist das sicher? So genau kenne ich mich auf dem Gebiet nicht aus, aber ich hätte gedacht, dass die begrenzenden Faktoren da eher die Kameraoptik und die Auswertungsalgorithmen sind. > Aus diesem Grund hatte ich vorgeschlagen, die Verarbeitung auf einem > "externen" Computer vorzunehmen - da kann man dann beliebig aufwendige > Algorithmen ausprobieren, weil einfach die Infrastruktur dafuer > vorhanden ist. Das ist sicherlich richtig. Aber wenn eine Funk-Kamera die Bilder per WLAN an einen externen Rechner senden soll, dann kann man ja auch immer noch eine Kamera an die Bot-CPU anschließen und die Daten von dort per WLAN an einen PC schicken, falls die Verarbeitung on-Board wirklich nicht machbar sein sollte. Viele Grüße, Timo -----BEGIN PGP SIGNATURE----- Version: GnuPG/MacGPG2 v2.0.12 (Darwin) iEYEARECAAYFAksBbvcACgkQDH/BX4067fJ60wCfX3LL+W8+Jzmtlo8WoS8L3Ouw gssAoPappBzPAljXc6SYnt21kcW22bJi =nYde -----END PGP SIGNATURE-----