Wie macht der Roboter das nur?

#1495639
Lesenswert?

Mahlzeit,

Na der fährt von seiner Basisstation aus los bis er an ein Hindernis 
kommt.
Dann dreht er um, aber nicht 180 Grad sondern etwas zwischen 180 und 90.

Dann fährt er bis zum nächsten Hindernis usw.

so erreicht er das er jede Stelle des Bodens überfährt.

Viele überfährt er doppelt und hundertfach (hab so ein Teil mal wo 
gesehen)

Wie er allerdings seine Basis wiederfindet weis ich nicht.


Mfg Bouni
#1495644
Lesenswert?

hihi mit hilfe von logarithmen ...
unfreiwillig komisch ... ich glaube es waren algorithmen gemeint.
das heißt eigentlich nur, dass der robistaubsauger den raum vermisst und 
dann ein progrämmchen abspielt mit dem er herumfährt und möglichst keine 
stelle auslässt. und wenn sein akkuwächter im erzählt, dass er gleich 
laden muss fährt er wohl zur ladestation...
Gast #1495646
Lesenswert?

Hallo,

ja, da war wieder ein Profi am Werk ^^

Als Erklärung:
Ich habe mal eine Doku gesehen, wo etwas ähnliches gemacht wurde. Der 
Roboter "merkt" sich eigentlich nur, wie lang/weit er in eine bestimmte 
Richtung gefahren ist, bis er irgendwo gegenstößt. Aus diesen 
Informationen erstellt er dann mit seinen internen "Logarithmen" (^^) 
eine Art Karte aus welcher er "ablesen" kann, wie weit er von seinem 
aktuellen Standpunkt aus in welche Richtung fahren kann und vor allem, 
wo er schon überall war, so dass er nicht stundenlang nur den gleichen 
Bereich saugt.
#1495652
Lesenswert?

Elias B. schrieb:

> Wie er allerdings seine Basis wiederfindet weis ich nicht.

Das würde mich allerdings auch interessieren.
Weiß jemand wie das zb in der versschärften Version funktioniert? Es 
gibt ja auch Rasenmäher die das können. Odometrie wird da nicht 
funktionieren, da man ja auch jederzeit mit dem Schlupf der Räder 
rechnen muss.

Wie finden die Dinger also wieder zurück?
Infrarotbake/Funkbake?
Gast #1495706
Lesenswert?

Die Ladestation sendet ein Infrarotsignal, der Roboter versucht, sich
nach diesem auszurichten. Ist die Ladestation durch Hindernisse
verdeckt, bewegt sich der Roboter (wie sonst auch) auf zufälligen
Bahnen, bis er irgendwann den IR-Strahl quert. Da die Suche nicht
deterministisch ist, kann es prinzipiell passieren, dass der Akku
erschöpft ist, bevor der Roboter die IR-Quelle findet :)
#1495721
Lesenswert?

Hm, könnte der Roboter nicht einfach eine Fläche abfahren? In etwa so:

Start
    |>|>|
    |||||
    |||||
    |||||
    |||||
    >^>^>usw.
XXXXXXXXXX Wand XXXXXXX

Immer wenn er ein Hindernis erkennt, dreht er um eine "Wagenlänge" 
versetzt um 180 Grad... und bewegt sich so nach und nach über den 
gesamten Raum?
Gast #1495741
Lesenswert?

Ich habe einen Roomba560. Der merkt sich gar nichts.
Das Teil hat ein paar Bewegungsmuster wie 'Wandverfolgung', 'irgendwo 
gegenstossen und in einem Winkel davon wegfahren', 'Spiralen' etc 
zwischen denen er willkürlich wechselt. Damit erzielt er über die Zeit 
eine erstaunlich gute Raumabdeckung.
Ich lasse den für 75m^2 ca ne Stunde lang rumrödeln (selber machen geht 
schneller, aber lieber lass ich ihn machen :) ).

