测量两个iOS设备之间的距离

时间:2010-12-08 16:26:32

标签: iphone objective-c audio sonarqube

是的,我现在想知道这件事。 在我的使用案例中,设备将相距50厘米到10米,我希望它准确到至少10厘米。 (因此GPS不是一种选择)

2种方式让人想起:

声音:我在开发论坛上询问了这个问题,并且我正在与laanlabs联系,关于他们sonar ruler的代码。

一台设备上的图片+另一台设备上的摄像头:似乎更容易设置,因为我的用户案例涉及用户面向90度的一台设备。但是,对于用户而言,面向喀麦隆的方向会更加有效,并且它不会对距离的变化做出反应。

现在的问题是:是否有人知道任何类似的代码?可能是非iPhone通用c-Project?

3 个答案:

答案 0 :(得分:3)

如果你要使用声音方法,一种方法是让设备A 发出声音,然后设备B 随时都会监听它检测回显二次声音。这将为您提供往返时间,您可以从中计算距离 - 不要忘记补偿检测重新发射之间的延迟。

答案 1 :(得分:3)

带摄像头的方法:我们已经知道每台设备的尺寸。您可以拍摄设备照片,计算设备的高度/宽度以确定设备类型(iPhone / iPod或iPad),然后计算距离。

例如 - 如果设备是iPhone你知道,它的尺寸是115x58毫米。在图片上它NxM像素。现在你可以计算距离了。 (如果N& M因此距离较小)

答案 2 :(得分:0)

我不确定,但这是我在之前的SO问题中的一个答案中找到的How to measure distance between two iphone devices using bluetooth?

使用蓝牙进行本地化是一个众所周知的研究领域。简短的回答是:你做不到。信号强度不是两个连接的蓝牙设备之间距离的良好指示,因为它太受环境条件的影响(设备之间是否有人?主人如何握住他/她的设备?是否有墙?是有射频反射表面吗?)。使用蓝牙,你最多可以获得几米的距离分辨率,但你无法计算方向,甚至不能大致。

您可以通过使用多个蓝牙设备并对各种信号强度进行三角测量来获得更好的效果,但即使在这种情况下,您的估算值也很难准确到几米。