Indoor-Positionierung bleibt eine der wertvollsten Anwendungen für Bluetooth-Beacons. GPS-Signale schwächen sich unter Betondecken ab, sodass beacon-basierte Systeme die primäre Indoor-Alternative bleiben. Dieser Artikel vergleicht die beiden dominierenden Positionierungsalgorithmen — RSSI-Trilateration und Fingerprinting — mit realen Genauigkeitsdaten und Deployment-Kompromissen.
RSSI und Path Loss
Alle Beacon-Positionierungen basieren auf Received Signal Strength Indicator (RSSI), gemessen in dBm. Die fundamentale Beziehung zwischen RSSI und Entfernung folgt einem log-normal Path-Loss-Modell:
RSSI(d) = A - 10 * n * log10(d)
Wobei:
- A: RSSI bei 1 Meter Referenzentfernung (typisch -60 bis -70 dBm für CR2032-betriebene Beacons)
- n: Path-Loss-Exponent (2.0 im Freiraum, 2.7–3.5 in Büros, 4.0+ in industriellen Räumen)
- d: Entfernung in Metern
Nach Entfernung aufgelöst:
d = 10 ^ ((A - RSSI) / (10 * n))
Die Herausforderung: RSSI schwankt ±5–8 dBm in Indoor-Umgebungen durch Mehrwegeschwund, Körperabsorption und Antennenausrichtung. Ein 6 dBm-Fehler bei 5 Metern übersetzt sich in einen 40–60%igen Entfernungsfehler, was rohe Single-Beacon-Entfernungsmessung unzuverlässig macht.
Ansatz 1: Trilateration
Trilateration schätzt die Position durch Schnitt von Entfernungskreisen von mindestens drei Beacons. Jeder Beacon liefert eine Entfernungsschätzung über die obige Path-Loss-Gleichung.
Algorithmus
- RSSI von jedem sichtbaren Beacon sammeln (5–10 Samples mitteln zur Rauschreduktion)
- RSSI in Entfernung umwandeln mit dem kalibrierten Path-Loss-Modell
- Least-Squares-Schnitt der Entfernungskreise lösen
Für Beacons an Positionen (xi, yi) mit geschätzten Entfernungen di minimiert die Zielposition (x, y):
F(x,y) = Σ [(x - xi)² + (y - yi)² - di²]²
Dieses nichtlineare Least-Squares-Problem wird typischerweise durch Gauss-Newton-Iteration gelöst. Die Anfangsschätzung kann den Schwerpunkt der Beacon-Positionen verwenden.
Genauigkeits-Benchmarks
Gemessen in einem 12m × 8m Büro mit 6 Decken-Beacons, CR2032-betrieben, 0 dBm alle 100 ms:
| Szenario | Sichtbare Beacons | Median-Fehler | 90. Perzentil |
|---|---|---|---|
| Offenes Büro | 4–5 | 1.8 m | 3.5 m |
| Cubicle-Bereich | 3–4 | 2.6 m | 5.1 m |
| Flur | 2–3 | 3.2 m | 6.8 m |
| Mit Körperschatten | 3–4 | 4.1 m | 8.3 m |
Die Genauigkeit verschlechtert sich signifikant, wenn weniger als 3 Beacons sichtbar sind oder der Körper des Nutzers die Sichtlinie blockiert.
Kalibrierungsanforderungen
Trilateration erfordert pro-Beacon-Kalibrierung der Path-Loss-Parameter (A, n). Praktisches Kalibrierungsverfahren:
- Referenzempfänger bei 1 m von jedem Beacon platzieren, 100 RSSI-Samples aufzeichnen, Median berechnen → A-Wert
- RSSI bei 2 m, 5 m, 10 m entlang eines freien Pfads messen
- n durch lineare Regression über log10(d) vs. RSSI anpassen
- Quartalsweise rekalibrieren — Batteriespannungsabfall verschiebt TX-Leistung um 1–3 dBm über den Lebenszyklus
Ansatz 2: Fingerprinting
Fingerprinting umgeht den Entfernungsschätzungsschritt vollständig. Stattdessen erstellt es eine Funkkarte des Raums in einer Offline-Survey-Phase und gleicht dann Live-RSSI-Beobachtungen gegen diese Karte ab.
Offline-Phase (Survey)
- Grundriss in Raster unterteilen (typischer Abstand: 1–2 Meter)
- An jedem Rasterpunkt RSSI von allen sichtbaren Beacons für 10–30 Sekunden sammeln
- RSSI-Vektor und Beacon-ID-Liste als Fingerprint speichern
Ein 1000 m²-Stockwerk mit 1 m Rasterabstand ergibt ~1000 Fingerprints. Jeder Fingerprint enthält 5–15 Beacon-RSSI-Werte plus Metadaten (Zeitstempel, Ausrichtung).
Online-Phase (Positionierung)
Der häufigste Matching-Algorithmus ist Weighted K-Nearest Neighbors (WKNN):
- Live-RSSI-Vektor von sichtbaren Beacons sammeln (2–5 Sekunden Fenster)
- Ähnlichkeit (Euklidische Distanz oder Tanimoto-Koeffizient) zu allen Fingerprints berechnen
- Die K nächsten Fingerprints auswählen (K = 3–5 typisch)
- Jeden mit inverser Distanz gewichten, gewichteten Schwerpunkt ihrer Positionen berechnen
Genauigkeits-Benchmarks
Gleicher 12m × 8m Büroraum, 6 Beacons, 1 m Rasterabstand, WKNN mit K=4:
| Szenario | Median-Fehler | 90. Perzentil | Survey-Zeit |
|---|---|---|---|
| Offenes Büro | 1.1 m | 2.3 m | 2.5 Stunden |
| Cubicle-Bereich | 1.5 m | 3.0 m | 3.0 Stunden |
| Flur | 1.3 m | 2.8 m | 1.5 Stunden |
| Mit Körperschatten | 2.0 m | 4.2 m | — |
Fingerprinting übertrifft Trilateration konsistent um 30–50% beim Median-Fehler, besonders in unübersichtlichen Umgebungen mit dominierendem Mehrwegeschwund. Die Funkkarte erfasst implizit Mehrwegemuster, die Path-Loss-Modelle nicht abbilden können.
Direkter Vergleich
| Faktor | Trilateration | Fingerprinting |
|---|---|---|
| Genauigkeit (Median) | 1.8–4.1 m | 1.1–2.0 m |
| Setup-Zeit | ~30 Min pro Beacon | 2–4 Std pro Etage |
| Beacon-Umplatzierung | A,n rekalibrieren | Vollständige Re-Survey |
| Umgebungsänderungen | Graduelle Verschlechterung | Re-Survey erforderlich |
| Rechenaufwand | Niedrig (Matrix-Lösung) | Mittel (KNN-Suche) |
| Skalierbarkeit | Ausgezeichnet | DB wächst linear |
| Min Beacons | 3 | 4+ empfohlen |
Hybrider Ansatz
Produktionssysteme kombinieren oft beide Techniken. Häufige hybride Pipeline:
- Trilateration für grobe Positionsschätzung verwenden (3–5 m Genauigkeit)
- Fingerprint-Matching auf 5 m Radius um die Trilaterationsschätzung beschränken
- WKNN innerhalb dieses reduzierten Suchraums anwenden
Dies reduziert die Fingerprint-DB-Suche von ~1000 auf ~50 Einträge, senkt die Rechenzeit um 80% und behält Fingerprinting-Genauigkeit bei.
Beacon-Dichte und Platzierung
Die Positionierungsgenauigkeit hängt stark von der Beacon-Geometrie ab. Wichtige Richtlinien:
- Dichte: 1 Beacon pro 25–50 m² für 1–2 m Genauigkeit; 1 pro 100 m² für 3–5 m
- Montagehöhe: 2.5–3.0 m Deckenmontage bietet beste Abdeckungseinheitlichkeit
- Geometrie: Lineare Anordnungen vermeiden. Trianguläre/hexagonale Tessellation minimiert geometrische Präzisionsverdünnung (GDOP)
- TX-Leistung: +4 bis 0 dBm für Indoor-Positionierung. Höhere Leistung erhöht Interferenz; niedrigere reduziert Reichweite unter nützliche Schwellen
- Advertising-Intervall: 100 ms für Real-Time-Tracking, 300–500 ms für periodisches Monitoring. Intervalle <100 ms entleeren CR2032 in 2–3 Monaten
Filterung und Glättung
Roh-Positionsschätzungen schwanken erheblich. Ein Kalman-Filter oder Partikelfilter glättet Trajektorien:
- Kalman-Filter: Modelliert Nutzerbewegung als konstante Geschwindigkeit. Reduziert 90. Perzentil-Fehler um 20–30% mit minimalem Rechenaufwand. Zustandsvektor: [x, y, vx, vy].
- Partikelfilter: Behandelt nichtlineare Bewegung und multimodale Positionsverteilungen besser. 500–1000 Partikel bieten smoothes Tracking bei 5 Hz.
- Kartenbeschränkungen: Gefilterte Positionen auf begehbare Bereiche (Wände, Hindernisse ausgeschlossen) klemmen. Eliminiert physikalisch unmögliche Sprünge. Reduziert Median-Fehler zusätzlich um 10–15%.
Häufige Deployments-Fehler
- Zu wenige Beacons: Nur 2–3 Beacons pro Zone bereitstellen. Trilateration braucht 3+ sichtbare; Fingerprinting profitiert von 4+.
- Ausrichtung ignorieren: Der menschliche Körper dämpft 2.4 GHz-Signale um 10–20 dB. Fingerprints in nur einer Ausrichtung erfassen erzeugt systematischen Bias bei anderen Blickrichtungen.
- Veraltete Fingerprints: Möbelumstellung, neue Trennwände oder saisonale Veränderungen entwerten die Funkkarte. Quartalsweise Re-Surveys einplanen.
- Unkalibrierte TX-Leistung: Beacon-TX-Leistung variiert ±3 dBm zwischen Einheiten aufgrund Bauteiltoleranz. Pro-Beacon messen und kompensieren.
- Überfilterung: Aggressive Glättung macht das System träge. Faustregel: Filterzeitkonstante sollte 1 Sekunde für Gehgeschwindigkeits-Anwendungen nicht überschreiten.
Fazit
Für die meisten Indoor-Bluetooth-Beacon-Positionierungs-Deployments liefert Fingerprinting mit WKNN-Matching 30–50% bessere Genauigkeit als Trilateration, auf Kosten längerer Setup-Zeit. Der hybride Ansatz — Trilateration für Grobschätzung, Fingerprinting für Verfeinerung — bietet die beste Balance aus Genauigkeit, Rechenleistung und Wartbarkeit. Unabhängig vom Algorithmus sind Beacon-Dichte, Geometrie und Einzelgeräte-Kalibrierung wichtiger als die Wahl des Algorithmus selbst.