c't

c't-Projekte - Mailinglisten


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

AW: [ct-bot] neues catch_pillar-Verhalten mit goto_pos

Absender: Frank Menzel
Datum: Mi, 21.05.2008 19:59:55
In-reply-to: <DCC3D757-E30E-44DC-A391-D83F48E04042@xxxxxxxxxxxxxxx>


Hallo,
habe mir mal die neueste Version gezogen und getestet, leider
enttäuschend. Ja es mir sogar nicht ein einziges Mal geglückt, ein
Objekt einzufangen.
Habe auch auf die 2 umgeschaltet aber kein Erfolg, ja es wird so
weitergedreht, als ob es kein Objekt gibt bzw. dort ausgelöst, wo gar
keines ist. 
Werde mal suchen, ob sich da noch ein Fehler eingeschlichen hat...
(Die notwendigen Unterverhalten hierfür habe ich manuell eingeschaltet
wie goto_pos,measure_dist)

Gruß, Frank Menzel

-----Ursprüngliche Nachricht-----
Von: ct-bot-entwickler-bounces@xxxxxxxxxxxxxxxxx
[mailto:ct-bot-entwickler-bounces@xxxxxxxxxxxxxxxxx] Im Auftrag von Timo
Sandmann
Gesendet: Montag, 19. Mai 2008 18:57
An: Entwicklung rund um den c't-bot
Betreff: Re: [ct-bot] neues catch_pillar-Verhalten mit goto_pos

Hallo,

ich hab das neue Verhalten jetzt mal an die Updates angepasst und  
außerdem noch eine Version ergänzt, die die Entfernung zum Objekt aus  
dem Drehwinkel berechnet. Umschalten kann man zwischen den  
verschiedenen Versionen mit #define CATCH_PILLAR_VERSION in  
behaviour_catch_pillar.c. Bei mir klappt Version 3 auch mit Objekten,  
die weiter weg stehen.
Außerdem kann man in include/sensor_correction.h umschalten, ob aus  
den Rohdaten der Distanzsensoren Mittelwerte gebildet werden oder  
nicht (#define DISTSENS_AVERAGE). Bei mir klappt es ohne Mittelwerte  
besser. Zwischen Sensorwert und Entfernung gibt es ja auch keinen  
linearen Zusammenhang, darum erhält man bei plötzlich auftretenden  
Objekten recht seltsame Entfernungswerte, falls aus den  
Spannungswerten das arithmetische Mittel berechnet wird.

Gruß Timo


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.
> 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)
> -Bot_turn wird abgebrochen falls Objekt gesehen wird (Abbruchfunktion)
> -Measure-Verhalten bestimmt genauen Abstand
> -Koordinate xy wird berechnet je nach Abstand
> -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.
> Das alte catch Pillar ist codemaessig noch drin und wird per define
> aktiviert. Ebenfalls wird das alte zugeschaltet bei nicht aktiviertem
> goto_pos-Verhalten (geht auch nur bei aktivierter Motorsteuerung) mit
> entsprechender Warning.
>
> Gruß, Frank Menzel
>
> < 
> catch_pill_with_gotopos 
> .txt>_______________________________________________
> ct-bot-entwickler Mailingliste
> ct-bot-entwickler@xxxxxxxxxxxxxxxxx
> http://www.heise.de/bin/newsletter/listinfo/ct-bot-entwickler


_______________________________________________
ct-bot-entwickler Mailingliste
ct-bot-entwickler@xxxxxxxxxxxxxxxxx
http://www.heise.de/bin/newsletter/listinfo/ct-bot-entwickler