AM 訊號的解碼
# AM 訊號的解碼
這個單元從 AM 訊號的接收開始,逐步說明 GNU Radio 如何利用 Python 來擴充相關的功能。
# 要解碼的 AM 訊號
AM 訊號的取得,基本上可以利用 SDR 接收空中的電波,將其存到檔案。不過目前,實驗室所具有的 RTL-SDR 以及 HackRF One,都無法直接接收 AM 訊號的頻段。因此,我們直接利用網路別人所錄製的檔案,目前所用來解碼的檔案,是 California State University 的 Sharlene Katz 教授網頁所提供的,可以從 這裡下載 (opens new window),這個檔案的錄製的中心頻率為 710 KHz,而抽樣速度為 256 KHz。
# AM 訊號的解碼
要觀察 AM 訊號,可以將其接到頻域的示波器。不過之前提過,如果系統中沒有硬體相關的元件,最好要加上一個 Throttle 元件,才不會佔用過多的 CPU 資源,另外在時間的模擬上,也比較能符合實際的狀況。
取用 File Source, Throttle, 以及 QT GUI Frequency Sink 三個元件,連接如下圖所示:
其中參數設定如下:
- samp_rate: 256e3,這是錄製信號的抽樣速度
- File Source: File 設定成下載檔案的路徑
- QT GUI Frequency SInk
- Grid: Yes
- Autoscale: Yes
- Average: Medium
完成之後,存檔並執行之後,會看到以下的結果:
練習
從訊號的頻譜中觀察,這個訊號檔案可以觀察到頻率範圍為何?相隔的兩個電台頻道,頻率上大概差多少?每個頻道的頻寬大約多少?