## c't-Projekte - Mailinglisten

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

### Re: [ct-bot] neues catch_pillar-Verhalten mit goto_pos

Absender: Timo Sandmann
Datum: Mi, 16.04.2008 20:12:50
In-reply-to: <000001c89fb1$b06c1440$0200a8c0@mexpnew>
References: <000001c89fb1$b06c1440$0200a8c0@mexpnew>

    Hallo Frank,

    Am 16.04.2008 um 13:04 schrieb Frank Menzel:

>     Hallo,
>     anbei mal eine Catch_Pillar-Version, welche im Endeffekt das
>     goto_pos-Verhalten zum Einfangen verwendet.

    das hört sich schon mal gut an.

>     Hierfür gibt es ein paar neue Routinen, welche z.B. die Koordinate des
>     gesehenen Objektes ermitteln je nach Sensorentfernung und eine kleine
>     Erweiterung für bot_turn, um dieses abzubrechen.
>     Folgende Logik wird verwendet.

> `-Bot_turn wird wird in 4 Schritten a 90 Grad aufgerufen (bei sofort` `360`

>     Grad dreht er zu schnell und Objekt wird nicht erkannt)

`Vielleicht sollten wir noch eine Botenfunktion bot_turn_speed(degrees,` `speed) hinzufügen, die bot_turn() aufruft, dass dann mit der` `übergebenen Geschwindigkeit dreht?`

>     -Bot_turn wird abgebrochen falls Objekt gesehen wird (Abbruchfunktion)

`Warum nicht bot_turn() abbrechen mit dem Cancel-Verhalten? Dann` `braucht man dieselbe Funktionalität nicht redundant in mehrere` `Verhalten einbauen.`

>     -Measure-Verhalten bestimmt genauen Abstand
>     -Koordinate xy wird berechnet je nach Abstand

`Für die Koordinatenberechnung benutzt du ja u.a. die neue Funktion` `calc_points_in_distance(), die recht ähnlich zur Funktion` `map_get_posx_dist() aus map.c ist. Die Funktion wird aber ziemlich` `groß und lohnt sich daher IMHO nicht.`

`Ich würde den Patch aus zwei Gründen gern ein wenig zurückstellen:` `Erstens ist der Map-Code gerade im Umbau, evtl. ergibt sich dadurch` `eine allgemeine Funktion, die dann von beiden Codeteilen genutzt` `werden kann und zweitens sollen die Positionsdaten von float auf int16` `umgestellt werden.`

> `-hat linker Sensor zuerst Objekt erkannt, wird etwas weiter gedreht` `bis`

>     rechts ebenfalls Objekt erkennt
>     -Mittelwert beider Koordinaten wird mit goto_pos angefahren

>     Das wars… Bei mir klappt die Sache recht gut.

`Super. Wie gesagt, das soll nicht in Vergessenheit geraten, sondern` `nur etwas warten, um doppelte Arbeit zu vermeiden.`

    Gruß Timo

- Referenzen:
  - [ct-bot] neues catch_pillar-Verhalten mit goto_pos
    - From: Frank Menzel

- Voriger (Datum): [ct-bot] map aktiviert in neuestem CVS..., Frank Menzel
- Nächster (Datum): Re: [ct-bot] map aktiviert in neuestem CVS..., Timo Sandmann
- Voriger (Thread): [ct-bot] neues catch_pillar-Verhalten mit goto_pos, Frank Menzel
- Nächster (Thread): Re: [ct-bot] neues catch_pillar-Verhalten mit goto_pos, Timo Sandmann
- Indizes:
  - Datum
  - Thread