Transcript
Sensorik
Sensing & Estimation • Robotersteuerung wäre vergleichsweise einfach, wenn es ein perfektes Modell der Umgebung und des Roboters gäbe und sich alles gemäß dieses Modells verhalten würde
• Keine realistische Annahme, daher benötigt man Sensing & Estimation um die Lücke zwischen Modell und Realität zu schließen
• Unterscheiden zwei Arten von Sensorik
• Proprioceptive Sensoren (Wahrnehmung der inneren Welt)
• Exteroceptive Sensoren (Wahrnehmung der äußeren Welt)
• Ziel: Physikalische Größen (Abstand, Geschwindigkeit) in Computerrepräsentation für Berechnungen zugänglich zu machen
Sensing & Estimation Prozess
Ext. Sensors Features
Matching
Updating
Int. Sensors Prediction
Model Integration
Model
Beispiel
Sensoren — Überblick • Man unterscheidet zwischen proprioceptiven und exteroceptiven Sensoren
• Proprioceptive Sensoren: messen innere Zustände des Roboters
• Proprioceptive Sensoren: messen externe Zustände
und aktiven und passiven Sensoren
• Aktive Sensoren: Gibt Energie ab um eine Messung vorzunehmen
• Passive Sensoren: Alles was nicht aktiv ist
• Aktive Sensoren sind robuster gegenüber Störungen in der Umgebung
Sensoren — Beispiele • Proprioceptiven vs. Exteroceptiv • Winkelstellungen eines Gelenks
• GPS
• Aktiv vs. passiv
• Stereovision nur über eingehende Lichtsignale (empfindlich gegenüber Lichverhältnissen)
• Stereovision mit einem Gitter, das in die Szene projiziert wird (kennt man von einigen Spiegellreflexkameras)
Rotationssensor • Rotationssensor ist einer der essentiellen Sensoren in der Robotik
• Wichtig z.B. für Winkelstellungen, prismatische Gelenke und Radgeschwindigkeiten
• Am häufigsten verwendete Sensor: Quadrature Encoder
• Transparente Scheibe, mit periodischen Mustern
• Photorezeptive Sensoren messen An/Aus Zustände
• Genauigkeit bis zu 1/1000 deg
Ultraschallsensoren (Sonar sensing) • Akustische Energie mit einer hohen Frequenz (nicht hörbar) zur Gewinnung von Informationen aus der Umgebung (nicht nur Distanz)
• Sehr beliebt in der Robotik, weil
• • • •
geringe Kosten
geringes Gewicht
geringer Stromverbrauch
einfache Steuerung
• In manchen Anwendungen ist es die einzige Möglichkeit, z.B. Unterwasserrobotik
• Anwendungen: Obstacle Avoidance, Sonar Mapping, Object Identification
Ultraschallsensoren — Funktionsprinzip • Der Sender (Transmitter) senden einen Ultraschallkegel
• Es wird die Zeit gemessen, bis der Empfänger (Receiver) das Signal empfängt
• Die Zeit wird in eine Distanz umgerechnet
c t0 r0 = 2 c - Schallgeschwindigkeit Standardtemperatur und Luftdruck
Ultraschallsensoren — Prinzipielle Schwierigkeiten • Der breite Kegel biete nur eine geringe räumliche Auflösung
• Die geringe Schallgeschwindigkeit führt zur einer geringen zeitlichen Auflösung
• Glatten Flächen wirken wie ein Spiegel
• Kann auch dazu führen, dass man “falsche” Objekte misst
• Inhomogenitäten, z.B. durch Thermik können zu Fluktuationen führen
Ultraschallkegel (Sonar Beam Pattern) • US Sensor wird als runder Kolben mit Radius a modelliert, der mit Frequenz f vibriert
• Die Wellenlänge ergibt sich dann durch
c = f
• Wenn a > λ, dann wird ein Kegel erzeugt (mit Nebenkegeln)
• Der Druck in Abhängigkeit von Winkel und Distanz läßt sich durch die Besselfunktion beschreiben 2
↵a f PE (r , ✓) = r
✓
2J1 (ka sin ✓) ka sin ✓
◆
k = 2π/λ
α — Konstante (Luftdruck, Quelle)
a — Druck steigt mit der Fläche des Kolbens
f — Höhere Frequenz erzeugt mehr Druck
r — Druck fällt mit der Distanz (Streuung)
Reflektion • Annahme: Objektgröße < λ, dann ergibt sich eine kreisförmiger Echo-Schallkegel
• Sensitivitätsmuster hat die gleiche Form wie zuvor (Objekt befindet sich in Distanz r und Winkel Θ)
4
PD (r , ✓) =
a f r
✓
2J1 (ka sin ✓) ka sin ✓
◆2
• Mit dieser Gleichung läßt sich das Verhalten echter Sensoren modellieren (und simulieren)
Ultraschallsensoren — Technologie • Elektrostatische und Piezoelektrische Wandler
• Elektrostatische sind sensibler und werden häufiger eingesetzt
• Bekanntesten: Polaroid (jetzt SensComp)
• Goldlegierte Plastikmembran
• Aluminum Rückplatte
• Spannung von 150V
• Signal emittieren: Spannung wird zwischen 0-300V variiert
• Eingehende Schallwellen verändern die Distanz und erzeugen Spannungsänderungen
Time of flight Messung (ROF Ranging) • Beispiel: Polaroid 6500
• INIT löst den Impuls aus, 16 Wellen mit einer Frequenz von 49,4kH
• BLNK führt ein Reset aus, damit das Echo empfangen werden kann
• ECHO liefert das eingehende Signal
• Echos werden mit einer lossy integration ermittelt
Reflexionsmodell (Reflecting Objects Model) • Ein Reflektionsmodell ist wichtig um die eingehende Information richtig zu interpretieren
• Führen virtuelle Sensoren ein, um zu verstehen wie unterschiedliche Objekte wahrgenommen werden
• 3 Objekte müssen unterschieden werden
• Wand
• Ecke
• Spitze
Reflexion an der geraden Wand • Ein glatte Oberfläche wirk wie ein Spiegel, d.h. die Schallwelle wird gut reflektiert
• Kleine Flächen erzeugen nur wenig Echo und durch die Elementarwellen auch viel Interferenzen
Reflexion an einer Ecke • Konkave Ecke mit 90◦, wie sie z.B. in Häusern zu finden sind
• Schallwellen werden an den gleichen Ort zurückgeworfen
• Für monostatische Sensoren wird die Reflexion als eine Hindernis in größerer Entfernung wahrgenommen
• Virtuelle Sensoren zeigen, dass man die Wand und Ecke durch ein Sensorarray unterscheiden kann
Reflexion an einer spitzen Ecke • Konvexe Ecke, wie sie in Gängen zu finden ist
• Generieren ein nur sehr schwaches Echo
• Sehr problematisch für die Navigation
Sensor Rings • Jeder Sensor kann nur Objekte innerhalb seines Schallkegels messen
• Daher verwendet man in der Robotik einen Ring an Sensoren
• 50ms Pause zwischen 2 Messungen, damit ein Sensor nicht das Echo des anderen empfängt
• Eine komplette Messung braucht daher 1-2 Sekunden
Warum dann noch Ultraschallsensoren?
Links fehlen
Distanzsensoren (range sensing) — Repräsentation • Ziel: 3D Repräsentation der umgebenden Objekte (X, Y, Z Koordinaten aus der Umgebung)
• Üblicherweise werden diese Daten in einem 2D Bild gespeichert, in dem d(i, j) die in dem Pixel (i, j) gemessene Distanz repräsentiert
• 4 unterschiedliche Mappings von (i, j, d(i,j) ) zu (X, Y, Z) in Abhängigkeit des Sensors • Orthografisch
• Zylindrisch
• Perspektivisch
• Sphärisch
Unterschiedlichen Repräsentationen Orthografisch
(X , Y , Z ) = (↵i, j, d(i, j))
Perspektivisch
d(i, j) (X , Y , Z ) = p (↵i, j, f ) ↵2 i 2 + 2 j 2 + f 2 Zylindrisch
(X , Y , Z ) = (d(i, j) sin(↵i), j, d(i, j) cos(↵i))
Sphärisch (X , Y , Z ) = d(i, j) · (cos( j) sin(↵i), sin( j), cos( j) cos(↵i))
Stereo-Vision • Zwei oder mehr Kameras
• Durch Triangulierung in jedem Pixel kann die Distanz berechnet werden
• In der Praxis ist es schwierig eine gute Schätzung der Distanz zu erhalten, weil:
• Finden von “gleichen” Pixel in Echtzeit in dynamischen Umgebungen sehr schwierig
• Algorithmen sind sehr rechenaufwendig
• Sehr empfindlich gegenüber Lichtverhältnissen https://www.youtube.com/watch?v=jg6Nz6BfoSQ
Laserbasierte Distanzsensoren • Mit Abstand die am häufigsten verwendete Art Distanzen zu messen
• Drei unterschiedliche Methoden
• Phasenmodulation
• Time of flight
• Triangulation
• Phasenmodulation:
• Kontinuierliches Lichtsignal wird Amplituden- oder Frequenzmodelliert
• Unterschied der Modulation des eingehenden und ausgehenden Signals ergibt die Distanz
• 2π Problem / 40-50m Reichweite / 5mm Genauigkeit
Time of flight Sensoren • Am häufigsten verwendet Technologie
• Light detection and ranging (LIDAR) / Laser radar (LADAR)
• Limitierungen:
• Minimale messbare Zeit
→ minimal messbare Distanz
• Zeitliche Auflösung
→ Genauigkeit
• Ambiguity interval: Reflexionen die von weit entfernten Objekten empfangen werden
• Prinzip: Ein rotierender Spiegel reflektiert einen Laser um einen Scan zu erhalten
Time of flight Sensoren • Reichweite 10-100m
• Genauigkeit 5mm
• 1k-25k Datenpunkte pro Sekunde
• Liefert auch Helligkeitsmessungen (Stärke des reflektierten Signals)
• Neue Sensoren messen die Zeit in mehreren Pixeln. Geringe Auflösung (64x64 bis 160x124) bei 30-50fps
wikipedia
LIDAR in Humanoiden
Triangulation • Punkte oder Muster (Linien, Gitter, …) werden von einem Laser in die Umgebung projektiert oder bewegt
• Ein Sensor misst die relative Position des Muster (ergibt die Distanz)
• Infrarotsensor ähnlich
• Reflektiertes Licht wird von mehreren Rezeptoren empfangen. Sharp
Odometrie (odometry) Ziel:
Mathematisches Modell, welches aus den Motordaten die aktuelle Bewegung berechnet
• Die Integration über die Zeit liefert die aktuelle Position und Orientierung
• Dieses Verfahren nennt man !(R + d) = vl dead reckoning oder deductive !(R d) = v r reckoning
vl )w = • Beispiel: Differential-drive mobile robot
Aus dem griechischen, hodos = Reise, metron = Maß
vr
2d vr + vl R=d vl vr ) V = !R
Integration liefert die Pose Z x(t) = V (t) cos ✓(t)dt Z y (t) = V (t) sin ✓(t)dt Z ✓(t) = !(t)dt
Probleme mit Odometrie • Häufigstes Problem: Schlupf (slip)
• Ungenaue Schätzung der Robotergeometrie (summiert sich auf)
• Verformungen der Reifen (und Bodens)
• Kontakt zwischen Reifen und Boden idealisiert
https://rvlab.icg.tugraz.at/project_page/project_tof_slam/project_tof_slam.htm
Gyroskop (gyrosscope) Ziel: Messung der Orientierungsänderung
Prinzip: Erhaltung des Drehimpulses
• Schwungrad wird auf frei bewegliche Achsen montiert
• Durch die Erhaltung des Drehimpulses bleibt die Rotationsachse des Schwungrades unverändert gegenüber Rotationen der Aufhängung
https://www.youtube.com/watch?v=fVqp_IJj138
MEMS (microelectromechanical systems) • Wird z.B. in Handies eingesetzt
• Ausnutzung der Corioliskraft
• Durch die Messung der Ablenkung eines vibrierenden Elements, kann die Änderung in der Orientierung bestimmt werden a = 2v ⇥ ⌦
v – Geschwindigkeit des Elements ⌦ – Rotationsgeschwindigkeit der Aufh¨angung
Draper Laboratory
Optische Systeme • Messung der Zeit, die zwei Lichtsignale für die gleiche Strecke benötigen
• Angenommen zwei Lichtimpulse reisen entlang eines Kreises mit Umfang D = 2πR, dann brauchen sie dafür t = D/c Zeit
D1 = 2⇡R + !Rt1 D2 = 2⇡R + !Rt2
• Wenn der Kreis rotiert, dann:
D1 = ct1
D2 = ct2
D1 = 2⇡R + !Rt1
t1 = 2⇡R/(c
D2 = 2⇡R + !Rt2
t2 = 2⇡R/(c + !R) ✓ 1 t = 2⇡R c !R
D1 = ct1
D2 = ct2
t1 = 2⇡R/(c
!R)
!R) 1 c + !R
◆
Gyroskop — Gütekriterien • Bias repeatability:
Drift unter Idealbedingungen
• Angle random walk: Rauschen
• Alle Gyros leiden unter Drift
• Wenn sie nicht durch andere Messungen korrigiert werden, ist der Fehler durch Drift größer als die notwendige Genauigkeit
Beschleunigungssensoren (accelerometers) Ziel: Messung aller externer Kräfte, die auf einen Körper wirken
Prinzip: Gedämpfte Feder-MassenSystem
Annahme: Ideales System, d.h. die inneren Kräfte gleichen den äußeren Kräfte
Fapplied = Finertial + Fdamping + Fspring = m¨ x + c x˙ + kx
Alternative: Piezoelektronisch (Verformung wird in Strom umgewandet)
IMU (inertial measurement unit) • Integration unterschiedlicher Sensoren um die relative Position, Geschwindigkeit und Beschleunigung zu messen
• Verwenden 3 orthogonale Gyroskope und 3 orthogonale Beschleunigungssensoren
Gyroskop
Integration
Beschleunigung
Lokales KS
Initiale Geschwindigkeit
Initiale Position
Gravitation abziehen
Integration
Integration
Beschleunigung
Geschwindigkeit
Position
• Beschleunigung wird 2x integriert, d.h. der Fehler geht quadratisch ein
• GPS Sensoren als externe Korrektur
GPS (global positioning system) • Die am weitesten verbreitete Methode zur Bestimmung der Position
• Standard GPS liefert eine Genauigkeit von 20m
• 24 Satelliten umkreisen die Erde, so dass von jedem Punkt der Erdoberfläche Signale von mindestens 4 Satelliten empfangen werden kann
• Jeder Satellit überträgt seine Position und einen Zeitstempel
• Signale von mindestens 3 Satelliten sind notwendig um die eigene Position zu bestimmen
GPS Triangulierung
GDOP (geometric deletion of precision)
PDOP =
q
2 x
+
2 y
+
2 z
Verlässlichkeit von GPS • Atmosphärische Störungen (Ionosphäre)
• Signalstärke (Qualität) ist abhängig von der Position des Satelliten am Himmel
• Signal werden durch Gebäude, Bäume, Glas etc, gestört
• Häufigkeit mit der Signal empfangen werden (Hardware)
• Wie viele Satelliten gleichzeitig empfangen werden können (Serielle Bearbeitung vs. parallele Bearbeitung)