Absender: Menzel, Frank IT-OO4
Datum: Di, 05.05.2009 14:03:11
In-reply-to:
<4176C505-AE2C-429A-AF24-BC7B65A55EC6@xxxxxxxxxxxxxxx>
References:
<000001c9cb57$ea7f89f0$0200a8c0@mexpnew> <CEC3C23A-649B-4570-AC03-A9593DCE1570@xxxxxxxxxxxxxxx> <096FD558C4D20046A1BABE72DFF0C6C33A026D74F0@xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx> <4176C505-AE2C-429A-AF24-BC7B65A55EC6@xxxxxxxxxxxxxxx>
Hallo Timo, Antworten siehe unten. Gruß, Frank -----Original Message----- From: ct-bot-entwickler-bounces@xxxxxxxxxxxxxxxxx [mailto:ct-bot-entwickler-bounces@xxxxxxxxxxxxxxxxx] On Behalf Of Timo Sandmann Sent: Monday, May 04, 2009 3:42 PM To: Entwicklung rund um den c't-bot Subject: Re: [ct-bot] drive_area Aenderungen -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Hi Frank, Am 04.05.2009 um 12:41 schrieb Menzel, Frank IT-OO4: > Wie hast du das Problem mit dem Hängenbleiben an den Ecken jetzt > gelöst? Indem zusätzlich die Distanzsensoren ausgewertet werden? > > Die Distanzsensoren wurden schon immer ausgewertet und hängenbleiben > tut er auch noch des öfteren... vielleicht sollten wir map_way_free() um einen Parameter erweitern, mit dem man einen Toleranzbereich angeben kann, der links und rechts neben der Bahn auch noch frei sein muss? Das wäre sicherlich nicht verkehrt, jedoch prüfe ich in dem Verhalten auch nicht den kompletten Weg voraus in der Map auf Wegfreiheit sondern nur gewisse Distanz voraus. > Das hier ist mir noch nicht so richtig klar: > + //notwendig, weil bei Map-Simexport Lampen als > genausogrosses Hindernis gekennzeichnet sind wie Wandelemente, d.h. > gesehener Abstand groesser > + //als in Map eingetragen und gesehener Anfahrpunkt waere > im Hindernis und Strecke nicht anfahrbar; daher so weit kleinere > Strecke > + //als gesehene nehmen, damit Punkt auf jeden Fall vor > Hindernisfeld liegt > + disttodrive = (sensDistL < sensDistR) ? > sensDistL - 80 : sensDistR > + - 80; //in kurzer Entfernung > Hind. gesehen > > Geht es darum, dass die Lampen sehr schlecht von den Distanzsensoren > erkannt werden? Aber was hat das mit der Map zu tun? > > Eine Lampe wird in der Map, die nach dem Simexport erstellt wird, > als Quadrat genauso wie ein Wandelement generiert. D.h. nach den > Abstandssensoren kann er weiter ranfahren zur Lampe obwohl laut Map > schon Hindernis eingezeichnet ist. Für freie Fahrt voraus wird nach > den Sensoren der Abstand zum Hindernis gemessen und map_way_free > aufgerufen für diesen Abstand. Beim Lampenelemet liegt der Punkt > somit in der "Wand" obwohl real eben nicht... Das heißt, der Karte wird mehr getraut als den Distanzsensoren? Kann man so nicht sagen, ich prüfe ja beides. Es wird der kürzere der beiden gesehenen Abstände laut Abstandssensoren genommen. Dann wird gewisse Strecke davon abgezogen und der Punkt in Botsicht für genau diesen Abstand voraus berechnet und genau bis dahin die Map überprüft mit map_way_free. Denn wenn er gerade an einer Kante vorbeiblickt, würde er durchaus unendlich sehen und drauflos fahren, die map weis aber, dass da ein Hindernis ist und der bot nicht vorbeikommt-daher beides. Der abgezogene Abstand, der vom gesehenen Abstand zum Hindernis abgezogen wird, wird nur so hoch gewählt (jetzt 80, im alten Code waren'S 50), dass der Punkt, zu dem Wegefreiheit sein muss, auf jeden Fall vor einem Wandelement ermittelt wird welches auch die Lampe sein kann. Wie gesagt, nach einem Mapexport aus dem Sim (testparcours2) ist die Lampe genauso gross als Quadrat gekennzeichnet wie ein Wandelement. Grüße, Timo -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.9 (Darwin) iEYEARECAAYFAkn+8J0ACgkQDH/BX4067fJA+wCeP7Yk37XHkZMEyYS+mZCptzIz BjUAn3K/c5qmASYm9ltnq+IpSKHs38Xh =O/o9 -----END PGP SIGNATURE----- _______________________________________________ ct-bot-entwickler Mailingliste ct-bot-entwickler@xxxxxxxxxxxxxxxxx http://www.heise.de/bin/newsletter/listinfo/ct-bot-entwickler Confidentiality note: The information in this email and any attachment may contain confidential and proprietary information of Heidelberger Druckmaschinen AG and/or its affiliates and may be privileged or otherwise protected from disclosure. If you are not the intended recipient, you are hereby notified that any review, reliance or distribution by others or forwarding without express permission is strictly prohibited and may cause liability. In case you have received this message due to an error in transmission, we kindly ask you to notify the sender immediately and to delete this email and any attachment from your system.