## c't-Projekte - Mailinglisten

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

### [ct-bot] Verfeinerung des c't-Sim

Absender: Peter König
Datum: Mi, 22.03.2006 11:47:14

    Hallo zusammen,

`es ist geplant, den c't-Sim im Detail realistischer zu modellieren. Wir` `würden in dieses Arbeitspaket gerne so viel praktische Erfahrung wie` `möglich mit einfließen lassen, die Sie bereits mit Ihrem c't-Bot` `gesammelt haben.`

`Die folgenden Gedanken sollen eine erste Diskussionsgrundlage liefern,` `anhand derer wir gemeinsam die wichtigsten Baustellen im c't-Sim` `identifizieren können. Über Vorschläge, Anregungen, Wünsche, Fragen und` `Ideen freuen wir uns ebenso wie über Erfahrungsberichte, Listen von` `Beispielmessdaten und Patches, die Lösungen für einzelne Aspekte` `umsetzen (wie sie bereits schon über diese Liste geschickt wurden).`

    1. Die Welt:

`Je nach Material der Wand oder der Farbe des Bodens liefern Distanz-` `oder Liniensensoren des c't-Bot unterschiedliche Werte zurück. Um den` `Simulator an die Situation der echten Welt anzupassen, sollten wir uns` `auf eine Referenzumgebung einigen, deren Eigenheiten im Simulator` `nachgebildet werden. Dabei sollen nicht nur die Sensor-gerechten` `Eigenschaften der Materialien eine Rollen spielen, sondern auch der` `Preis und der Aufwand, der betrieben werden muss, um die Referenzwelt` `nachzubauen. Hier sind Ihre eigenen Erfahrungen besonders wichtig: In` `welcher Umgebung lassen Sie Ihren Bot frei laufen? Wo sind Sie auf` `Schwierigkeiten gestoßen, wo fühlte sich der Bot zu Hause?`

    Unser Vorschlag für eine Standardwelt:

`* Die Wände bestehen aus brauner Wellpappe. Die ist leicht und billig zu` `besorgen (Verpackungskartons), zu Wandelementen zu falten und` `aufzustellen. Darüber hinaus reflektiert die Oberfläche nicht ganz so` `viel Licht wie weißes Papier, was die Lichtsensoren wieder stören könnte.`

`* Der Boden besteht aus roher Spanplatte. Diese hat einen einigermaßen` `einheitlichen hellen Ton, ist preiswert zu besorgen und ausreichend` `glatt und eben, um dem Bot ein bequemes Fortkommen zu erlauben. Größere` `Böden können aus mehreren Platten zusammengesetzt werden. Alternative:` `Der Boden könnte noch dazu in einer festgelegten Farbe gestrichen werden` `(mit RAL-Nummer o.Ä.), oder bedeutet das zu viel Aufwand?`

`* Löcher bestehen aus schwarzem Tonpapier -- die lassen sich damit ohne` `viel Aufwand dem Boden hinzufügen und sind auch nicht so gefährlich für` `den Bot wie echte Lücken.`

`* Linien auf dem Boden kann man mit schwarzem Klebeband oder aus` `schwarzen bzw. weißen Papierstreifen aufkleben.`

`* Die genormten Lichtquellen könnten aus nackten 15-Watt-Glühbirnen mit` `Milchglas bestehen -- sie strahlen in alle Richtungen gleichermaßen und` `sind nicht so grell, dass sie zu sehr blenden würden, wenn man direkt` `hineinblickt. Allerdings sind sie auf Netzspannung angewiesen und müssen` `daher per Kabel mit Strom versorgt werden. Für Hinweise auf preiswerte,` `einheitliche Lichtquellen mit Batteriespannung, die ebenfalls rundum` `Licht ausstrahlen, sind wird dankbar. Denkbar ist hier auch eine` `Eigenbau-Lösung, für die wir gerne eine genaue Bauanleitung` `veröffentlichen würden.`

`* Das größte Problem für die Lichtsensoren: Wie ist die Umgebung des` `Parcours zu gestalten? Alles, was nicht matt und schwarz ist (Wände,` `Möbel, Fenster, Spiegel....), erzeugt Reflektionen, die das Licht weiter` `streuen. Am günstigsten wäre natürlich, wenn der gesamte Raum um den` `Parcours dunkel und auch noch schwarz gestrichen oder mit dunklem Stoff` `abgehängt wird -- ein Aufwand, der für Bot-Testläufe in der Praxis aber` `kaum vertretbar sein wird. Oder?`

    2. Die Sensoren:

`Im c't-Sim sorgen die virtuellen Sensoren für stabile Werte (die` `Distanzsensoren arbeiten beispielsweise bis auf den Millimeter präzise),` `viele der Sensoren des echten c't-Bot liefern dagegen Meßwerte, die in` `schneller Folge zwischen gewissen Grenzen schwanken. Ein echter Bot muss` `daher auf jeden Fall mit Hilfe einer Filter- oder Glättungsfunktion` `einen praktikablen Mittelwert herausrechnen -- Vorschläge hierfür gab es` `ja bereits auf dieser Liste zu lesen.`

    Für den Simulator gibt es hier zwei Möglichkeiten:

`1. Entweder man produziert im Simulator ebenfalls künstlich` `schwankende Meßwerte, dann kann man auch die Glättung im Simulator` `testen (dies erfordert allerdings eine Menge Aufwand, da das Rauschen in` `den Signalen ziemlich getreu dem der realen Welt entsprechen muss).` `2. Oder der Simulator liefert weiter die idealen Werte -- die` `Glättungsfunktionen sollten diese schließlich weitgehend unbeeinflusst` `lassen. Dann wird allerdings ein Steuerungscode ohne Glättung im` `Simulator bestens funktionieren, der auf einem echten Bot hingegen wegen` `des schwankenden Signals problematisch ist.`

    Aspekte einzelner Sensoren:

`* Distanzsensoren: Hier scheint es durchaus Unterschiede zu geben (je` `nach Kalibrierung und Material der Wand), ab welcher minimalen` `Entfernung zu einem Hindernis die Distanzmessung nicht mehr zuverlässig` `ist. Hier wären Tabellen von Ihrer Seite interessant, welche Werte die` `Sensoren bei welchem Abstand von der Wand anzeigen (vor allem im Bereich` `von 20 - 0 Zentimetern Distanz). Anschließend sollen die virtuellen` `Sensoren im Simulator eine entsprechende Kennlinie erhalten.`

`* Linien- & Abgrundsensoren: Deren Werte sind von diversen Faktoren` `abhängig, zwei davon sind die Farbe und die Distanz des Untergrunds.` `Hier erfordert die aktuelle Näherungslösung im c't-Sim noch einige` `Korrekturen, deren Basis wiederum echte Meßwerte sein sollten -- zum` `Beispiel bei rein schwarzem und rein weißem Untergrund (weißes und` `schwarzes Tonpapier) und auf dem genormten (Spanplatten-)Boden; alles` `gemessen, wenn der Bot auf dem Boden steht, und wenn er 1, 2, und 3 cm` `darüber schwebt (gerne auch in feineren Schritten). Allerdings scheint` `auch die Umgebungsbeleuchtung die Meßwerte zu beeinflussen -- sie sollte` `daher möglichst nur aus einer Handvoll der Norm-Lichtquellen bestehen.`

`* Lichtsensoren: Der c't-Sim verfügt, wie im c't-Artikel in Heft 5/06` `beschrieben, über kein echtes Lichtmodell. Java3D benutzt so etwas zwar` `zur Darstellung der 3D-Welt; wie viel Licht auf einzelne Objekte des` `Szenegraphen fällt, lässt sich innerhalb der virtuellen Welt allerdings` `nicht wieder auslesen (Java3D übergibt die Position und Intensität der` `Lichtquellen an OpenGL bzw. DirectX und überlässt den Rest der` `Beleuchtung diesen Bibliotheken -- Licht existiert nur in der` `Darstellung, nicht in der Modellierung). Im c't-Sim wird daher bislang` `nur direktes Licht berücksichtigt. Diese starke Vereinfachung hat` `Auswirkungen auf alle Verhaltensweisen, die mit den Lichtsensoren zu tun` `haben; gleichzeitig sind beim Nachbau der Musterwelt hier nur ganz` `besonders schwer perfekte Bedingungen zu erreichen. Diese Probleme bei` `der Modellierung von Licht und Lichtsensorik sind erheblich` `grundlegender als die notwendigen Detaillierungen der anderen` `Sensortypen; an dieser Stelle sind wir auch offen für Ideen, die` `eventuell größere Umbauten des Simulators nach sich ziehen würden. Aber` `auch schon mit ein paar beispielhaften Meßwerten bei genauer` `Beschreibung der Lichtsituation ist uns geholfen.`

    Wir freuen uns auf eine lebhafte und konstruktive Diskussion!

    Mit freundlichen Grüßen,

    Peter König

    c't - Magazin für Computertechnik         http://www.heise.de/ct/
    Heise Zeitschriften Verlag GmbH & Co.KG   phone: 0511-5352-300
    Helstorfer Str. 7                         fax:   0511-5352-417
    D-30625 Hannover, Germany                 eMail: pek@xxxxxxxxxxxx

- Antworten:
  - Re: [ct-bot] Verfeinerung des c't-Sim
    - From: Torsten Evers
  - Re: [ct-bot] Verfeinerung des c't-Sim
    - From: Manolis John

- Voriger (Datum): RE: [ct-bot] Anzeige und Selektion der Verhalten im Display, Menzel, Frank IT-OO4
- Nächster (Datum): Re: [ct-bot] Verfeinerung des c't-Sim, Torsten Evers
- Voriger (Thread): Re: [ct-bot] Anzeige und Selektion der Verhalten im Display, Michail Brzitwa
- Nächster (Thread): Re: [ct-bot] Verfeinerung des c't-Sim, Torsten Evers
- Indizes:
  - Datum
  - Thread