c't

c't-Projekte - Mailinglisten


[Voriger (Datum)] [Nächster (Datum)] [Voriger (Thread)] [Nächster (Thread)]
[Nach Datum][Nach Thread]

Re: [ct-bot] Bot-Lokalisierung (Hardware)

Absender: Timo Sandmann
Datum: Mi, 31.03.2010 16:32:38
In-reply-to: <096FD558C4D20046A1BABE72DFF0C6C33AA98C4C2F@xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx>
References: <000b01cac225$030ef1d0$0300a8c0@mexpnew> <FB86D213-C9B7-416B-A606-81F3E7891ADF@xxxxxxxxxxxxxxx> <7C60E2D9-B93C-47F8-99D1-3D057379465C@xxxxxxxxxxxxxxx> <096FD558C4D20046A1BABE72DFF0C6C33AA98C4C2F@xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx>


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Hi Frank,

Am 31.03.2010 um 09:33 schrieb Menzel, Frank IT-OO4:
> [â]
> Auf den Barken wird ja jeweils ein ATtiny25 verwendet, zu dem dazu verwendeten Quellcode fehlt aber jeglicher Hinweis (oder habe ich den Ãbersehen?). Im Bot-Quellcode ist der entsprechende Schalter zu setzen, wo finde ich aber den Barkenquellcode?

oh, jetzt weià ich auch, was ich vergessen habe... ;-) Danke fÃr den Hinweis, der Quellcode fÃr die Baken kommt ins SVN, sobald mir ein geeigneter Platz dafÃr eingefallen ist. 

> Der Bot muss ja auch wissen, welche Barke er gefunden hat. Sendet dazu jede Barke eine eindeutige Kennung?

Ja genau. UrsprÃnglich war die Idee, dass die Bake ihre Koordinaten als RC5-Paket Ãbermittelt, so passiert das auch immer noch im Sim (damit man die Baken dort nicht auf eine Position programmieren muss, sondern einfach nur "in die Welt setzen", s.u.). FÃr die echten Baken hat es sich aber als zu ungenau herausgestellt, ein komplettes RC5-Paket zu senden, daher senden die Baken im Moment nur eine 4 Bit groÃe ID und der Bot braucht eine Tabelle, welche Baken-ID fÃr welche Position steht. Hier ist aber z.B. noch denkbar, dass jede Bake die ersten 10 s nach dem Einschalten ihre ID und Position sendet und der Bot diese, wenn er in einen entsprechenden Modus geschaltet wurde, empfÃngt und fÃr sich speichert. Kommt halt darauf an, ob man die Baken Ãfters umstellen will. 

> Im Botquellcode finde ich den Hinweis, dass im Sim die Barke nicht pulst sondern immer sendet. Also geht's auch im Sim? Wie ist so eine Barke im Sim darstellbar?

Ja, das Ganze geht auch im Sim (neueste Version verwenden). Es muss in config/ct-sim.xml die Option BPSSensor auf true gesetzt werden. Die Baken werden in der Welt dann durch das Zeichen 'l' (fÃr Landmarke oder localization) dargestellt. Ihre Eigenschaften sind immer noch so, wie in der Mail vom 17.09.2009 beschrieben:
"- Neues Parcours-Objekt "IR-Bake": ReprÃsentiert eine Landmarke, die stÃndig ihre Position innerhalb der Welt "blinkt", dadurch kann sich der Bot lokalisieren, wenn er mindestens drei solcher Baken sieht. Special-Features der Sim-Baken (im Gegensatz zu ihren realen Kollegen): Ihr IR-Licht strahlt durch WÃnde, sie haben keine Masse - der Bot kann durch sie hindurchfahren - und ihr optisches Erscheinungsbild fÃllt recht bescheiden aus." 

> Weiterhin ist mir noch unklar, ob hiermit das Problem der globalen Positionsbestimmung gelÃst ist oder sind das weiterhin die lokalen Koordinaten eines Bot's selbst?

Ja, es wird eine globale Position ermittelt (wie bei GPS). 

> Also bedeutet bei mehreren Bots und den 3 gleichen Barken die Position 47,11 wirklich die rÃumlich identische Position?

Ja. 

GruÃ,
Timo

-----BEGIN PGP SIGNATURE-----

iEYEARECAAYFAkuzXQUACgkQDH/BX4067fLD6ACfbDyteWKzboHT7ieYLFT3oi81
7rwAoJ/Fvr0r2eAUJDTTspebaQb/zqDZ
=40X/
-----END PGP SIGNATURE-----