Android Developer -- Bluetooth篇 开发实例之六 蓝牙RSSI计算距离
Posted H_bolin
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Android Developer -- Bluetooth篇 开发实例之六 蓝牙RSSI计算距离相关的知识,希望对你有一定的参考价值。
计算公式:
d = 10^((abs(RSSI) - A) / (10 * n))
其中:
d - 计算所得距离
RSSI - 接收信号强度(负值)
A - 发射端和接收端相隔1米时的信号强度
n - 环境衰减因子
计算公式的代码实现
- (float)calcDistByRSSI:(int)rssi { int iRssi = abs(rssi); float power = (iRssi-59)/(10*2.0); return pow(10, power); }
传入RSSI值,返回距离(单位:米)。其中,A参数赋了59,n赋了2.0。
由于所处环境不同,每台发射源(蓝牙设备)对应参数值都不一样。按道理,公式里的每项参数都应该做实验(校准)获得。
当你不知道周围蓝牙设备准确位置时,只能给A和n赋经验值(如本例)。
原文:http://blog.csdn.net/njchenyi/article/details/46981423
以上是关于Android Developer -- Bluetooth篇 开发实例之六 蓝牙RSSI计算距离的主要内容,如果未能解决你的问题,请参考以下文章
Android Make Disappear or remove the blue dot on the map v2
source.android.google && developer.android.google