Die Basisstation findet er, indem er bei niedrigem Akkustand bzw. Zeit 
zufällig durch den IR-Leitstrahl der Basisstation fährt (Öffnungswinkel 
ca.10° bei ca 3-4m Reichweite).

Beeinflussen kann man ihn durch:
* 'Leuchtürme' - virtuelle IR-'Wand' mit der er über Funk kommuniziert, 
nach ca.30min wird dieses Tor geöffnet, nach dem Passieren wieder 
geschlossen. Damit kann man zeitliche Raumaufteilungen machen.

* 'Fernbedienung' - halt Ferngesteuert (eher ein nettes Spielzeug)

* 'RS232' - das Ding kann man auch mit eigener Hardware steuern, in 
diesem Mode hat man Zugriff auf die Steuerung und Sensoren (Protokoll 
ist frei verfügbar). Wenn ich mal Zeit habe mein nächstes Atmel- oder 
PIC-Projekt :)
#1495748
Lesenswert?

Mark Brandis schrieb:
> Und was hält ihn davon ab?

zb das Spielzeug rumliegt.
zb das die Räder der einen Seite auf dem Parkett mehr Schlupf haben als 
die Räder auf der anderen Seite. zb das exaktes Geradeausfahren u.A 
durch zu überwindende Teppichkanten gar nicht so einfach ist, wie man 
annehmen möchte. etc.
#1495764
Lesenswert?

Karl heinz Buchegger schrieb:
> Mark Brandis schrieb:
>> Und was hält ihn davon ab?
>
> zb das Spielzeug rumliegt.

Okay, aber alles was seine Position im Raum nicht verändert kann man 
sich merken. Man braucht nur genug Speicher für die "Karte" des Raums, 
die man z.B. in einem Array ablegt. Vielleicht 1 Bit für einen 
Quadratzentimeter Raum?

Schwierig wird es natürlich, wenn Menschen oder Haustiere durch den Raum 
hopsen :-)

> zb das die Räder der einen Seite auf dem Parkett mehr Schlupf haben als
> die Räder auf der anderen Seite.

Kann man das nicht durch einen Sensor am Rad erkennen? Sicher kann man, 
nicht anderes wird ja beim ABS oder besser gesagt bei der 
Traktionskontrolle gemacht. Die Frage ist wohl eher wie aufwändig/teuer 
das ist.

> zb das exaktes Geradeausfahren u.A
> durch zu überwindende Teppichkanten gar nicht so einfach ist, wie man
> annehmen möchte. etc.

Für den Anfang würde ich natürlich einen Raum annehmen, der entweder nur 
glatten Boden oder nur Teppichboden hat, keine Kanten... und dann mal 
schauen, wie weit ich damit komme. ;-)
#1495804
Lesenswert?

Mark Brandis schrieb:

> Kann man das nicht durch einen Sensor am Rad erkennen?

Das Problem ist, dass dir die Radsensoren melden, dass sich beide Räder 
genau gleich schnell drehen und der Robot fährt trotzdem eine Kurve, 
weil ein Rad keine Haftung hat.

> Sicher kann man,
> nicht anderes wird ja beim ABS

ABS ist ein anderes Thema:
Ein Rad sollte drehen, tut es aber nicht.

> oder besser gesagt bei der
> Traktionskontrolle gemacht.

Die stellt auch nur fest, ob sich die Räder übermässig schnell drehen 
oder nicht.
Gast #1495815
Lesenswert?

Da gibt es doch ein tolles Projekt (GPS im Wohnzimmer). Ist gar nicht so 
schwierig. Dann weiß der Robbi genau wo er ist. Hindernisse kann man ihm 
sagen. Dann braucht er nur noch nach Spielzeug zu schauen.
Ist doch gar nicht so schwer.

Gruß Mattias
#1495826
Lesenswert?

