【问题标题】:determining your location using ONLY wifi signals?仅使用 wifi 信号确定您的位置?
【发布时间】:2010-10-06 04:16:38
【问题描述】:

我将从事一个项目,该项目试图使用来自几个接入点的 wifi 信号强度来确定您的位置。我想知道是否有人知道任何类似的项目或关于该主题的任何文章

如果有人关心:这是我大学的一个研究项目。编写的应用程序用作开发更适合此类用途的新 wifi 天线的游乐场。我只从事项目的编码部分。哦,它是用 c# 编写的,这不是可选的


说明: 它唯一的无线网络。对我们来说没有 GPS 优势,因为它应该在室内工作 该软件应该通过使用接入点的已知位置及其信号强度来确定您的位置,从而告诉您您所在的位置。它目前的精度约为 4-5 米 除此之外,我已经有了一个工作原型,只是想知道之前是否做过类似的事情,或者是否有人对这个项目有任何提示或想法

【问题讨论】:

  • 我在回答,但从这个问题我不明白一件事,只有 WiFi 还是会有 GPS?因为 Stuart 和 Jon 也提到了 GPS 的想法。
  • 只有wifi。它在室内,所以我们没有 GPS:(

标签: c# .net wireless wifi


【解决方案1】:

放弃前2个答案,他们需要在第一个和第二个已知的WiFi网络中使用GPS和A-GPS,我的答案是:

听起来很简单,但您需要先做一些功课,即调查。

  • 您需要测量并创建一个椭圆形(在纸上),其中包含营地中所有 wifi 路由器的点数和百分比。
  • 假设您编译了 2 个路由器信息,就可以开始了。
  • 从用户笔记本电脑/设备获取当前 wifi 点和信号强度,并使用这些值查询数据库。
  • 向用户提供他们当前的位置。

例子:

  • 在您测量的校园酒吧中,您需要有大约 55% 的 WiFi 路由器 1 提供的信号强度和 25% 的 WiFi 路由器 2 提供的信号强度。

要在 C# 中使用所有这些,您应该从 this Code Project article 开始以获取信号强度。然后只需将这些返回值与您在进行第一次调查时测量的数据一起使用。

希望它有所帮助 :) 至少,为了解决这个问题,我会这样做。

【讨论】:

  • 感谢这个想法。我实际上已经这样做了,我想我的问题不够清楚。除了明显的三角测量和关于该主题的任何资源之外,我希望有任何想法
  • 没有什么可以避免调查,因为它只是一个地方,任何人/服务都不知道您可以重用代码/api。要创建获取位置的算法,您可以从校园中的所有点获得更多数据,响应就会更好/更准确。
  • @balexandre 我们还需要校园的纬度\经度,对吧?所以你可以得到所有wifi点的强度,然后自己计算距离?每栋楼,wifi热点越多越准确?您可以继续计算距离的示例吗?有一个公式或您正在根据建筑物的大小制作的东西吗?谢谢!
【解决方案2】:

我们在一个已经确定与接入点的距离的项目中执行此操作,但没有信号三角测量(此处已涵盖其他答案)。

我确实有一个来自“伙计,我希望我不必回去做这个”部门的建议——那就是在两个方面花费额外的时间:

  1. 一种使用多个数据点的简单且可重复的校准方法。例如,从“非常接近”到“有点接近”的下降将远远超过从“非常远”到“非常非常远”的距离。它不会是线性斜率。
  2. 数据平滑。当您移动时,信号强度将与您的移动不成比例地变化(由于路径中的障碍物)。如果您对信号强度的最后 5-10 个样本进行滚动平均,而不是只取最后一个样本,结果会更加准确。

【讨论】:

  • 感谢提示。您的项目没有任何公开文档吗?
  • 不,很遗憾不是 - 它是更大系统的一个组件。
【解决方案3】:

您可能想查看Google Gears Geolocation API。我不知道从 C# 中使用它有多容易,但它可能有用/相关。

(免责声明:我为 Google 工作,但与 Geolocation API 没有任何关系。)

【讨论】:

  • 你需要在 WiFi 中知道谷歌,我认为这个想法没有 GPS 功能并且只能“在内部”,因此,他们需要创建所有路由器的路线和百分比并将其用作应用程序的输入,以计算大学的确切位置。对吗?
  • balexandre 其实是对的。 wifi信号将用于三角测量您的位置。现在我们的精度大约是 4 米
  • 地理定位 API 也可以在没有 GPS 的情况下工作:“今天,我们正在向地理定位 API 添加 WiFi 信号,以便笔记本电脑用户可以首次从启用定位的网站中受益,而移动用户可以从提高的准确性中受益。”
  • @Cyrik:如果你的准确度达到 4m 左右,我怀疑你不会比这更准确。根据我的经验,wifi 信号强度可能会有很大差异 - 天气、温度、其他物体/人等可能会产生微妙的影响。
  • 您对这些因素的看法是正确的。您和接入点之间的每一堵墙都对精度非常不利。我会在地理定位中获得一些战利品,看看它在没有 GPS 的情况下会发生什么
【解决方案4】:

我没想到信号强度会很好用:太多的东西会干扰它(比如墙壁)。但是您可以尝试测量 ping 时间,尤其是当您向 AP 发送 100 次 ping 并取平均值时。大多数情况下,AP 会消化 ping 并生成 pong,但也会有信号的飞行时间组件。如果 AP 响应时间是一致的,那么您应该能够减去它,从而计算到 AP 的距离。通过众所周知的双曲数学,您可以从 3 或 4 个 AP 中找到您的位置。

保罗。

【讨论】:

  • 哦,我喜欢这个主意,谢谢。我会尝试一下,看看我能得到什么准确度,如果我可以结合信号强度使用它
  • 只是为了更新您:我发现它之前已经尝试过,并且比信号强度更差。除此之外,您还必须建立与 AP 的活动连接
【解决方案5】:

Skyhook 浮现在脑海中。不过,这取决于人们注册其 AP 的位置。

【讨论】:

【解决方案6】:

在定位系统(WPS)中转到 Wifi,我们使用多个 Wifi AP 来跟踪位置。 这是由许多系统(如 Google、Horizo​​n 等)通过提供额外的安全性 4 隐私来实现的。 我也在不知道这尝试实施这种技术.. 最好的是,我们可以通过各种方法简化其复杂性,从而实现对现有基础设施的创新。 我建议你在购买之前去 wifi 路由器插件管理和使用。

【讨论】:

    【解决方案7】:

    您可以尝试 FIND3 项目,这里有一个文档https://www.internalpositioning.com/doc/,它的 API 可用于此目的,并使用学习算法不断准确地了解您的位置。他们也有移动应用程序(仅适用于安卓)。我想做一些同样性质的事情。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-01-20
      • 1970-01-01
      • 1970-01-01
      • 2016-06-13
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多