跳转至

基于信号强度测距

在物联网中,经常需要用到的一个功能是测量两个物体或者设备之间的距离。这里面有一些传统的方法,我们这里考虑的是利用物联网设备本省的功能来进行距离的测量,例如利用物联网设备上的摄像头、无线模块等实现距离测量。我们这个材料中主要会介绍基于无线信号来进行距离测量的方法。

接收信号强度定义

接收信号强度(Received Signal Strength,RSS),有时也称接收信号强度指示(Received Signal Strength Indication,RSSI),是无线传输层用来判定链接质量的重要指标,传输层根据RSS判断是否需要增大发送端的发送强度。

通常情况下,RSS用功率表示,单位是瓦特(W)。但无线信号能量较弱,通常在毫瓦(mW)级别。因此普遍的做法是将信号的能量以1mW为基准,以对数形式表示信号强度,即RSSI,单位为dBm(Decibel-milliwatts):分贝毫瓦。所以在无线信号中,1mW就是0dBm,能量小于1mW的信号RSSI为负数,能量大于1mW的信号RSSI为正数。

注意一下:dB是一个纯计数单位,dB = 10\lg X,可以轻易把一个极大或极小的数表示出来。而dBm是一个带有量纲(毫瓦)的两个功率的比值的表示方法,是一个表示功率绝对值的单位,其计算公式为:10\lg(功率值/1mW)

例如:如果发射功率为1mW,按dBm单位进行折算后的值应为:10 \lg 1mW/1mW = 0 dBm;对于40W的功率,则10 \lg(40W/1mW)=46dBm

最常用的2W=33dBm20W=43dBmdBmdBm之间的差值就可以用dB来表示。比如46dBm-43dBm=3dB,表示40W功率是20W功率的2倍。所以我们可以很方便用dB来表示信号直接的关系。

RSSI测距原理

不难想到,信号强度RSSI肯定是跟距离有关的,直观上来看,距离越远,信号强度是越低的。 在信道模型一章,我们已经对信号强度和距离的关系进行了详细的分析。 通常,RSSI受发送功率、路径衰减、接收增益和系统处理增益四个元素影响。其计算公式可以表示为:

RSSI = Tx\_Power + Path\_Loss + Rx\_Gain + System\_Gain

在之前的“无线信道”章节的“路径损耗与阴影衰落”中,我们介绍了一般情况下,信号随距离衰减的关系:[TODO] 添加章节链接 $$ P_{G}=-P_{L}=10 \log {10} \frac{G{l} \lambda^{2}}{(4 \pi d)^{2}} $$ 从这个公式我们可以看出来,如果知道距离,可以计算出信道的衰减;反之,如果我们能够测出发送和接收信号强度,是能够反推出距离d的。但是注意,这是理想的情况,实际环境中比理想情况复杂很多,所以实际环境中信号强度不会和这个公式完美符合。

信号在自由空间中的衰落如下图所示:

图. 自由空间中电磁波能量随距离衰减曲线

其中发送功率、接收增益、系统增益都是定值,而路径衰减在理想情况下与传播距离直接相关。因此无线信号的发射功率和接收功率之间的关系可以用下式表示[1]:

PR = \frac{c_0PT}{r^n}

PR是无线信号的接收功率,PT是无线信号的发射功率,r是收发单元之间的距离,c_0是和天线参数和信号频率有关的常数,n是传播因子,数值大小取决于无线信号传播的环境(该公式为远场近似,r很小时不成立)。

对上式两边取对数可得:

10\lg(PR) = 10lg(c_0PT) - 10n\lg(r) = A - 10n\lg(r)

由于发送功率已知,A=10lg(c_0PT)可以看作信号传输1m远时接收信号的功率。上式左部10\lg(PR)是接收信号功率转换为dBm的表达式,因此可以直接写成下面的表达形式

PR(in\quad dBm)=A-10n\lg(r)

上式中可以得到常数An的数值决定了接收信号强度和信号传输距离的关系,因此我们接下来分析这两个常数对信号传输距离的影响。

先假定n不变,使A变化,可以得到如下图所示的关系曲线图。

图. n不变,A变化时接收信号强度与传输距离关系图

从上图可以观察到,若信号传播因子n为定值,无线信号在近场传播时强度快速衰减,远距离时信号呈缓慢线性衰减。而当发射信号功率增加时,增加的传播距离近似为发射信号功率增加量和曲线在平缓阶段的斜率的比值。

接下来我们分析当A不变,取不同的n,RSSI与信号传播距离的关系。

图. A不变,n变化时接收信号强度与传输距离关系图

如上图所示:当n取值越小时,信号在传播过程衰减越小,信号可以传播较远的距离。从上图还可以看到,良好的传播因子特性(n越小)或增加发射信号功率都能增加信号传播距离。传播因子主要取决于无线信号在空气中的衰减、反射、多径效应等干扰,如果干扰较小的话,传播因子n值越小,信号传播距离越远,无线信号的传播曲线越接近于理论曲线,基于RSSI的测距就会越精确。

RSSI测距实现

利用RSSI测距必须事先知道A值和n值,A值为无线收发节点相距1m时接收节点接收无线信号强度值,n值是无线信号的传播因子,这两个值都是经验值,和具体使用的硬件节点和无线信号传播的环境密切相关,所以测距前必须在应用环境中把两个经验值标定好,标定的准确与否,直接关系到测距定位的精度。

此外,如果无线节点系统应用在室外的话,野外的气象条件变化对无线信号的传输也会产生影响。在野外主要考虑的气象条件因素是温度和湿度变化,经过实验验证,温度和湿度条件变化对无线信号传输的影响是没有规律的,但影响效果不明显,可以采取均值或前后测量值加权等方法将其影响消除。

利用RSSI测距时,要避免RSSI的不稳定性,使RSSI值越精确地体现无线信号的传输距离,通过设计各种滤波器使RSSI的值平滑。最常用也是较容易实现的两种滤波器形式是平均值和加权滤波器,其中平均值滤波器是最基本的滤波形式,但是它需要收发节点之间进行多次数据传输。

参考文献

[1] 维基百科:对数距离路径损耗模型