Karl heinz Buchegger schrieb:
> Mark Brandis schrieb:
>
>> Kann man das nicht durch einen Sensor am Rad erkennen?
>
> Das Problem ist, dass dir die Radsensoren melden, dass sich beide Räder
> genau gleich schnell drehen und der Robot fährt trotzdem eine Kurve,
> weil ein Rad keine Haftung hat.

Ähm... dann taugt aber die Bereifung nix? Was ist das für ein Material, 
das fröhlich durchdreht bei gleicher Drehzahl? ;)
Gast #1495901
Lesenswert?

Mark Brandis schrieb:
> Ähm... dann taugt aber die Bereifung nix? Was ist das für ein Material,
> das fröhlich durchdreht bei gleicher Drehzahl? ;)

Natürlich drehen die Räder nicht durch wie auf Glatteis. Aber schon ein
geringer Schlupf kann die Positionsbestimmung schnell zunichte machen.

Beispiel:

Der Abstand zwischen linkem und rechtem Rad ist 20cm. Das linke Rad hat
keinen Schlupf (Parkettboden), das rechte einen Schlupf von 1%
(Teppichboden). Die 1% nimmst du mit dem Auge noch lange nicht als
Rutschen wahr. Trotzdem steht der Roboter schon nach 3,5m Fahrstrecke
10° verdreht und über 30cm (also mehr als eine Roboterbreite) neben
seiner Sollposition. Statt der schönen parallelen Bahnen fährt er nur
noch Kraut und Rüben :)
Gast #1496113
Lesenswert?

> Okay, aber alles was seine Position im Raum nicht verändert kann man
> sich merken. Man braucht nur genug Speicher für die "Karte" des Raums,
> die man z.B. in einem Array ablegt. Vielleicht 1 Bit für einen
> Quadratzentimeter Raum?
Warum sollte man so einen Aufwand betreiben? Die Abdeckung scheint ja 
gut zu sein, außer bei dem Robocleaner 3000 wird nichts gegenteiliges 
geschrieben.
Die aktuelle Lösung ja auch viel kundenfreundlicher, einstecken, 
aufladen lassen und dann lass jucken Kumpel.
Das Problem beim Speichern der 'immerwährenden' Hindernisse ist auch, 
wie sage ich der Büchse, dass ist immer im Weg und dass ist nur die 
vermaledeite Dreckstöhle, die faul auf dem Teppich vor sich hinfurzt.
Die von dir angedachten Sensoren würden mehr Strom benötigen, das 
Produkt teurer machen und vermutlich den Akku schneller leer machen.
#1496124
Lesenswert?

yalu schrieb:
> Beispiel:
>
> Der Abstand zwischen linkem und rechtem Rad ist 20cm. Das linke Rad hat
> keinen Schlupf (Parkettboden), das rechte einen Schlupf von 1%
> (Teppichboden). Die 1% nimmst du mit dem Auge noch lange nicht als
> Rutschen wahr. Trotzdem steht der Roboter schon nach 3,5m Fahrstrecke
> 10° verdreht und über 30cm (also mehr als eine Roboterbreite) neben
> seiner Sollposition. Statt der schönen parallelen Bahnen fährt er nur
> noch Kraut und Rüben :)

Okay, und wie klappt dann beim Auto der Geradeauslauf, wenn der Grund 
unter den Reifen rechts und links nicht der gleiche ist? Alleine 
dadurch, dass der Fahrer dies (unbewusst) ausgleicht?
#1496160
Lesenswert?

>Okay, und wie klappt dann beim Auto der Geradeauslauf, wenn der Grund
>unter den Reifen rechts und links nicht der gleiche ist? Alleine
>dadurch, dass der Fahrer dies (unbewusst) ausgleicht?

Du kannst es ja mal ausprobieren indem du das Lenkrad loslässt.
Irgendwann wirst du von der Strasse abkommen.
Das regelst du unbewusst mit aus.
#1496193
Lesenswert?

