gpt4 book ai didi

java - 从 WiFI 强度信号计算出的 3 个距离的三边测量

转载 作者:太空狗 更新时间:2023-10-29 15:46:01 25 4
gpt4 key购买 nike

我正在使用 android 来扫描 WIFI AP 的每一帧,我从每个 AP 获取信号强度(RSSI,单位为 dbm),并且我正在使用以下公式计算距离:

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

工作正常,所以我有三个或更多距离,现在我需要在 map 上绘制所有 AP 及其固定位置,我在互联网上阅读了一些内容,我发现了三边测量(是确定绝对或更多的过程通过距离测量点的相对位置)但看起来我至少需要一个点(x,y),此刻我只是从信号强度计算出的距离可以作为不同圆周的半径。

我很困惑,因为我没有任何具体点 (x,y) 来开始计算手机的位置。

我只需要知道是否有一种方法可以计算那个点,或者我可以假设那个初始点或者我遗漏了一些东西。

谢谢,我真的很感激。

最佳答案

正如 Paulw11 提到的是他的评论,您必须知道所有 AP 的确切位置,或者至少知道其中一个 AP 以及其他两个 AP 与这个 AP 的相对位置。然后,Trilateration 程序将为每个 AP 生成一个圆圈,并截取它们。

请记住,使用 Wi-Fi 的三边测量将生成一个区域而不是一个点,这将导致不确定区域的精度至少为 2-3 米。据我所知,您是根据通用类型的自由空间损失模型计算距离的,它并不是每个环境的真实情况,因此,这个假设会使您的估计变得更糟。

一个好的方法是首先使用设备的 Wi-Fi 测量值对您所在区域进行 radio 测绘,然后基于此 Wi-Fi 指纹。或者先准备一个训练期。有很多这方面的教程。

关于java - 从 WiFI 强度信号计算出的 3 个距离的三边测量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27006945/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com