Ich möchte den genauen Standort eines Mobilgeräts in einem Gebäude berechnen (also kein GPS-Zugang).
Ich möchte dies mit der Signalstärke (in dBm) von mindestens 3 festen WLAN-Signalen (3 festen Routern, deren Position ich kenne) tun.
Google macht das bereits und ich würde gerne wissen, wie sie anhand dieser Daten den genauen Standort ermitteln
Weitere Informationen finden Sie in diesem Artikel: http://www.codeproject.com/Articles/63747/Exploring-GoogleGears-Wi-Fi-Geo-Locator-Secrets
geolocation
wifi
signal-strength
Ihab Hajj
quelle
quelle
Antworten:
FSPL hängt von zwei Parametern ab: Erstens ist die Frequenz der Funksignale ; Zweitens ist die drahtlose Übertragungsentfernung. Die folgende Formel kann die Beziehung zwischen ihnen widerspiegeln.
Aus der Fade Margin-Gleichung kann der Pfadverlust im freien Raum mit der folgenden Gleichung berechnet werden.
Pfadverlust im freien Speicherplatz = Tx Power-Tx-Kabelverlust + Tx-Antennengewinn + Rx-Antennengewinn - Rx-Kabelverlust - Rx-Empfindlichkeit - Fade Margin
Mit den beiden oben genannten Gleichungen für den Pfadverlust im freien Raum können wir die Entfernung in km ermitteln.
Die Fresnel-Zone ist der Bereich um die visuelle Sichtlinie, in den sich Funkwellen ausbreiten, nachdem sie die Antenne verlassen haben. Sie möchten eine klare Sichtlinie, um die Stärke zu erhalten, insbesondere bei drahtlosen 2,4-GHz-Systemen. Dies liegt daran, dass 2,4-GHz-Wellen vom Wasser absorbiert werden, wie das Wasser in Bäumen. Als Faustregel gilt, dass 60% der Fresnel-Zone frei von Hindernissen sein müssen. In der Regel führt eine Blockierung der Fresnel-Zone um 20% zu einem geringen Signalverlust der Verbindung. Ab einer Blockierung von 40% wird der Signalverlust signifikant.
Quelle: http://www.tp-link.com/de/support/calculator/
quelle
Um die Entfernung zu berechnen, benötigen Sie die Signalstärke und die Frequenz des Signals. Hier ist der Java-Code:
Die verwendete Formel lautet:
Beispiel: Frequenz = 2412 MHz, Signalpegel = -57 dBm, Ergebnis = 7.000397427391188m
Diese Formel ist eine transformierte Form der FSPL- Formel (Free Space Path Loss) . Hier wird die Entfernung in Metern und die Frequenz in Megahertz gemessen. Für andere Maßnahmen müssen Sie eine andere Konstante (27,55) verwenden. Lesen Sie hier die Konstanten .
Weitere Informationen finden Sie hier .
quelle
Hier:
K
- konstant (32,44f
in MHz undd
in km, Änderung in -27,55f
in MHz undd
in m)FSPL
- Verlust des freien SpeicherplatzesPtx
- Sendeleistung dBm (bis zu 20 dBm (100 mW))CLtx
,CLrx
- Kabelverlust an Sender und Empfänger, dB (0, wenn keine Kabel vorhanden sind)AGtx
,AGrx
- Antennengewinn an Sender und Empfänger, dBiPrx
- Empfängerempfindlichkeit, dBm (bis zu -100 dBm (0,1 pW))FM
- Fade Margin, dB (mehr als 14 dB (normal) oder mehr als 22 dB (gut))f
- Signalfrequenz, MHzd
- Entfernung, m oder km (abhängig vom Wert von K)Hinweis: In den Formeln der TP-Link-Support-Site ist ein Fehler aufgetreten (Mising
^
).Ersetzen Sie
Prx
durch empfangene Signalstärke, um eine Entfernung vom WiFi AP zu erhalten.Beispiel: Ptx = 16 dBm, AGtx = 2 dBi, AGrx = 0, Prx = -51 dBm (empfangene Signalstärke), CLtx = 0, CLrx = 0, f = 2442 MHz (7. 802.11bgn-Kanal), FM = 22. Ergebnis: FSPL = 47 dB, d = 2,1865 m
Hinweis: FM (Fade Margin) scheint hier irrelevant zu sein, aber ich lasse es wegen der ursprünglichen Formel.
Sie sollten Kontenwände berücksichtigen, Tabelle http://www.liveport.com/wifi-signal-attenuation kann hilfreich sein.
Beispiel: (vorherige Daten) + eine Holzwand (5 dB, aus der Tabelle). Ergebnis: FSPL = FSPL - 5 dB = 44 dB, d = 1,548 m
Bitte beachten Sie auch, dass der Antennengewinn keine zusätzliche Leistung bringt - er beschreibt die Form des Strahlungsmusters (Donut bei Rundstrahlantennen, Zeppelin bei Richtantennen usw.).
Nichts davon berücksichtigt Signalreflexionen (ich habe keine Ahnung, wie das geht). Wahrscheinlich fehlt auch Lärm. Diese Mathematik ist also möglicherweise nur für die grobe Entfernungsschätzung geeignet.
quelle
Die einfache Antwort auf Ihre Frage wäre Triangulation. Dies ist im Wesentlichen das Konzept aller GPS-Geräte. Ich würde diesen Artikel lesen, um mehr darüber zu erfahren, wie Google dies tut: http://www.computerworld.com/s/article/9127462/FAQ_How_Google_Latitude_locates_you_?taxonomyId=15&pageNumber= 2 .
Nach meinem Verständnis verwenden sie einen Dienst ähnlich wie Skyhook , eine Ortungssoftware, die Ihren Standort anhand Ihrer WLAN- / Mobiltelefonsignale ermittelt. Um ihre Genauigkeit zu erreichen, verfügen diese Dienste über große Datenbankserver, auf denen Standortinformationen zu diesen Mobilfunkmasten und WLAN-Zugangspunkten gespeichert sind. Sie untersuchen tatsächlich die Ballungsräume, um sie auf dem neuesten Stand zu halten. Um etwas Ähnliches zu erreichen, müssten Sie einen Dienst wie Skyhook verwenden. Sie können das SDK ( http://www.skyhookwireless.com/location-technology/ ) verwenden.
Wenn Sie jedoch etwas Internes tun möchten (z. B. die Standorte Ihrer eigenen Router verwenden), müssen Sie wahrscheinlich einen Algorithmus erstellen, der die Triangulation nachahmt. Sie müssen einen Weg finden, um das
signal_strength
undmac_address
des Geräts abzurufen und diese Informationen zusammen mit den Standorten Ihrer Router zu verwenden, um den Standort zu ermitteln. Sie können die Informationen zu Geräten, die an Ihre Router angeschlossen sind, wahrscheinlich abrufen, indem Sie etwas Ähnliches tun ( http://www.makeuseof.com/tag/check-stealing-wifi/ ).quelle
Entfernung (km) = 10 ^ ((Verlust des Freiraumpfads - 92,45 - 20log10 (f)) / 20)
quelle
Im Allgemeinen ist dies aufgrund von Mehrwegestörungen eine sehr schlechte Vorgehensweise . Dies ist definitiv eher eine Frage der HF-Technik als eine Frage der Codierung.
Tl; dr, die WLAN-HF-Energie wird nach dem Abprallen von Wänden, Personen, Boden usw. in verschiedene Richtungen gestreut. Es gibt keine Möglichkeit, allein durch Triangulation zu erkennen, wo Sie sich befinden, es sei denn, Sie befinden sich in einem leeren Raum, in dem sich die WLAN-Beacons befinden genau der richtige Ort.
Google ist in der Lage, damit durchzukommen, da es im Wesentlichen einem GPS-Standort zuordnen kann, wo sich jede WLAN-SSID befindet, wenn ein Android-Benutzer (der sich für seinen Dienst entscheidet) in Reichweite kommt. Auf diese Weise kann das Google-Mutterschiff beim nächsten Besuch eines Nutzers auch ohne ein perfektes GPS-Signal erkennen, wo Sie sich befinden. Normalerweise verwenden sie das in Verbindung mit einem beschissenen GPS-Signal.
Was ich gesehen habe, ist ein Raster von ZigBee- oder BTLE-Geräten. Wenn Sie wissen, wo diese angeordnet sind, können Sie mithilfe des kombinierten RSS herausfinden, welchen Sie am nächsten sind, und von dort aus fortfahren.
quelle
Es ist mir egal, ob Sie ein Moderator sind. Ich habe meinen Text nicht als technischer Redakteur an mein Publikum geschrieben
Alles, was Sie brauchen, um zu lernen, mit Tools zu navigieren, die älter sind als GPS. So etwas wie ein Sextant, ein Oktant, ein Backstaff oder ein Astrolabium.
Wenn Sie das Signal von 3 verschiedenen Orten empfangen haben, müssen Sie nur die Signalstärke messen und ein Verhältnis von diesen Orten erstellen. Einfache Dreiecksberechnung mit a2 + b2 = c2. Je stärker die Signalstärke ist, desto näher ist das Gerät am Empfänger.
quelle