Ein Auto hat vier Reifen und fährt prinzipiell dahin wo man hinlenkt, 
der Roboter lenkt wohl nur durch verschiedene Geschwindigkeiten der 
beiden angetriebenen Reifen und einem frei drehbaren, dritten Rad.

In einem Auto steckt aber auch ein Differenzial, hätte das Auto auch nur 
ein frei drehbares Vorderrad würde es sich mehr oder weniger zufällig im 
Kreis bewegen. ;)

ABS hindert einfach nur die Reifen am Stillstehen, aber nur ab einer 
Geschwindigkeit über 4 km/h, man will ja das das Auto am Berg ganz 
stehenbleibt und nicht trotz Bremsen wegrollt.
ESP ist da etwas heikler, da werden wohl durchaus mehr als nur die vier 
Geschwindigkeitssensoren am Rad abgefragt, könnte mir u.A. noch einen 
Drehratensensor für die Hochachse vorstellen. Wenn der nicht das selbe 
meldet wie die gefahrene Kurve, die sich aus den Drehzahlen der Räder 
berechnen lässt, ist die Karre grade am abfliegen und das ESP kann 
selbstständig einen Abschleppdienst verständigen.
Gast #1496198
Lesenswert?

Mark Brandis schrieb:
> Okay, und wie klappt dann beim Auto der Geradeauslauf, wenn der Grund
> unter den Reifen rechts und links nicht der gleiche ist? Alleine
> dadurch, dass der Fahrer dies (unbewusst) ausgleicht?

Das Auto hat es etwas leichter, weil es vier statt zwei Räder hat.
Selbst wenn auf der einen Seite die Traktion schlechter ist, führt das
nicht sofort zu einer Drehbewegung des Fahrzeugs, da sich hierfür ja
mindestens zwei der Räder leicht quer zur Fahrtrichtung bewegen müssen.
Trotzdem wird man es bspw. nicht hinbekommen, mit exakt der gleichen
Lenkbewegung mehrmals hintereinander eine genaue 180°-Kehre zu fahren.
Das geht nur, wenn der Fahrer den entstehenden Fehler korrigiert.

Der Roomba hat nur zwei nebeneinander liegende Räder (plus eine frei
bewegliche Stützrolle, die aber nichts zur Fahrstabilität beiträgt).
Sobald sich ein Rad auf Grund von Schlupf etwas langsamer vorwärts
bewegt als das andere, beginnt sich der Roboter sofort leicht zu drehen.
Und wenn erst einmal die Richtung nicht mehr stimmt, wächst die Abwei-
chung von der gewünschten Bahn natürlich stetig an. Um über 100m und
mehr eine vorgegebene Bahn genau abfahren zu können, braucht der Roboter
in irgendeiner Form eine externe Referenz, sei es mit GPS, in den Zim-
merecken aufgestellte "Leuchttürmen", an die Decke projizierte "Sterne"
oder auch einfach nur einer auf den Boden aufgebrachte Leitlinie.

Die Zufallsnavigation des Roomba (und praktisch aller anderer Roboter-
staubsauger und -rasenmäher) bringt zwar bei Weitem nicht die theore-
tisch mögliche Flächenleistung, ist dafür aber maximal robust: Man kann
den Roboter des Öfteren ein paar Meter zur Seite kicken, und er wird den
Raum trotzdem noch in der gleichen Zeit (im Mittel) säubern, wenn die
Kickrichtung ebenfalls zufällig ist. Zufall plus Zufall ergibt eben
immer noch Zufall :)
Gast #1496242
Lesenswert?

Für ein normles ESP werden nur 4 Drehzahlgeber und ein Lenkwinkelsensor 
gebraucht.

Erst ab aktivem Fahrwerk kommen Beschleunigungsaufnehmer dazu.

(Auto = Billig nicht vergessen)

Stichwort wäre noch Schräglaufwinkel.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren