Как получить точное расстояние от WiFi в коде?

Я работаю над проектом, в котором я должен определить расстояние от WiFi. Я использую WiFi RSSI и формулу:

float exp = (27.55 - (20 * log10(frequency)) + abs(RSSI)) / 20.0;
return pow(10.0, exp);

Но это не дает точного значения и зависит от окружающей среды. Если между маршрутизатором WiFi и приемником много стен, эта формула дает неправильное значение.

Я много искал в Интернете. Все результаты основаны на RSSI и Tx-Power. Tx-Power — это RSSI на расстоянии 1 метра от WiFi-роутера. Tx-Power не является постоянной величиной и варьируется от роутера к роутеру, а это значит, что мой код не будет работать для всех роутеров в мире.

Мой вопрос в том, как я могу точно определить расстояние от WiFi-маршрутизатора, используя тот или иной метод?


person Armeno    schedule 23.04.2019    source источник


Ответы (1)


Ваш код использует децибелы, что зависит от того, насколько хорошим будет ваше обнаружение WiFi. Вы не можете использовать эту формулу, если пытаетесь получить расстояние, поскольку оно зависит от среды, в которой находится ваш маршрутизатор.

person Community    schedule 23.04.2019
comment
Да, я знаю. Я спрашиваю, как я могу рассчитать текущее расстояние? - person Armeno; 23.04.2019
comment
вы знаете какой-нибудь другой метод? - person Armeno; 23.04.2019
comment
Можете ли вы дать мне метод, который я могу подсчитать время прохождения сигнала или время отклика Wi-Fi? - person Armeno; 23.04.2019