Forum: Mikrocontroller und Digitale Elektronik Wie macht der Roboter das nur?


von Martin (Gast)


Angehängte Dateien:

Lesenswert?

Auf dem Bild (Ausriß aus dem Kaufhofprospekt vom 25.11.2009) ist ein 
Reinigungsroboter. Den Textteil unter dem Bild verstehe ich nicht. Kann 
mir jemand diesen näher erläutern?

von Nick M. (Gast)


Lesenswert?

> Den Textteil unter dem Bild verstehe ich nicht.

Steht doch da: Der reinigt mit Logarithmen. Hat also einen hohen 
Kehrwert. :-))


Gruß,
Nick

von Helmut L. (helmi1)


Lesenswert?

Interessant das man sich ueber "Logarithmen" im Raum zurecht findet.
Das muesste mein Taschenrechner doch auch koennen der kann auch 
Logarithmen.

Gruss Helmi

von Karl H. (kbuchegg)


Lesenswert?

Er logarithmiert eigentlich nicht den Raum sondern nur den Fussboden. 
Aus 100m^2 werden so nur 2. Und die sind nun wirklich leicht zu saugen 
:-)

von Elias B. (bouni)


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

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

Das muß ein Schreibfehler sein.
Wahrscheinlich ist eigentlich der Logarhythmus gemeint  :-o

von S. T. (cmdrkeen)


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...

von Der Ignorant (Gast)


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.

von Karl H. (kbuchegg)


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?

von Timmo H. (masterfx)


Lesenswert?

Nick Müller schrieb:
>> Den Textteil unter dem Bild verstehe ich nicht.
>
> Steht doch da: Der reinigt mit Logarithmen. Hat also einen hohen
> Kehrwert. :-))
>
>
> Gruß,
> Nick
ROFL, der ist gut!
Algorithmen waren wahrscheinlich gemeint, aber das ist bei Chinaware 
eben so.

von Walter T. (nicolas)


Lesenswert?

Der automatische Rasenmäher eines Freundes sendet eine Bake im 
UHF-ISM-Band.

Edit: Sri, natürlich die Basisstation, der Rasenmäher peilt nur.

von Pirat (Gast)


Lesenswert?

Macht er auf seiner Putztour regelmäßig eine Peilung zur Basis?
( Kreuzpeilung )

Ist ja richtig pfiffig der Kleine!

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

> ( Kreuzpeilung )
Eher wird die Empfangsantenne eine schmale Keule haben. Und der Robbi 
fährt auf das Signalmaximum zu.

von yalu (Gast)


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 :)

von Mark B. (markbrandis)


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?

von Läubi .. (laeubi) Benutzerseite


Lesenswert?

In einer Perfekten Welt könnte er das so machen ja...

von Mark B. (markbrandis)


Lesenswert?

Und was hält ihn davon ab? Zu wenig Speicher um sich den bisher 
abgefahrenen Teil des Raums zu merken?

von Gast (Gast)


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 :)

von Billy _. (slowflyer)


Lesenswert?

Der Rasenmäher eines Bekannten (soviel ich verstanden hab) fährt einfach 
los bis er auf die Schleife trifft (mit dieser wird das zu mähende Feld 
umringt) unf folgt dann dem Draht bis zur Station.

von User (Gast)


Lesenswert?

Wie war das mit dem Putzroboter, der seine Runden gedreht hat, nachdem 
der Hund ins Zimmer geschissen hatte? :D

von Reinhard R. (reirawb)


Lesenswert?

Sind doch IMO bisher nur technische Spielzeuge ohne Nutzwert. Teppich 
saugen kann man damit jedenfalls nicht richtig:
http://www.wdr.de/tv/markt/sendungsbeitraege/2009/0831/01_saugroboter.jsp
http://medien.wdr.de/download/125174...t_20090831.mp4

Reinhard

von Karl H. (kbuchegg)


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.

von Mark B. (markbrandis)


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. ;-)

von Karl H. (kbuchegg)


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.

von Mattias (Gast)


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

von Mark B. (markbrandis)


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? ;)

von Franz (Gast)


Lesenswert?

>Da gibt es doch ein tolles Projekt (GPS im Wohnzimmer).

Northstar-System, wir beim Rovio verwendet:

http://www.wowwee.com/en/products/tech/telepresence/rovio/rovio

von Tom E. (tkon)


Lesenswert?

Ich möchte mal bezweifeln, dass sich die Entwickler Gedanken darüber 
gemacht haben, wie sie wirklich jeden Quadratzentimeter des Bodens 
säubern können.

von yalu (Gast)


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 :)

von Link zu (Gast)


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.

von Mark B. (markbrandis)


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?

von pq (Gast)


Lesenswert?


von Helmut L. (helmi1)


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.

von Andreas K. (derandi)


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.

von yalu (Gast)


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 :)

von aaa (Gast)


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.

von Ben _. (burning_silicon)


Lesenswert?

> Interessant das man sich ueber "Logarithmen" im Raum zurecht findet.
> Das muesste mein Taschenrechner doch auch koennen der kann auch
> Logarithmen.
der hat leider keinen eigenen antrieb. also mußt du ihn "anwerfen". ich 
denke dann findet er auch die wand!

von Wolf (Gast)


Lesenswert?

Toller Beitrag, Ben: Hab' Dich und deine 50 Prozent Halbbildung schon 
vermißt!

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.