gnuradio中接收端的信道濾波

在benchmark_rx中在接收端使用了FFT低通濾波器來得到感興趣的頻段,以濾除帶外噪聲,然而機器運行benchmark_rx時總是出現“段錯誤”,究其原因就是使用了信道濾波,當把信道濾波去掉之後運行起來就沒有什麼問題了。然而濾除帶外噪聲也是有必要的,所以對信道濾波部分進行了研究。

在軟件無線電中,信道濾波實際就是低通濾波器,在benchmark_rx中是這樣使用的:在filter.firdes.low_pass()中設定了濾波器的抽頭係數,然後使用fft_filter()實現濾波器。在gnuradio-companion中按照benchmark中的方式進行了試驗,同樣也會出現不能運行的情況。

換一種思路,直接設計低通濾波器low_pass_filter,並使用相同的參數,實驗結果比較理想,與benchmark的效果相差無幾:


最後說一下帶寬的確定。

先補充幾個概念:

信息速率:Rb,單位時間內傳輸的二進制比特數。單位是比特率,用bit/s表示。
符號率:Rs,單位時間內傳輸的調製符號數。用symbol/s表示。
信息速率和符號率的單位不同,但在二進制中它們的數值相同。在M 進制調製中,信息速率Rb 和符號率Rs 之間關係爲:
Rb = Rs log2M

在gnuradio中還涉及到一個sample rate,採樣點速率,以升餘弦脈衝成型爲例,表示的就是脈衝波形採樣點的速率。與符號速率的關係由samples per symbol決定。
奈奎斯特准則:數字波形在無噪聲線性信道上傳輸時的無失真條件。其中奈奎斯特第一準則是抽樣點無失真準則,或無碼間串擾準則,是關於接收機不產生碼間串擾的接受脈衝形狀問題。對於基帶信號,要達到無碼間串擾,系統傳輸函數H(f)是單邊帶寬爲1/2T的矩形函數,其時域波形爲h(t0=sinc(t/T)。
理想奈奎斯特濾波系統的傳輸函數形狀爲矩形,其脈衝響應爲無限長,顯然在物理上是無法實現的,只能近似。奈奎斯特濾波器的頻率傳輸函數可以表示爲矩形函數和任意一個實偶對稱函數的卷積。奈奎斯特脈衝可以表示爲sin(t/T)函數與另一個時間函數的乘積,其中,常用的是升餘弦成形濾波器。
滾降係數:實際帶寬-理想帶寬/理想帶寬=滾降係數,α的範圍爲0.15~0.5。也稱滾降因子,由於理想的濾波器具有矩形響應曲線,而實際上是達不到的,因此利用滾降因子在通帶和阻帶之間產生一個過渡帶,滾降因子決定該過渡帶的垂直程度,或者說與矩形響應的近似程度。


在無碼間串擾條件下,所需帶寬W與碼間傳輸速率Rs的關係爲:
W = (1+α)Rs/2   α爲滾降係數。
當α=0時,就是理想奈奎斯特濾波器,此時的傳輸帶寬是理想奈奎斯特濾波器的最小帶寬。
當α>0時,Rs<=2W。
對於帶通調製信號,例如幅移鍵控ASK、頻移鍵控 PSK 和正交幅度調製 QAM,需要的傳輸帶寬是相應基帶信號的2倍,那麼所需的雙邊帶帶寬BW 和碼元傳輸速率Rs的關係爲:
W = (1+α)Rs


實驗所使用的調製方式爲QPSK,sample rate設置爲100k,sps設置爲2,滾降因子設置爲0.35,所以所需帶寬爲(1+0.35)*50e3/2=33.75kHz,在實際中可略大於計算值。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章