RSSI

RSSI是什么
RSSI是接收信号强度指示(Received Signal Strength Indicator)的缩写,借助RSSI值的变化你能够判断飞机是否接近飞行距离的极限。它正是远距离飞行中一个比较重要的性能指标。同时你也要明白,RSSI不是随着距离线性变化的,例如RSSI为50%的时候,不代表你飞到了最远距离的一半。
距离和RSSI的关系
        RSSI值用dB来表示,距离每增加一倍,RSSI将减少6dB。
例如在1km距离时,读数为-50dBm,那么将有以下关系:
-56 dBm 于 2 km
-62 dBm 于 4 km
-68 dBm 于 8 km
-74 dBm 于 16 km
-80 dBm 于 24 km
-86 dBm 于 48 km
-92 dBm 于 92 km
-98 dBm 于 184 km
        当降低到-103dBm时,我们将到达系统的距离极限。(注1)
所以我们只要在已知的距离上读取RSSI值,就能估计当前系统能够到达的最远距离。经验上,在1km的距离上读取RSSI是比较准确的结果。
        ULRS提供了一个最远飞行距离估算表:
        依据当前的飞行距离和RSSI,就能估算出你能够飞行的最远距离。但很多玩家表示,实际的距离大约是估算距离的25~50%,因为作者对于背景噪声的估计过于乐观(使用了-102dBm来计算)。
从哪里读取RSSI
        RSSI默认在RSSI管脚上以电压值的形式给出,另外也可以通过软件设置为的脉宽信号替换现有的通道值,方便飞控读取的同时还简化了走线。
RSSI作为电压值读取:
        RSSI管脚上提供电压值指示,0~3.3V表示0~100%,电压值的形式适合不支持通道信号读取的系统,例如独立工作的OSD之类的模块。
RSSI作为通道信号:
        和OpenLRS的通道注入功能相同,替换现有的某一个通道值,这样做的好处是:
        1.不需要额外的走线来读取RSSI电压值。
        2.更加精确,通道信号注入的形式支持主流飞控(APM,Pixhawk等等)。
        3.兼容性更好,不需要设置电压值的量程。
通过软件来监控RSSI:
        ULRS可以通过CC来监控信号质量,并且能够精确的读取每一个信号通道的信号强度和本地噪声,并且直观的估计信噪比,这一点对爱好深入探究的玩家很有用,你可以在飞机的过程中实时的看到信号是如何变弱以及背景噪声的变化。
百分比和dBm
        在当前版本,ULRS提供非常直观的换算关系:
0% (0V) = -100 dBm 或更低
10% = -90 dBm
20% = -80 dBm
30% = -70 dBm
40% = -60 dBm
50% = -50 dBm
60% = -40 dBm
70% = -30 dBm
80% = -20 dBm
90% = -10 dBm
100% (3.3V) = 0 dBm 及以上
        这样做的好处是能够从RSSI很容易的换算成dBm,而dBm又是通用的物理量,适合高级玩家进行最远距离的估算:例如在你的飞机旁测得机载设备产生的噪声是-90dBm(算是干扰比较大的情况),那么当你的RSSI接近10%(-90dBm)的时候就要小心,因为随后你的的信号将慢慢淹没在噪声中,需要返航。
        在实际操作中,我们会发现在起飞不久,RSSI将迅速降低到约30%左右,随后再缓慢降低,这也就是上面说到的,RSSI随着距离的变化规律不是线性的。有一些无线系统,使用丢包率作为RSSI来显示,飞了十几公里RSSI还是100%,这样的信号值指示没有太大的意义,因为一旦信号开始丢失数据,说明你已经到达极限距离,很快就有失控的风险。而就ULRS而言,虽然动辄只有20~30%的RSSI值看起来很低,但是这就是RSSI值最真实的一面,每一个远距离飞行的爱好者都要学会驾驭它。
失控一定是因为RSSI太低?
这个问题需要分为两个方面来考虑:
1.灵敏度。
从手册上我们看到,RFM23模块的灵敏度达到-120dBm。对这个值有很多的误解,因为存在一个传输带宽和灵敏度的关系,而带宽又取决于我们需要的数据传输速率。
如果我们的空中速率只有2kbps,那么没问题,我们可以达到-120dBm的灵敏度。但是这个速率对数传而言实在太慢了,我们需要使用更高的带宽,因此我们的相应的灵敏度是-102dBm。所有无线模块都是如此,包括LoRa无线模块,纵然灵敏度很高,但是数据率非常低。
验证这个理论很简单,把模块连上PC端的ULRS-CC,再使用一个衰减器进行拉距测试,你会发现信号差不多就是在-102dBm的时候开始丢失。
2.RSSI是信号强度。
如果没有干扰,我们确实可以达到-102dBm的灵敏度。但是如果有干扰,就是另外一回事了,即使RSSI不低,但是你依旧会失控。就好比你想听一听隔壁的人在说话,但是你身边正有人在朝你吼叫,你耳朵再灵敏,听到的都是旁边人的咆哮一样。(注2)
失控其实说明信号已经无法正确的被解析,有可能是信号太弱,这时RSSI就是一个很好的参考值;也有可能是因为存在干扰,这时候RSSI就不能说明问题了。
至于上面说的第一点,其实是系统的技术上的极限指标,你可以使用适当的天线增加信号强度。
而对于第二点,你可以通过选择合适的通信频段来回避干扰。你可以使用系统自带的频谱分析期器来锁定干扰频率。一般干扰都来自你的机载设备。
ULRS的一个优势就是可以选择通信频率。其他产品,例如Dragonlink就没法自由的选择通信频率,玩家就只能更换他们的摄像头,电调或是飞控来减少干扰。

注1:这里假设背景噪声为-100dBm的量级,如果机载设备的干扰较大,或是飞机附近的环境干扰较大,那么系统的极限距离将相应缩短。此外,多径干扰,地面曲率等因素也将影响最远距离。
注2:其实这就是所谓的信噪比:信号和噪声的比值,缩写为SNR。实际使用中,如果你的信号是-79dBm,噪声是-80dBm,你依旧处于失控状态,因为信号还需要比噪声高出一定的数值以后才可以被正确的解析。