概述
RSSI测试是指通过低功耗蓝牙(BLE)接收到的信号能量强弱来映射距离。BLE在广播或者连接模式下都可以接收到另一方的数据包,以及对应的信号强度(RSSI)。RSSI本质上会随着BLE主从设备之间的距离的变化而呈现对应的单调变化,通过电磁波空间传播模型可以根据RSSI计算出对应的距离。
实际场景中RSSI会受到多个因素的影响,比如空中同频干扰信号,电磁波在不同物质表面的反射折射等造成的多径叠加,中间障碍物的遮挡,以及天线的性能和朝向等。这些因素会造成RSSI的大幅度波动,并且在不同场景下表现出不同的趋势和范围。下图是BLE在连接状态下,固定位置,1秒间隔内连续收到的100个数据包对应的RSSI:
可以看到即便在固定位置的很短时间内,RSSI波动都可能有超过20db,对应的距离如下:
通过对足够数量的RSSI样本滤波可以过滤掉偏差很大的干扰值,减小距离映射的误差(实际的效果取决于距离和环境等因素)。
不同频率对RSSI测量值的影响
不同频率(BLE信道)在相同环境中对RSSI的测量值有一定影响,下图分别是连接状态下(37个信道自动跳频)和固定频率(channel 37)广播下在室内环境(0~5m)不同距离下测出的RSSI值:
连接下的多信道RSSI有平均15db以上的波动,但是信道37的广播只有平均5db的波动。实际使用中,多信道自动跳频更适合应用数据传输(抗干扰能力强),RSSI的波动可以通过适当的滤波来减小。
不同发射功率对RSSI测量值的影响
大的发射功率支持传输更远的距离,但是也会造成更大的RSSI波动。相反,较小的发射功率波动较小而且有利于功耗,但是覆盖范围有限。下图是在连接状态下,0~5m的距离内,使用8dbm发射功率和-25dbm发射功率分别测量的RSSI:
两者表现出相同的趋势。-25dbm的数据的波动相对较小,但是对于远距离,RSSI的读值趋于平坦。两者在近距离内都可以通过滤波实现相同的效果,实际使用中应该根据应用场景在远距离和低功耗之间选择合适的发射功率。
不同场景对RSSI的影响
场景中的噪声和其他物体造成的反射对RSSI有很大影响,以会议室场景和地下车库场景为例,会议室场景存在较多物体,而地下车库场景相对空旷,因此地下车库场景的RSSI波动较小一些,不同场景会直接影响测距和滤波的系数(系数需要针对不同场景校准)。
01 场景:会议室
BLE主从设备为ingchips916, 两个设备都经过了RSSI校准(+/-1.5db),确保不同增益切换对RSSI的影响最小。在如下的会议室中,双方进入连接状态(多信道自动跳频,-25dbm发射功率,10ms连接间隔),在0~5m内每间隔0.5m采集100个RSSI值(1s):
假定每个位置的RSSI值服从正态分布,首先对每一组数据使用高斯滤波过滤掉偏差很大的值。这一步为可选项,高斯滤波对样本数量较小的情况提升不明显,如果RSSI测量个数很大,则可以考虑首先使用高斯滤波对数据进行处理。 参数[sigma = 1]的高斯滤波后的数据和原来数据的对比:
接下来对数据使用卡尔曼滤波(Kalman),Kalman对噪声环境下的服从正态分布的数据预测有较好效果(参考[1])。此处使用参数[A=1, H=1, Q=0.1, R=2.5],滤波后的数据和原始数据对比:
相比于原始数据,Kalman滤波后的数据相对收敛,将滤波后RSSI转换为距离(参数[n=1.6]),结果如下:
对于较小的(3m之内)的误差,Kalman和原始数据的差别不大。对于较大的误差,Kalman可以通过和先前数据的平滑过滤掉偏差很大的值(结论参考[2])。
02 场景:地下车库
地下车库相对比较开阔,测试设备采用连接方式(多信道调频,8dbm发射功率)测量RSSI,在1~20m距离内每隔1m采集100个数据(10ms连接间隔,耗时1s)。和场景1类似,采用Kalman滤波(参数[A=1, H=1, Q=0.1, R=2.5])后的数据和原始数据对比:
转换为距离后和原始数据对比为(参数分别为[n=1.4]和[n=1.35]):
大于15m的距离,误差很大,数据没有使用的价值。小于15m的距离内,在较小误差的情况下,Kalman和原始数据差别不大,较大误差比如10m位置,Kalman则有约10%的提升。
趋势判断
对于需要判断距离变化趋势的应用场景,需要按时间顺序采集RSSI测量值,并通过对数据拟合后的斜率变化来判断距离趋势。考虑到RSSI和距离的映射关系为非线性,RSSI的变化趋势需要在小范围时间内进行拟合。
在会议室场景和地下车库场景,从远距离以步行速度靠近信源,原始数据和拟合曲线分别为:
可以观测到:
1.在远离信源的地方(10m之外),RSSI的变化趋势存在波动。
2.受环境和设备天线朝向等因素,RSSI绝对值在不同场景中表现不同。
3.而在靠近信源的地方(会议室场景在1.5m内,地下车库场景在3m范围内),信号强度的线性变化趋势较为明显。
实际使用场景中,如果RSSI测量设备的环境复杂或者靠近的路线不明确,都有可能导致最终的趋势预测不够可靠。但在已知场景下,可以通过对该区域内RSSI的测量来划分出不同区域,在靠近信源的区域(信号趋势明显),通过结合RSSI测量值以及线性拟合的斜率来判断测量点是在靠近还是远离信源。
结论
1. RSSI测距受包括收发天线,多径干扰,RSSI精度等多个因素影响,10m内有平均1~3m的误差。
2. 不同信道对RSSI测距有一定影响,单信道测距要比跳频测距更稳定。
3. 取决于实际使用需求,发射功率对RSSI测距的影响不明显。
4. 为了达到相对收敛的效果,实际使用中应该对一定数量的样本滤波来过滤掉方差较大的测量值。
5. RSSI距离映射公式和滤波的相关参数和特定环境相关,需要针对测定场景校准。
6. 具体使用请参考Ingchips示例工程。
审核编辑:刘清
-
滤波器
+关注
关注
161文章
7795浏览量
177993 -
BLE
+关注
关注
12文章
660浏览量
59391 -
卡尔曼滤波
+关注
关注
3文章
165浏览量
24648 -
RSSI信号
+关注
关注
0文章
2浏览量
4931
原文标题:蓝牙信号RSSI与信标测距分析及应用
文章出处:【微信号:INGCHIPS_OFFICIAL,微信公众号:桃芯科技】欢迎添加关注!文章转载请注明出处。
发布评论请先 登录
相关推荐
评论