接收信號強度定義
接收信號強度(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=10lgX,可以輕易把一個極大或極小的數表示出來。而dBm是一個帶有量綱(毫瓦)的兩個功率的比值的表示方法,是一個表示功率絕對值的單位,其計算公式為:10lg(功率值/1mW)。
例如:如果發射功率為1mW,按dBm單位進行折算后的值應為:10lg1mW/1mW=0dBm;對於40W的功率,則10lg(40W/1mW)=46dBm。
最常用的2W=33dBm,20W=43dBm。dBm與dBm之間的差值就可以用dB來表示。比如46dBm−43dBm=3dB,表示40W功率是20W功率的2倍。所以我們可以很方便用dB來表示信號直接的關系。
RSSI測距原理
不難想到,信號強度RSSI肯定是跟距離有關的,直觀上來看,距離越遠,信號強度是越低的。 通常,RSSI受發送功率、路徑衰減、接收增益和系統處理增益四個元素影響。其計算公式可以表示為:
上述式子是信號隨距離衰減的關系式,如果知道距離,可以計算出信道的衰減;反之,如果我們能夠測出發送和接收信號強度,是能夠反推出距離d的。但是注意,這是理想的情況,實際環境中比理想情況復雜很多,所以實際環境中信號強度不會和這個公式完美符合。
其中發送功率、接收增益、系統增益都是定值,而路徑衰減在理想情況下與傳播距離直接相關。因此無線信號的發射功率和接收功率之間的關系可以用下式表示:
PR是無線信號的接收功率,PT是無線信號的發射功率,r是收發單元之間的距離,\(c_0\)是和天線參數和信號頻率有關的常數,n是傳播因子,數值大小取決於無線信號傳播的環境(該公式為遠場近似,r很小時不成立)。
對上式兩邊取對數可得:
由於發送功率已知,\(A=10lg(c_0PT)A=10lg(c_0PT)\)可以看作信號傳輸1m遠時接收信號的功率。
先假定n不變,使A變化,可以得到如下圖所示的關系曲線圖。
從上圖可以觀察到,若信號傳播因子n為定值,無線信號在近場傳播時強度快速衰減,遠距離時信號呈緩慢線性衰減。而當發射信號功率增加時,增加的傳播距離近似為發射信號功率增加量和曲線在平緩階段的斜率的比值。
接下來我們分析當A不變,取不同的n,RSSI與信號傳播距離的關系。
如上圖所示:當n取值越小時,信號在傳播過程衰減越小,信號可以傳播較遠的距離。從上圖還可以看到,良好的傳播因子特性(n越小)或增加發射信號功率都能增加信號傳播距離。傳播因子主要取決於無線信號在空氣中的衰減、反射、多徑效應等干擾,如果干擾較小的話,傳播因子n值越小,信號傳播距離越遠,無線信號的傳播曲線越接近於理論曲線,基於RSSI的測距就會越精確。
RSSI測距實現
利用RSSI測距必須事先知道AA值和nn值,AA值為無線收發節點相距1m1m時接收節點接收無線信號強度值,nn值是無線信號的傳播因子,這兩個值都是經驗值,和具體使用的硬件節點和無線信號傳播的環境密切相關,所以測距前必須在應用環境中把兩個經驗值標定好,標定的准確與否,直接關系到測距定位的精度。
此外,如果無線節點系統應用在室外的話,野外的氣象條件變化對無線信號的傳輸也會產生影響。在野外主要考慮的氣象條件因素是溫度和濕度變化,經過實驗驗證,溫度和濕度條件變化對無線信號傳輸的影響是沒有規律的,但影響效果不明顯,可以采取均值或前后測量值加權等方法將其影響消除。
利用RSSI測距時,要避免RSSI的不穩定性,使RSSI值越精確地體現無線信號的傳輸距離,通過設計各種濾波器使RSSI的值平滑。最常用也是較容易實現的兩種濾波器形式是平均值和加權濾波器,其中平均值濾波器是最基本的濾波形式,但是它需要收發節點之間進行多次數據傳輸。