- LiFePO4 Speicher Test         
Seite 1 von 2 12 LetzteLetzte
Ergebnis 1 bis 10 von 46

Thema: SLAM für autonomen Roboter nötig?

Hybrid-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #1
    Erfahrener Benutzer Fleißiges Mitglied Avatar von Defiant
    Registriert seit
    17.04.2005
    Ort
    Hamburg
    Beiträge
    183
    Witzig, ich finde es offensichtlich, dass man eine Karte benötigt. Als Mensch hast du ja auch eine Karte im Kopf wenn du von A nach B fährst. Und die Karte sagt dir, dass du von Hamburg nach Köln nicht über Berlin fährst. Genau das selbe für Roboter:
    Wenn es die Aufgabe ist einen effizienten Weg von der Küche zum Wohnzimmer zu finden brauche ich doch eine Karte. Die Alternative solange rumzufahren bis ich zufällig im Wohnzimmer gelandet bin halte ich nicht für praktikabel.

    Ja, draußen verwendest du GPS, aber das funktioniert ja nicht innerhalb deiner Wohnung, da 1. Man da kein GPS empfängt und 2. die Genauigkeit nicht hoch genug ist. Deswegen verwendet man drinnen gerne SLAM. Umgekehrt würde man im Auto eher nicht zu SLAM tendieren weil viel zu aufwendig.

    Zum Thema Staubsaugerroboter:
    1. Eine Odometrie ist immer mit Schlupf behaftet, aber du möchtest gleichzeitig feststellen, dass du jedes Feld einer Karte effizient angefahren hast.
    2. Staubsaugerroboter mit Laserscanner fahren ja den sog. boustrophedon path ab. Also wie man als Bauer sein Feld pflügen würde. Es wäre allerdings deutlich schwieriger diesen Weg effizient zu planen wenn man keine Ahnung hat, wie sein Feld aussieht.

    Kompletter Unsinn ist allerdings die Karte auf einen zentralen Server hochzuladen. Das ist vielleicht als Feature ganz nett, wenn man von der Arbeit mit dem Smartphone einen Bereich auf der Karte zeichnen kann wo der Roboter jetzt gefälligst zu saugen hat, das ging allerdings technisch auch ohne Herstellercloud...

    Ich hoffe die Stichpunkte haben weitergeholfen.
    Geändert von Defiant (24.06.2020 um 09:34 Uhr)

  2. #2
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    18.03.2018
    Beiträge
    2.650
    Zitat Zitat von Defiant Beitrag anzeigen
    Witzig, ich finde es offensichtlich, dass man eine Karte benötigt. Als Mensch hast du ja auch eine Karte im Kopf wenn du von A nach B fährst. Und die Karte sagt dir, dass du von Hamburg nach Köln nicht über Berlin fährst. Genau das selbe für Roboter
    Kann ich nach vollziehen und ich verstehe den Ansatz.
    Ich kann mir aber vorstellen, dass so ein Verfahren zumindest rechenintensiv ist.

    Ich habe es noch nicht ausprobiert, deswegen frage ich mal. Um mich an Strategien ran zu tasten, was dann auf mich zu kommt, wenn das Chassis zuverlässig fährt (sieht im Moment gut aus). Muss ja irgendwie eine gewisse Vorplanung machen.

    Ich hoffe die Stichpunkte haben weitergeholfen.
    Hilft im Moment alles weiter, weil ich mich praxisorientiert das erste Mal jetzt mit dem Thema auseinander setze. Theoretisch ist vieles manchmal recht einfach, praktisch tauchen dann aber u.U. Probleme auf, die nebenbei auch noch zu bewältigen sind.


    @oberallgeier
    Danke für das Beispiel ohne SLAM! Eben so was reicht doch bei den meisten Saugrobotern aus, würde ich meinen.

    MfG
    Geändert von Moppi (24.06.2020 um 10:13 Uhr)

  3. #3
    Erfahrener Benutzer Fleißiges Mitglied Avatar von Defiant
    Registriert seit
    17.04.2005
    Ort
    Hamburg
    Beiträge
    183
    Zitat Zitat von Moppi Beitrag anzeigen
    Ich kann mir aber vorstellen, dass so ein Verfahren zumindest rechenintensiv ist.
    Ja ist es, für eine kleine Wohnung reicht ein Raspberry Pi 3 (oder vergleichbar) gerade eben. Besser ist in jedem Fall schon ein Intel Core i5/7. Wobei man hier auch Einstellen kann. Eine Auflösung von 10cm/Feld benötigt natürlich weniger CPU-Zeit als 2.5cm/Feld.

  4. #4
    HaWe
    Gast
    ich habe das grundsätzlich auch schon auf einem Arduino Due hingekriegt, wobei die Kartenfelder etwa so groß waren wie der Robot selber (denn er sollte ja auch auf einem Pfad, der 1 Feld breit ist, tatsächlich auch fahren können). Vorteil beim Due: er kann kooperatives Multithreading (Due Scheduler), das ist essentiell. Die aktuelle Position (float) wurde dann auf eine 100x100 Integer Karte projiziert.
    Ein SAMD51 wäre noch leistungsfähiger, hier bin ich aber nicht sicher, ob MT Libs auf ihm laufen.
    (edit: doch klar: z.B. ein Teensy 3.5/3.6 mit TeensyThread!!)
    Einen ESP32 empfehle ich wegen der vielen Inkompatibilitäten und wackeligen Libs grundsätzlich nicht mehr.
    Mein RaspberryPi2B hat aber ebenfalls für SLAM reibungslos gearbeitet (mit pthread MT).
    Einziges Problem immer: die reproduzierbare Lokalisierung:
    Odometrie alleine ist ungeeignet, Gyro hat unkompensiert zuviel Drift, Kompass und GPS aber nur für outdoors wirklich gut geeignet, Sensorfusion mit Kalman- und/oder Montecarlo-Filtern (am besten 2 parallel, je nach Untergrund wegen Schlupf), Baken zum Anpeilen sind an sich state of the art, und hier am besten dm-Wellen wie bei Pozyx (das war mir aber dann doch zu teuer um es selber zu benutzen). Um die ganzen Rechnereien parallel in Zeitscheiben nicht-blockierend und priorisiert durchzuführen, dazu genau wird das MT benötigt.
    Geändert von HaWe (26.06.2020 um 17:11 Uhr)

  5. #5
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    07.04.2015
    Beiträge
    898
    Ich habe mal letztens versucht, herauszubekommen, was denn nun in so einem käuflichen Lidar-Roomba an Prozessor/Speicher verbaut ist. Nach einer Stunde suchen war ich allerdings genauso klug wie vorher.

    Kann hier vielleicht mal jemand sein Schätzchen aufschrauben?


    Nachtrag. Hab doch noch was gefunden.
    https://kaeni.de/hack-des-xiaomi-mi-...nte-einblicke/
    Die Daten sehen einem Raspberry schon ziemlich ähnlich.

    Wobei die Hardware wohl eher als abgestripptes Laufzeitsystem zu verstehen ist. Die Navigation wird wohl nicht auf dem Roboter selbst entwickelt worden sein.
    Geändert von Holomino (24.06.2020 um 13:03 Uhr)

  6. #6
    HaWe
    Gast
    Zitat Zitat von Holomino Beitrag anzeigen
    Nachtrag. Hab doch noch was gefunden.
    https://kaeni.de/hack-des-xiaomi-mi-...nte-einblicke/
    Die Daten sehen einem Raspberry schon ziemlich ähnlich.

    Wobei die Hardware wohl eher als abgestripptes Laufzeitsystem zu verstehen ist. Die Navigation wird wohl nicht auf dem Roboter selbst entwickelt worden sein.
    Interessant, und eine ganz schön mächtige Soft- und Hardware-Architektur!
    ARM Quadcore Prozessor mit 1,5 GHZ pro Kern, 512 MB RAM, 4 GB eMMC-Flash, ARM Cortex M3 STM32 MCU zur Steuerung der Sensoren). Der Roboter kommuniziert per Cloud-Protokoll ausschließlich über das Internet mit der Mi-Home Anwendung, nicht über das lokale Netzwerk.
    - - - Aktualisiert - - -

    Zitat Zitat von Holomino Beitrag anzeigen
    Doch, da gibt es durchaus Probleme.

    Versuch einmal mit Deinem o.g. 10cm-Raster eine 12cm breite Passage zu durchfahren. Auf das Raster quantisiert gibt es die nicht. Schon gar nicht in der Diagonale.
    doch, klar, ich bin immer über den Mittelpunkt eines jeden Rasterfeldes gefahren (berechnet und gemessen), mit IR Sensoren nach allen Seiten, um die Begrenzungen und zufällige, temporäre Hindernissen zu erfassen. Pathfinding über AStern und Bug2-Algorithmen. Außerdem war mein Robot knapp 40x40cm groß, und die Quadrate zB. 50x50. War aber bei mir kein Staubsauger-Robot.

    PS, und ich behaupte ja nicht, dass es nie Probleme gibt, aber ohne Karte klappt es Null.
    Geändert von HaWe (24.06.2020 um 14:32 Uhr) Grund: typo

  7. #7
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    07.04.2015
    Beiträge
    898
    Mal schnell gezeichnet:
    Klicke auf die Grafik für eine größere Ansicht

Name:	Raster.jpg
Hits:	10
Größe:	23,3 KB
ID:	35135
    Schwarz das Raster. Blau die tatsächliche Passage.
    Was genau hast Du da im Fall b) gemacht?

  8. #8
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    24.06.2004
    Ort
    Berlin
    Alter
    59
    Beiträge
    540
    meint ihr nicht ein microcontroller wie tennsy 4.1 kann die daten nicht verarbeiten vom slam?
    das leben ist hart, aber wir müssen da durch.

  9. #9
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    07.04.2015
    Beiträge
    898
    Zitat Zitat von morob Beitrag anzeigen
    meint ihr nicht ein microcontroller wie tennsy 4.1 kann die daten nicht verarbeiten vom slam?
    Doch sicher - irgendwie. Cruise Missiles flogen letztes Jahrtausend schon autark mit 'nem 300MHz-System.
    Allerdings frage ich mich, warum so eng auslegen, wenn ich fürs halbe Geld einen nominal doppelt so leistungsfähigen Rechner bekomme (z.B. BPI M2 Zero).

  10. #10
    HaWe
    Gast
    Zitat Zitat von morob Beitrag anzeigen
    meint ihr nicht ein microcontroller wie tennsy 4.1 kann die daten nicht verarbeiten vom slam?
    denke ich auch, "irgendwie", ich habe es ja (ansatzweise) auch schon mit einem Arduino Due geschafft.

    - - - Aktualisiert - - -

    Zitat Zitat von Holomino Beitrag anzeigen
    Das gängig in Staubsaugern verbaute RPLidar ist prinzipiell nichts anderes als ein drehbarer Sharp-IR-Sensor (Triangulation - gleiches Messprinzip).

    Bezüglich Stabilität: Ich habe mal einen Langzeittest in der Simulation ein paar Tage laufen lassen (Roboter mit Lidar fährt über Zielpunkte durch ein kleines Labyrinth). Das hat meine Befürchtungen bezüglich des "Zulaufens der Map" (Die Karte verschwimmt so weit oder verschiebt sich, dass die Zielpunkte nicht mehr erreicht werden können) zerstreut.
    Der Punkt ist:
    wenn man keine sehr exakte Positionsbestimmungs-Methode hat, dann kann man den Teil mit der Karte vergessen.
    Denn der Robot muss ja erst mit seiner genau bestimmbaren Position eine genaue Karte ermitteln, die hinterher, wenn er sich frei im Raum zum Saubermachen bewegt, auch noch als Referenz stimmen muss.
    Mit Odometrie, Gyro, Kompass und GPS wird das nichts indoors, da laufen spätestens nach 15 Minuten alle Werte komplett aus dem Ruder.
    Daher braucht man exakte externe Navigations-Referenzen (Baken), die per Peilung eine zuverlässige und reproduzierbare Positionsberechnung erlauben.
    Ob man dann 1 IR-Sensor drehbar anbringt oder ein halbes Dutzend fest montiert rundrum als Hindernissensoren, ist fast schon reine Geschmackssache.
    Allerdings plus Bumper-Stoßstange zusätzlich.

Seite 1 von 2 12 LetzteLetzte

Ähnliche Themen

  1. Roboter mit Neato Lidar und SLAM
    Von teamohnename im Forum Vorstellungen+Bilder von fertigen Projekten/Bots
    Antworten: 4
    Letzter Beitrag: 20.04.2015, 13:41
  2. Visuelle Odometrie/SLAM für Outdoor-Roboter
    Von Seppl Meyer im Forum Sensoren / Sensorik
    Antworten: 2
    Letzter Beitrag: 04.07.2013, 15:36
  3. Softwarekonzept für autonomen Roboter
    Von pemiso im Forum Software, Algorithmen und KI
    Antworten: 10
    Letzter Beitrag: 11.02.2013, 17:58
  4. Autonomer Roboter, SLAM, dynamische Routenplanung -> Mindestanfordung an die Hardware
    Von AlexJ im Forum Allgemeines zum Thema Roboter / Modellbau
    Antworten: 1
    Letzter Beitrag: 13.05.2012, 10:12
  5. ASM Programm für autonomen Roboter
    Von mav0r im Forum Allgemeines zum Thema Roboter / Modellbau
    Antworten: 1
    Letzter Beitrag: 09.02.2006, 01:05

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •  

12V Akku bauen