在Objective C中使用iBeacon查找距离
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在Objective C中使用iBeacon查找距离相关的知识,希望对你有一定的参考价值。
我正在开发一个蓝牙设备的应用程序。
我使用iBeacon功能进行室内定位,但找不到室内位置,只返回区域。
我有一个当前的位置。但现在我想找到当前位置与iBeacon位置之间的距离。我搜索了很多。但没有得到任何适当的解决方案。
从我的搜索中我知道我可以找到RSSI的距离。
但我的问题是如何找到该物业的位置或距离。
您无法通过使用1 iBeacon找到当前位置(经度纬度),但如果您想查找距离(例如信标在5米范围内),请查看this文档。公式是第3页的#19,基本上是这样的:
Received Signal Strength is related to distance using the
equation below.
RSSI [dBm] = -10n log10 (d) + A [dBm]
哪里 A是在1米处以dBm为单位的接收信号强度 - 您需要在系统上校准此信号。因为您在已知距离进行校准,所以不需要考虑传输频率,这简化了等式。 (只需将iBeacon置于1米范围内,并测量其RSSI)
n是传播路径损耗指数,即2.7到4.3(自由空间有n = 2作为参考,如果有墙,它将更大)。
d是发送方的距离,以米为单位
所以除了d之外你有所有的值,你需要用提到的公式来计算d。
顺便说一句,如果你想获得信标的位置,你需要对它进行三角测量(使用3个以上的信标)look here
CLBeacon类有一个名为accuracy的属性。 Apple Developer Site Reference
以上是关于在Objective C中使用iBeacon查找距离的主要内容,如果未能解决你的问题,请参考以下文章
如何在 Objective-C 中使用 startMonitoringForRegion 扫描多个区域
如何在Objective C代码中查找目录修改日期的所有内容
OBJ-C 操作方法:在同一设备中使用 BLE 连接和 iBeacon 的应用程序