Virtual-Walls und Lighthouses im Detail

  • Dieser Beitrag dient dazu zu Erklären, wie die Virtual-Walls und Virtual-Lighthouses funktionieren.
    Der Großteil der Informationen stammt aus dem englischen iRobot">">"> Forum und wurde von mir übersetzt und ergänzt. Die Grafiken wurden neu erstellt um keine Rechte dritter zu verletzen.

    Dieser Post besteht aus 6 Hauptkomponenten:

    1. Pairing (verbinden) des Roboters mit den Lighthouses
    2. Unterschiede zwischen dem Lighthouse-Modus und dem Virtuelle-Wand Modus
    3. Lighthouse passage
    4. Dockingverhalten wenn Lighthouses benutzt werden
    5. Unterschiede zwischen Virtuellen Wänden und Virtuellen Lighthouses
    6. Platzierungs- und Anwendungstipps für Lighthouses und Virtuelle Wände

    Pairing des Roboters mit den Lighthouses
    Sobald man die Batterien in einem Lighthouse wechselt, verliert das Lighthouse den Speicher und die Bindung (Pairing) an den Roboter. Ebenso verliert der Roomba die Bindung an das Lighthouse wenn man diesen resettet oder den Akku entfernt.

    Wenn eine Lighthouse nicht an einen Roomba gebunden ist und das Signal eines Roombas empfängt, dann wacht das Lighthouse auf und wartet darauf vom Roomba "entdeckt" zu werden.

    Sobald der Roboter eine "Mission" startet, dann sendet dieser eine Nachricht an alle verfügbaren Lighthouses, egal ob diese mit dem Roboter verbunden sind oder nicht. Der Roboter wartet dann auf eine Rückmeldung der Lighthouses und weiss so, wieviele lighthouses er unterwegs treffen sollte. Nach diesen Lighthouses hält der Roomba während der gesamten Reinigung ausschau.

    Wenn der Roboter ein Lighthouse über Infrarot entdeckt, dann pingt er das Lighthouse über Funk an wartet auf eine Antwort über Infrarot. Solltet ihr mal einen Roomba dabei beobachten, wie er vor einem Lighthouse stehen bleibt, dann macht er wahrscheinlich genau das.

    Sobald der Roomba ein Funk-Signal mit einer bestimmten Lighthouse in Verbindung bringt, merkt dieser sich das Lighthouse und nutzt die Information um sich eine Art Navigationskarte zu erstellen. Dadurch weis der Roomba, in welchem Raum er sich befindet, und wieviele Räume er noch zu durchfahren hat um wieder zum Dock zu kommen.

    Der Roomba wiederholt diese Prozedur für jede Lighthouse die er unterwegs trifft, selbst wenn diese sich im Virtuellen Wand-Modus befindet. Wenn Roomba und Lighthouse auf diese Art zueinander gefunden haben, dann funktioniert die Lighthouse nur noch mit diesem Roomba, bis die Akkus aus dem Lighthouse entfernt werden.

    Diese Erkennungsprozedur wird bei jedem Reinigungsvorgang von vorne gestartet. Solltet ihr also die Position von Lighthouses wechseln wollen, dann macht dies bitte wenn der Roomba ausgeschaltet ist, dann adaptiert sich der Roomba entsprechend und kann mit der neuen Situation umgehen. Wenn ihr die Position der Lighthouses während eines Reinigungsvorganges wechselt, kann es vorkommen dass der Roomba nicht mehr "nach Hause" zum Dock findet.

    Das Bild unten zeigt was während des Pairings passiert. Die lilanen Ringe repräsentieren Funk-Kommunikation zwischen dem Roomba und der Lighthouse. Diese roten Bereiche sind von der Lighthouse ausgehenden Infrarot-Strahlen, welche die für den Roomba gesperrten Bereiche kennzeichnen.




    Unterschiede zwischen dem Lighthouse-Modus und dem Virtuelle-Wand Modus
    Im Lighthouse-Modus arbeitet das Lighthouse wie eine Virtuelle Tür. Sie öffnet sich erst wenn der Roboter sie darum "bittet". Die meiste Zeit hat das Lighthouse den Halo (schein um das Lighthouse) und die "Wand" an, dadurch wird verhindert, dass der Roomba das Lighthouse passiert.

    Sobald der Roomba der Meinung ist, dass der aktuelle Raum fertig ist, dann bittet er die Lighthouse den Infrarotstrahl auszuschalten (die Tür zu öffnen) und fährt in den nächsten Raum. Die Passage in den nächsten Raum wird weiter unten im Detail erklärt.

    Im Virtuelle-Wand Modus wird das Lighthouse ebenfalls automatisch angeschaltet, der Roomba wird sie aber niemals passieren können.

    Lighthouse passage
    Wenn der Roboter entscheidet dass es Zeit ist, den nächsten Raum zu reinigen, führt er einen Vorgang aus welcher im englischen "traversing" (passieren) genannt wird. Das heist nichts anderes, als dass er sich an einem Lighthouse orientiert um von einem Raum zum anderen zu gelangen.

    Die Passage eines Lighthouses besteht aus 5 Schritten:

    1. Der Roboter entscheidet dass er fertig ist den aktuellen Raum zu reinigen
    2. Der Roboter bittet die Lighthouse mittels Funk einen Leitstrahl (grün und rot im unteren Bild) zu aktivieren.
    3. Der Roboter reinigt den aktuellen Raum weiter bis er den Leitstrahl der Lighthouse entdeckt (grün) und sich in unmittelbarer nähe der Lighthouse befindet.
    4. Der Roboter folgt dem Halo des Lighthouses, bis er den Leitstrahl auf der anderen Seite des Lighthouses (rot) findet.
    5. Der Roboter sagt dem Lighthouse, dass es den Leitstrahl zum Stromsparen wieder ausschalten kann.

    Dieser Prozess wird für jedes Lighthouse dass der Roomba während des Reinigungsvorganges findet, wiederholt. Sobald der Roomba mit der Reinigung fertig ist, fährt er die zuvor passierten Lighthouses in umgekehrter Reihenfolge wieder ab.





    Dockingverhalten wenn Lighthouses benutzt werden
    Wenn Lighthouses benutzt werden, ignoriert der Roboter alle Signaler der Homebase, außer er glaubt, dass er sich in dem Raum befindet wo er die Homebase erwartet. Der Roboter entscheidet in welchem Raum er sich befindet basieren darauf, an wievielen Lighthouses er vorbei gefahren ist.

    Beispiel:

    Raum 1 enthält das Dock (Homebase)
    Raum 2 ist zwischen Lighthouse 1 und Lighthouse 2
    Raum 3 ist hinter Lighthouse 2

    Roomba passiert Lighthouse 1 und ist dann in Raum 2. Wenn man jetzt den Roomba manuell in Raum 1 zurücksetzt um diesen zu Reinigen, wird er das Dock nicht finden, da er glaubt er sei noch in Raum 2 und er erst an Lighthouse 1 vorbei muss um zur Homebase zurück zu finden.

    Das selbe gilt auch, wenn der Roboter in Raum 3 ist. Er glaubt dann dass er noch an zwei Lighthouses vorbei muss um erfolgreich docken zu können.

    Wenn man den Roboter aus einem Raum herausnimmt, muss man ihn auch wieder dorthin zurück bringen wenn man möchte das er das Dock von alleine anfährt. Wenn man dies nicht möchte, muss man ihn manuell auf der Homebase platzieren.

    Generell kann man sagen, dass der Roomba durch seine plötzlichen teleportationsfähigkeiten ziemlich verwirrt wird.

    Es ist nicht wirklich intuitiv für die meisten Leute zu verstehen, warum der Roomba das Dock ignoriert obwohl er direkt davor sitzt. Dieses verhalten wurde aber absichtlich eingebaut um mögliche auftretende Probleme zu verhindern.

    Angenommen der Roomba sieht das Dock, kann aber nicht hin, weil eine Virtuall-Wall, oder ein anderes Hinderniss (evt. Glastüre) seinen Weg behindert. Würde der Roomba jetzt den Leitstrahlen des Docks folgen, würde er ständig versuchen zu docken und dabei immer wieder in die Hindernisse geraten. Dabei würde er sich wahrscheinlich festfahren und nicht seine maximale Reinigungsleistung entfalten. Schlimmstenfalls würde der Roomba mit leerem Akku einfach stehen bleiben.

    Ignoriert der Roomba aber die Homebase, solange, bis er weiss, dass er im richtigen Raum ist, dann kann er die Lighthouses nutzen um sich ohne große Problem dem richtigen Raum zu nähern und erfolgreich zu docken.

    Dies ist ein verhalten was dazu dienen soll den Roomba höchst adaptiv für einen sich ständig ändernden Einsatzort zu machen.


    Unterschiede Zwischen Virtuellen Lighthouses und Virtuellen Wänden
    Die Virtuellen Wände aus der 500er Serie sind von der verhaltensweise genauso, wie die der alten Roombas und der Scoobas. Man muss sie manuell anschalten und sie schalten sich automatisch wieder ab. Technisch gesehen unterscheiden sie sich stark von den alten Modellen darin, wie sie per Infrarot mit dem Roboter kommunizieren.

    Die Virtual-Lighthouses sind da ganz anders. Die Lighthouses kommunizieren mit dem Roomba über Infrarot und Funk. Sie schalten sich automatisch ein wenn der Roomba seine Mission beginnt und schalten sich mit dem Roomba zusammen wieder aus. Lighthouses kann man in zwei Modi benutzen. Als Virtual Wall und als Lighthouse. Im Wall-Modus bildet die Lighthouse eine für den Roomba unüberwindliche Barriere. Im Lighthouse-Modus arbeitet sie wie eine Türe, die sich öffnet wenn der Roboter dies anfordert.


    Platzierungs und Anwendungstipps für Lighthouses und Virtuelle Wände
    Virtual Wall Modus:
    Platziere die Lighthouse vor den Bereichen die der Roomba nicht durchqueren soll.

    Stelle sie so in einen Durchgang, dass der unsichtbare Infrarotstrahl (in der mitte des Lighthouses) den Bereich grade durchquert.




    Lighthouse Modus:
    Stelle die Lighthouse so an eine Wand oder einen Türrahmen, dass der Infrarotstrahl die Passage grade begrenzt.

    Stelle sicher, dass sich nichts innerhalb von einem Meter vor dem Lighthouse befindet. Stelle auch sicher, dass nichts den Leitstrahl der Lighthouses (rot und grün) blokiert.

    Wenn möglich, platziere die Lighthouse so, dass die Leitstrahlen in den offnen Raum strahlen. Dadurch fällt es dem Roomba leichter die Lighthouse auch aus weiterer Entfernung zu orten.

    Files

    • 104.gif

      (38.29 kB, downloaded 445 times, last: )
    • 103.gif

      (16.06 kB, downloaded 414 times, last: )
    • 102.png

      (55.37 kB, downloaded 413 times, last: )
    • 101.png

      (52.25 kB, downloaded 416 times, last: )

    Roomba, Vorwerk, LG, Samsung... egal, Hauptsache sauber.

    Edited 4 times, last by ChiefBroady ().