Du meinst, wenn er mal nicht weiß, wo er ist, piepst er und blinkt rot und dann setzt man ihn an eine definierte Stelle und von da aus gehts dann wieder weiter... das halte ich für eine nur zweitbeste Lösung.
Das mit den Messungen sehe ich anders. Erstmal kann man nicht davon ausgehen, dass der Roboter immer nur in rechten Winkeln fährt - mit der Zeit wird er im Winkel abdriften und dann sind die Messwerte weitgehend untauglich. Zweites hängen die Fehlmessungen stark von der Position ab. Fährt der Roboter mittig auf die Türzarge zu, misst er mehrere Meter bis zur nächsten Wand, steht er leicht schräg oder fährt weiter am Rand, bekommt er das Echo der Türzarge und denkt "Ups, da ist wohl ne Wand. Wo bin ich denn jetzt geladnet? Da mach ich mal besser das Rotlicht an!".
Es hilf dir ja nicht, wenn du weißt, dass die Wand 3 Meter vor dir sein soll, wenn der Roboter um 20° falsch fährt. In rechtwinkligen Räumen kann man immerhin versuchen, mit Drehungen die kürzeste Distanz zu finden - die ist dann im rechten Winkel zur Wand. Je weiter man von der Wand weg ist, desto schwieriger wird das wegen Reflexionen, Störobjekten usw. Deshalb sind wohl diese Wandläufer so beliebt, weil sie sich ja immer nur in konstantem und relativ kleinem Abstand zur Wand bewegen müssen. Wandende = Türzarge - 90° Drehen und weiter fahren... Das ist einfach aber ineffizient.
Lesezeichen