Open Source Robotics

Eine kuratierte Sammlung hochwertiger Open-Source-Robotikprojekte, Werkzeuge und Software für die Robotik-Community.

Elastic band

  • Auch genannt: elastic bands, elastic band method
  • Kategorie: Planning & manipulation › Motion planning
  • Schlagwörter: motion-planning, local-planning, obstacle-avoidance, path-deformation, mobile-robots

Ein lokales Verfahren zur Pfadverformung, das einen geplanten Pfad als dehnbares Band behandelt, das von inneren Kräften straff gezogen und von äußeren Kräften von Hindernissen weggedrückt wird, sodass es sich in Echtzeit anpasst.

Definition

Ein Elastic Band ist ein Verfahren, um einen Pfad in Echtzeit zu verformen, 1993 von Quinlan und Khatib eingeführt, um globale Pfadplanung mit reaktiver Regelung zu verbinden. Ein kollisionsfreier Pfad aus einem globalen Planer wird als Kette von Punkten dargestellt, oder von Blasen, Freiraumbereichen um jeden Punkt, deren Größe sich nach dem Abstand zum nächsten Hindernis richtet. Das Band wird dann als physikalisches Objekt behandelt. Innere Kontraktionskräfte, wie Federn zwischen benachbarten Punkten, ziehen es straff, sodass es kürzer und glatter wird. Äußere Kräfte, abgeleitet aus einem abstoßenden Potential um Hindernisse, drücken es von ihnen weg. In jedem Regelzyklus relaxiert das Band in Richtung eines Gleichgewichts dieser Kräfte, sodass sich der Pfad, wenn sich ein Hindernis bewegt oder ein neues auftaucht, um es herum biegt und dabei Start und Ziel beibehält.

Die Blasen halten das Band zusammenhängend: Solange sich benachbarte Blasen überlappen, sind die geraden Abschnitte zwischen ihnen kollisionsfrei, und Punkte werden hinzugefügt oder entfernt, wenn sich das Band dehnt oder schrumpft. Da der Pfad nur verformt und nicht neu berechnet wird, ist das Verfahren schnell genug, um innerhalb eines Regelkreises zu laufen. Spätere Arbeiten erweiterten die Idee zu Elastic Strips für mobile Manipulatoren, die eine Folge von Konfigurationen des gesamten Roboters im Arbeitsraum verformen, und zum Timed Elastic Band, das Zeitintervalle zwischen Posen hinzufügt und eine dünn besetzte Optimierung mit Geschwindigkeits-, Beschleunigungs- und kinematischen Nebenbedingungen löst. Das Timed Elastic Band ist als lokaler Planer in ROS verfügbar.

Das Elastic Band unterscheidet sich von einem Potentialfeld-Verfahren (potential field), das den Roboter direkt entlang des Gradienten eines anziehenden und abstoßenden Potentials bewegt: Hier wirken die Kräfte auf einen ganzen Pfad, der Start und Ziel bereits verbindet, sodass der Roboter nicht in den lokalen Minima gefangen wird, die einen reinen Potentialfeldregler zum Stillstand bringen können. Es bleibt ein lokales Verfahren. Ein Band kann sich nur stetig verformen, daher kann es nicht zu einem anderen Weg um ein Hindernis springen, etwa links statt rechts vorbei; wenn ein Hindernis das Band durchschneidet oder sich der Korridor schließt, muss ein globaler Planer einen neuen Pfad liefern. Manche Varianten halten aus diesem Grund mehrere Kandidatenbänder in verschiedenen Homotopieklassen vor.

Warum es wichtig ist

Roboter in sich verändernden Umgebungen brauchen Pfade, die innerhalb eines Regelzyklus auf bewegte Hindernisse reagieren, ohne den globalen Plan zu verwerfen. Elastic Bands und ihre Nachfolger sind ein Standardweg, diese reaktive Schicht für mobile Roboter und Manipulatoren bereitzustellen, und das kraftbasierte Pfadmodell wird auch genutzt, um für andere Zwecke glatte, hindernisbewusste Trajektorien zu erzeugen.

Wichtige Anwendungen

  • Lokale Planung und Hindernisvermeidung für mobile Roboter
  • Echtzeit-Pfadverformung um sich bewegende Menschen und Objekte
  • Reaktive Bewegung mobiler Manipulatoren mit Elastic Strips
  • Glätten und Verkürzen von Pfaden aus globalen Planern
  • Erzeugen hindernisbewusster Trajektorien für Trainingsdaten und Demonstrationen

In der Praxis

Ein mobiler Lagerroboter erhält von einem gitterbasierten Planer einen globalen Pfad entlang eines Gangs. Sein lokaler Planer stellt die nächsten paar Meter des Pfades als Timed Elastic Band dar. Wenn eine Person in den Gang tritt, registriert die LiDAR-Kostenkarte ein neues Hindernis, die Punkte des Bandes werden davon weggedrückt, und die Optimierung biegt den Pfad um die Person herum, unter Einhaltung der Geschwindigkeits- und Beschleunigungsgrenzen des Roboters und seines minimalen Wenderadius. Der Roboter folgt dem verformten Pfad, und sobald die Person vorbei ist, ziehen die Kontraktionsterme das Band zurück zur ursprünglichen Linie. Ist der Gang vollständig blockiert, lässt sich das Band nicht zu einem fahrbaren Pfad verformen, und der Navigation Stack fordert vom globalen Planer eine neue Route an.

Häufige Missverständnisse

  • Ein Elastic Band ist ein globaler Planer — es verformt einen bestehenden Pfad und braucht einen globalen Planer, der die Anfangsroute liefert und neu plant, wenn das Band reißt
  • Elastic Bands sind nur Potentialfelder — Potentialfelder bewegen den Roboter direkt, während ein Elastic Band Kräfte auf einen ganzen Pfad ausübt, der das Ziel bereits erreicht, was die lokalen Minima vermeidet, in denen ein reiner Potentialfeldregler gefangen wird
  • Ein Elastic Band findet den kürzesten Pfad — es konvergiert zu einem lokal kurzen, glatten Pfad, der Hindernisse auf derselben Seite passiert wie der Anfangspfad, was nicht der global kürzeste sein muss

Wer das wissen sollte

  • Ingenieure für die Navigation mobiler Roboter
  • Forschende in der Bewegungsplanung, die an reaktiver Planung arbeiten
  • Ingenieure, die lokale Planer der ROS-Navigation konfigurieren
  • Robotikstudierende, die Planung und Regelung lernen

Verwandte Technologien

  • Timed Elastic Band
  • Elastic Strips
  • ROS Navigation Stack
  • Künstliche Potentialfelder (Artificial Potential Fields)
  • Dynamic Window Approach

Verwandte Begriffe

  • Potential Field
  • Obstacle Avoidance
  • Trajectory Planning
  • Motion Planning
  • Probabilistic Roadmap

Verwandte Projekte

  • OMPL: Sampling-based motion planning library powering MoveIt and countless robotics applications
  • MoveIt 2: Motion planning framework for ROS 2 robot arms, with kinematics and collision checking
  • PyRoki: Modular Python toolkit for kinematic optimization across CPU, GPU, and TPU via JAX
  • mink: Python inverse kinematics library built on MuJoCo supporting 20+ robot platforms
  • Ruckig: Real-time jerk-constrained time-optimal trajectory generation for robots and machines
  • NeuPAN: Real-time end-to-end planner that maps raw lidar points directly to robot actions

Diese Website benötigt JavaScript. Bitte aktivieren Sie JavaScript, um unsere Open-Source-Robotikprojekte zu erkunden.