2017-02-28 2 views
1

Gibt es eine Methode, um ein RSSI-Signal in eine exakte Entfernung zu konvertieren? Wir haben verschiedene Formeln getestet, aber alle mit einem anderen Ergebnis.Wifi RSSI-Signal zur Entfernung Berechnungsmethode mit Javascript

Die Formel, wo ich spreche:

public double calculateDistance(double signalLevelInDb, double freqInMHz) { double exp = (27.55 - (20 * Math.log10(freqInMHz)) + Math.abs(signalLevelInDb))/20.0; return Math.pow(10.0, exp); }

+0

Welche Formeln haben Sie ausprobiert? Wie unterschiedlich waren die Ergebnisse? Die Ergebnisse werden typischerweise ohne Fehler der Formeln unterschiedlich sein, aber eher die Ungenauigkeit, die bei dieser Art von Berechnung inhärent ist. [Dieser Link] (http://electronics.stackexchange.com/questions/83354/calculate-distance-from-rssi) könnte hilfreich sein, falls Sie es nicht schon gesehen haben. –

+0

Ich habe meine Post mit der Formel bearbeitet, von der ich rede. Es ist schwierig zu überprüfen, ob die Ergebnisse korrekt sind, da (wie wir wissen) die RSSI-Signale nicht mit dem Rauschen anderer Geräte und Objekte im Raum übereinstimmen. @ 0101001101000010 –

Antwort

1

RSSI und dBm messen Stärke, die von vielen Faktoren abhängt, von denen eine von der Quelle natürlich erreichbar. RSSI ist relativ zum Chipsatz des Geräts (siehe http://www.metageek.com/training/resources/understanding-rssi.html). Es sei denn, Sie können den Chipsatz des Geräts kennen, ich glaube nicht, dass es einen Weg gibt, den Sie tun können, was Sie wollen.

Wenn Sie die Signalstärke in dBm haben, könnten Sie versuchen, einen "effektiven" Abstand zu klassifizieren, der der Entfernung auf der Grundlage der Signalstärke entspricht, aber auch durch andere Faktoren, wie das Medium, durch das Signal bewegt sich, das vom Signal verwendete Frequenzband (2,4 dringt besser als 5GHz z. B.)

Es klingt wie Sie wirklich Geolocation-Dienste benötigen, so dass Sie die tatsächliche Entfernung zwischen dem Gerät und dem Access Point identifizieren können.

+0

Ich verstehe, was Sie meinen, aber wir fanden eine mögliche Formel (die Häufigkeit verwendet :) :), aber wir sind nicht sicher, ob die Ergebnisse korrekt sind. Es ist schwierig zu überprüfen, ob die Ergebnisse korrekt sind, da (wie wir wissen) die RSSI-Signale nicht mit dem Rauschen anderer Geräte und Objekte im Raum übereinstimmen. Die Formel, wo ich spreche: 'public double calculateDistance (Doppel signalLevelInDb, Doppel freqInMHz) { double exp = (27,55 - (20 * Math.log10 (freqInMHz)) + Math.abs (signalLevelInDb))/20,0; Rückgabe Math.pow (10.0, exp); } ' @ jk72 –

+0

@ A.vk Dieser Link erklärt ziemlich gut den Prozess und die Probleme inhärent, was Sie tun: http://electronicdesign.com/communications/understanding-wireless-range-calculations – jk72

Verwandte Themen