用於AM/FM、 ISM 頻段、LoRa 傳輸以及衛星追蹤的RTL-SDR簡介

rtl-sdr

最近,當我再次用一些無線模組和一個Arduino來做實驗時,發現其中一個無法傳輸任何資料。於是我開始思考,怎樣去解決此類問題呢?是代碼出現了問題麼?還是模組本身壞掉了?我需要使用一些便宜的裝置來查看正在傳輸中的內容。而RTL-SDR的作用正是如此。

硬體

軟體

或者

您可以從官方商店購買RTL-SDR加密狗,價格為20美元。並且您需要獲取一個可以接收24 MHz至1.766 GHz頻率範圍內所有廣播的寬頻無線電掃描器。該接收範圍涵蓋了所有AM和FM廣播電臺,以及ham radios,被廣泛使用的ISM 433 MHz頻段和868 MHz頻段,甚至包括了正在運行的船舶、飛機和衛星所傳輸的資料。

 

什麼是軟體無線電?

傳統上來說,無線電接收機僅包含硬體元件,如濾波器、放大器、調製器和解調器等等。從最基本的層面來說,所有這些元件的工作方式都是對一個類比訊號執行各種數學運算操作。但是,隨著電腦處理能力的極大提升,可以將這些操作移至數位域並使用軟體對訊號進行處理。

這種方法具有很大的優勢。首先,它大大減少了所需的專用硬體元件的數量。可以想像,這將大大降低系統的總體成本。另一個巨大的優勢是靈活性。您無需更換一半數量的元件,而只需要編寫一些新的代碼就可以支援新的無線協定或調製。

rtl-sdr

圖1:一個典型SDR電路方塊圖

在理想條件下,軟體無線電(SDR)僅需要三個元件:天線、模數轉換器和數位訊號處理器。您可以將天線連接到轉換器,將輸出傳送到訊號處理器,然後您就可以在電腦上處理資料流程了。不幸的是,理想條件是無法實現的。主要障礙是模數轉換器。事實證明,要設計一種能夠足夠快速、準確地轉換所有訊號(甚至是納伏級)的轉換器是非常困難的。因此,實際情況中SDR接收器需要使用一些硬體元件,最常使用的是寬頻帶、低雜訊的放大器和帶通濾波器。這些元件會對用於數位元件的訊號進行預處理。

 

基本設定

獲取接收器之後,您將需要一個天線以及放置它的地方。這看起來似乎很簡單,但實際上是最關鍵的步驟之一。置於室內的天線也許可以接收訊號較強的FM廣播,但是拾取置於室外的433 MHz射極台的訊號估計就很困難了(即使距離只有幾英尺遠),而且幾乎可以肯定的是,它將無法拾取較弱的訊號,例如衛星傳輸(稍後討論)。我使用的是置於室外的1m偶極子天線,並使用同軸電纜和USB電纜傳輸訊號。

接下來是驅動程式。當您把基於RTL2832的加密狗插入電腦時,它將會安裝預設的驅動程式。但不幸的是,該驅動程式無法讓您用作軟體無線電。為了得到可以用作軟體無線電的應用程式,您需要使用Zadig—一種可以替換USB裝置驅動程式的工具。點擊此處下載exe檔並運行。接下來,將您的RTL加密狗插入一個USB埠。在Zadig工具中,選擇功能表[1]中的“選項(Options)”,然後點擊“列出所有裝置(List All Devices)”。現在,您就能選擇任何USB裝置了,包括在清單中顯示為“內建,介面(介面0)(Bulk-In, Interface (Interface 0))”的RTL加密狗[2]

rtl-sdr

圖2:Zadig驅動程式工具

重要說明:在更換驅動程式之前,請仔細檢查您是否選擇了正確的裝置!例如,您可以檢查“驅動程式”中列出的當前安裝的驅動程式,其中應包含字串“RTL2832U”[3]。如果您更換成了錯誤的裝置,則很有可能會停止工作,想要將其恢復會很困難且很耗時!

確保在第二個文字方塊[4] 中選擇了WinUSB驅動程式,然後點擊“更換驅動程式(Replace Driver)”按鈕[5].。現在,系統會彈出幾次提示,您只需要確認表示信任該驅動程式即可。稍後,您將會收到一條消息,顯示“驅動程式已成功更換(Driver replaced successfully)”,這意味著最艱難的工作已經完成,現在我們可以使用RTL加密狗作為接收器了!

最後還缺少軟體。我們有很多種選擇,有各種支援不同類型接收器的程式,但因為本專案中僅使用了基於RTL2832晶片的加密狗,所以在這裡我將只介紹支援該接收器的軟體。

第一個您可以用來控制接收器的軟體是SDR#。這也許是最廣泛使用的通用SDR了。它可以在Windows上運行,並且是完全免費的。該軟體的使用方法相對簡單,即使是初學者也易於上手。SDR#的最大優點是可以添加大量的外掛程式。

rtl-sdr

圖3:SDR#

在上圖中,您可以看到其環境的外觀。左側是控制台,頂部是頻譜,底部是音效頻譜,螢幕中間是瀑布圖。瀑布圖是對頻譜的即時記錄。如果您看到了一個有趣的訊號,但是在想要調諧的時候已經消失了,該訊號還會顯示在瀑布圖中,您可以在訊號播放的時候嘗試收聽該頻率的訊號。您也可以使用瀑布圖來計算訊號傳輸的時間,以及觀察頻率在傳輸過程中是否發生了變化。

在所有外掛程式的輔助下,SDR#的使用非常簡單並且可以進行很多自訂設定。我個人更喜歡SDR控制台。與SDR#一樣,它非常易於使用,但是相比之下SDR提供了一些其他高級功能,例如衛星追蹤,並且提供了更多的解調模式以及許多可用於音訊記錄、雜訊過濾和頻率管理的附加工具。該應用程式還具有一個額外的優點,就是外觀看起來更美觀精緻。SDR控制台應用程式是可以免費下載的,但是如果您很喜歡該應用程式也可以提供一些資助。

rtl-sdr

圖4:SDR控制台

因為我真的很喜歡SDR控制台應用程式,所以在本課程剩餘部分的範例中我都將使用該應用程式。當然,您也可以使用任何其他自己喜歡的SDR軟體,絕大多數SDR軟體的外觀和使用方法都是相似的。如果想要查詢其他SDR軟體(Windows、Linux、 Mac、Android或一些基於網頁的工具),您可以訪問https://www.rtl-sdr.com/big-list-rtl-sdr-supported-software/.