软件定义无线电实战入门 第6篇:SDR硬件与信号物理

摘要

本文将带你进入真实硬件的世界,深入理解SDR硬件的工作原理和无线电信号的物理特性。你将学习电磁波的基本原理、频谱的划分规律、带宽与噪声的概念,以及常见SDR设备的使用方法。这是从仿真走向实战的关键一步。

学习目标

阅读完本文后,你将能够:

  • 理解电磁波:掌握电磁波的产生、传播和接收原理
  • 认识频谱划分:了解各频段的特性和应用场景
  • 计算信号带宽:理解带宽对信号质量的影响
  • 分析噪声影响:掌握信噪比的概念和改善方法
  • 使用SDR硬件:了解HackRF、RTL-SDR等设备的特性
  • 优化接收性能:正确设置增益和采样参数

一、电磁波基础

无线电的本质是电磁波,理解电磁波是掌握SDR的基础。

1.1 电磁波的产生

电磁波由电场和磁场的交替变化产生。

flowchart TD
    subgraph EM_Wave[电磁波产生]
        direction TB
        Antenna["天线导体<br/>交流电流"]
        E_Field["电场E<br/>由电压产生<br/>随时间变化"]
        H_Field["磁场H<br/>由电流产生<br/>随时间变化"]
        Coupling["电磁耦合<br/>E产生H<br/>H产生E"]
        Prop["传播<br/>相互维持<br/>向外传播"]
    end

    subgraph Maxwell[麦克斯韦方程组]
        M1["变化的电场<br/>产生磁场"]
        M2["变化的磁场<br/>产生电场"]
        M3["电磁相互感应<br/>交替传播"]
        M4["传播速度<br/>光速c<br/>3×10^8 m/s"]

        M1 --> M2
        M2 --> M3
        M3 --> M4
    end

    subgraph Visualization[可视化]
        Perp["电场⊥磁场<br/>互相垂直<br/>⊥传播方向"]
        Phase["相位相同<br/>同相振荡<br/>能量传播"]

        Perp --> M1
        Phase --> M3
    end

    EM_Wave -.->|基于| Maxwell
    Maxwell -.->|理解| Visualization

    style E_Field fill:#ffcdd2
    style H_Field fill:#c8e6c9
    style Coupling fill:#bbdefb

图表讲解:电磁波由电场和磁场组成,两者相互垂直且都垂直于传播方向。当交流电流流过天线时,会在天线周围产生变化的磁场(安培定律),变化的磁场又会产生变化的电场(法拉第定律),这个变化的电场又产生变化的磁场,如此循环往复,电磁波就向外传播。麦克斯韦方程组描述了这个过程的数学原理。电磁波的传播速度是光速(约3×10^8 m/s),这是由真空的介电常数和磁导率决定的。理解电磁波的这种本质有助于理解为什么天线设计需要考虑尺寸(与波长相关)和极化(电场方向)。

1.2 频率与波长

频率和波长是电磁波的两个基本参数。

flowchart TD
    subgraph Freq_Wave[频率与波长]
        direction TB
        Freq["频率f<br/>每秒振荡次数<br/>单位: Hz"]
        Wave["波长λ<br/>空间周期<br/>单位: m"]
        Relation["关系:<br/>λ = c / f<br/>c = 3×10^8 m/s"]
        Inverse["反比关系:<br/>频率高 → 波长短<br/>频率低 → 波长长"]
    end

    subgraph Examples[实际例子]
        E1["AM广播:<br/>f ≈ 1MHz<br/>λ ≈ 300m"]
        E2["FM广播:<br/>f ≈ 100MHz<br/>λ ≈ 3m"]
        E3["Wi-Fi:<br/>f ≈ 2.4GHz<br/>λ ≈ 12.5cm"]
        E4["卫星:<br/>f ≈ 10GHz<br/>λ ≈ 3cm"]

        E1 -->|低频长波| Relation
        E2 -->|VHF| Relation
        E3 -->|UHF| Relation
        E4 -->|微波| Relation
    end

    subgraph Antenna_Size[天线尺寸]
        Rule["天线尺寸<br/>与波长相关"]
        Quarter["1/4波长:<br/>最常见基本天线"]
        Half["1/2波长:<br/>偶极子标准"]
        Example1["FM天线:<br/>λ/4 ≈ 75cm<br/>标准天线长度"]
        Example2["Wi-Fi天线:<br/>λ/4 ≈ 3cm<br/>小型天线"]

        Rule --> Quarter
        Quarter --> Half
        Quarter --> Example1
        Quarter --> Example2
    end

    Freq_Wave -.->|应用| Examples
    Freq_Wave -.->|决定| Antenna_Size

    style Freq fill:#bbdefb
    style Wave fill:#c8e6c9
    style Quarter fill:#e1f5fe

图表讲解:频率和波长通过光速相互关联(λ = c/f)。低频信号波长长(如AM广播的1MHz对应300m波长),高频信号波长短(如Wi-Fi的2.4GHz对应12.5cm波长)。这个关系对天线设计至关重要——天线尺寸通常是波长的分数(1/4或1/2),所以不同频段需要不同尺寸的天线。FM广播天线通常是75cm左右(100MHz的1/4波长),Wi-Fi天线只有几厘米(2.4GHz的1/4波长)。理解这个关系可以解释为什么不同频段的设备天线尺寸差异巨大——调频收音机的天线很长,而Wi-Fi路由器的天线很短。

1.3 极化

电磁波的极化方向影响接收效果。

flowchart TD
    subgraph Polarization[电磁波极化]
        direction TB
        Linear["线极化<br/>电场方向固定<br/>最常见"]
        Circular["圆极化<br/>电场旋转<br/>卫星常用"]
        Elliptical["椭圆极化<br/>介于两者之间<br/>实际情况"]
    end

    subgraph Linear_Pol[线极化类型]
        Vert["垂直极化<br/>E场垂直<br/>FM/TV常用"]
        Horiz["水平极化<br/>E场水平<br/>AM常用"]
        Slant["倾斜极化<br/>E场倾斜<br/>特殊情况"]

        Vert -->|常见| Linear
        Horiz -->|常见| Linear
        Slant -->|特殊情况| Linear
    end

    subgraph Match[极化匹配]
        Match_P["极化匹配:<br/>发射=接收<br/>最大功率传输"]
        Mismatch["极化失配:<br/>相互垂直<br/>理论零接收"]
        Cross["交叉极化:<br/>故意使用<br/>抑制干扰"]

        Match_P -.->|理想| Linear_Pol
        Mismatch -.->|问题| Linear_Pol
        Cross -.->|应用| Linear_Pol
    end

    subgraph Practical[实用建议]
        P1["FM天线:<br/>垂直极化<br/>天线竖直"]
        P2["AM天线:<br/>水平/环形<br/>方向灵活"]
        P3["Wi-Fi:<br/>垂直极化<br/>路由器天线竖直"]

        P1 -.->|设置| Vert
        P2 -.->|设置| Horiz
        P3 -.->|设置| Vert
    end

    Polarization -.->|类型| Linear_Pol
    Linear_Pol -.->|需要| Match
    Match -.->|实践| Practical

    style Linear fill:#c8e6c9
    style Match_P fill:#a5d6a7
    style Mismatch fill:#ffcdd2

图表讲解:极化描述电磁波的电场方向。线极化是最常见的——电场保持在固定的平面内。垂直极化意味着电场上下振动,水平极化意味着电场左右振动。接收天线必须与发射天线的极化匹配才能获得最佳接收——垂直极化的天线接收垂直极化的信号效果最好,接收水平极化的信号效果很差(理论上完全失配时接收为零)。这就是为什么调频收音机天线通常竖直放置(FM广播使用垂直极化),而AM天线可以是水平的或环形(AM广播使用水平极化)。圆极化(电场旋转)常用于卫星通信,因为卫星姿态可能变化,圆极化不要求精确对准。理解极化有助于优化天线放置和方向。


二、频谱划分与应用

电磁频谱是有限的自然资源,需要合理划分和管理。

2.1 电磁频谱全景

从直流到光线的完整频谱。

flowchart TD
    subgraph Spectrum_Full[电磁频谱全景]
        direction TB
        VLF["VLF<br/>3-30kHz<br/>甚低频<br/>潜艇通信"]
        LF["LF<br/>30-300kHz<br/>低频<br/>长波广播"]
        MF["MF<br/>300kHz-3MHz<br/>中频<br/>AM广播"]
        HF["HF<br/>3-30MHz<br/>高频<br/>短波广播"]
        VHF["VHF<br/>30-300MHz<br/>甚高频<br/>FM/TV"]
        UHF["UHF<br/>300MHz-3GHz<br/>特高频<br/>手机/Wi-Fi"]
        SHF["SHF<br/>3-30GHz<br/>超高频<br/>卫星/雷达"]
        EHF["EHF<br/>30-300GHz<br/>极高频<br/>毫米波"]
    end

    subgraph Propagation[传播特性]
        P_Ground["地波传播<br/>VLF/LF/MF<br/>沿地球表面"]
        P_Sky["天波传播<br/>HF<br/>电离层反射"]
        P_Line["视线传播<br/>VHF及以上<br/>直线传播"]
        P_Space["空间传播<br/>卫星<br/>穿越大气"]

        P_Ground -.->|低频| Spectrum_Full
        P_Sky -.->|中频| Spectrum_Full
        P_Line -.->|高频| Spectrum_Full
        P_Space -.->|微波| Spectrum_Full
    end

    subgraph Applications[典型应用]
        A_Sub["潜艇:<br/>VLF穿透海水"]
        A_AM["AM广播:<br/>MF覆盖广"]
        A_Ham["业余:<br/>HF全球通信"]
        A_FM["FM/TV:<br/>VHF高质量"]
        A_Cell["蜂窝:<br/>UHF容量大"]
        A_Sat["卫星:<br/>SHF宽带"]

        A_Sub -.->|应用| VLF
        A_AM -.->|应用| MF
        A_Ham -.->|应用| HF
        A_FM -.->|应用| VHF
        A_Cell -.->|应用| UHF
        A_Sat -.->|应用| SHF
    end

    Spectrum_Full -.->|特性| Propagation
    Spectrum_Full -.->|用途| Applications

    style VHF fill:#c8e6c9
    style UHF fill:#fff9c4
    style SHF fill:#ffe0b2

图表讲解:电磁频谱从极低频到极高频跨越了很大范围。低频(VLF/LF)波长很长(几十公里),能够沿地球表面传播很远,穿透海水,用于潜艇通信。中频(MF)的AM广播利用地波传播,覆盖范围可达几百公里。高频(HF)会被电离层反射,可以实现超远距离通信(短波广播可全球覆盖)。甚高频(VHF)及以上主要是视线传播,受地球曲率限制,但适合高质量广播(FM/TV)和蜂窝网络。特高频(UHF)提供更多带宽,适合数据密集应用(Wi-Fi、LTE)。超高频(SHF)用于卫星和雷达,提供巨大的带宽。理解不同频段的传播特性有助于选择合适的通信方式。

2.2 广播频段详解

我们常用的广播频段有特定特点。

flowchart TD
    subgraph Broadcast_Bands[广播频段详情]
        direction TB
        AM_Band["AM广播<br/>535-1605kHz<br/>中频MF"]
        FM_Band["FM广播<br/>88-108MHz<br/>甚高频VHF"]
        TV_Band["电视广播<br/>54-806MHz<br/>VHF/UHF"]
    end

    subgraph AM_Detail[AM广播特性]
        AM_Freq["频率:<br/>中频535-1605kHz"]
        AM_Chan["频道:<br/>10kHz间隔<br/>~100个频道"]
        AM_Quality["音质:<br/>有限<br/>~5kHz音频"]
        AM_Cover["覆盖:<br/>地波传播<br/>几百公里"]
        AM_Cost["成本:<br/>低<br/>简单设备"]

        AM_Freq -->|决定| AM_Chan
        AM_Chan -->|导致| AM_Quality
        AM_Freq -->|决定| AM_Cover
        AM_Freq -->|影响| AM_Cost
    end

    subgraph FM_Detail[FM广播特性]
        FM_Freq["频率:<br/>甚高频88-108MHz"]
        FM_Chan["频道:<br/>200kHz间隔<br/>~100个频道"]
        FM_Quality["音质:<br/>优秀<br/>~15kHz音频"]
        FM_Cover["覆盖:<br/>视线传播<br/>~100公里"]
        FM_Cost["成本:<br/>中等<br/>较复杂设备"]

        FM_Freq -->|决定| FM_Chan
        FM_Chan -->|带来| FM_Quality
        FM_Freq -->|决定| FM_Cover
        FM_Freq -->|影响| FM_Cost
    end

    Broadcast_Bands -.->|分析| AM_Detail
    Broadcast_Bands -.->|分析| FM_Detail

    style AM_Band fill:#e1bee7
    style FM_Band fill:#c8e6c9
    style AM_Quality fill:#ffcdd2
    style FM_Quality fill:#a5d6a7

图表讲解:AM和FM广播频段的设计反映了它们的不同目标。AM广播使用中频(535-1605kHz),频道间隔10kHz,总共约100个频道。中频信号的地波传播特性允许覆盖几百公里,适合全国性广播网络。但AM只有约10kHz带宽,音频带宽限制在5kHz,音质有限。FM广播使用甚高频(88-108MHz),频道间隔200kHz,总共约100个频道。VHF信号是视线传播,覆盖范围约100公里(取决于天线高度和地形),但提供约200kHz带宽,音频带宽可达15kHz,音质接近CD。AM设备简单便宜,FM设备稍复杂但音质更好。这些差异解释了为什么AM适合语音和新闻,FM适合音乐。

2.2 ISM频段

ISM(工业、科学、医疗)频段允许无需授权使用。

flowchart TD
    subgraph ISM_Bands[ISM频段]
        direction TB
        ISM1["ISM 1:<br/>6.789MHz<br/>RFID"]
        ISM2["ISM 2:<br/>13.56MHz<br/>NFC/感应"]
        ISM3["ISM 3:<br/>27MHz<br/>工业"]
        ISM4["ISM 4:<br/>915MHz<br/>物联网"]
        ISM5["ISM 5:<br/>2.4GHz<br/>Wi-Fi/蓝牙"]
        ISM6["ISM 6:<br/>5.8GHz<br/>Wi-Fi"]
    end

    subgraph ISM_Rules[ISM规则]
        R1["无需授权:<br/>任意使用<br/>不申请许可"]
        R2["低功率:<br/>功率限制<br/>避免干扰"]
        R3["容忍干扰:<br/>必须接受<br/>现有干扰"]
        R4["不保护:<br/>不受保护<br/>可能被干扰"]

        R1 --> R2
        R2 --> R3
        R3 --> R4
    end

    subgraph Popular[热门应用]
        WiFi_24["2.4GHz Wi-Fi:<br/>最广泛<br/>拥挤"]
        BT_24["蓝牙:<br/>2.4GHz<br/>可穿戴"]
        Zigbee["Zigbee:<br/>915/868MHz<br/>智能家居"]

        WiFi_24 -.->|使用| ISM5
        BT_24 -.->|使用| ISM5
        Zigbee -.->|使用| ISM4
    end

    ISM_Bands -.->|规则| ISM_Rules
    ISM_Bands -.->|应用| Popular

    style ISM5 fill:#c8e6c9
    style ISM6 fill:#fff9c4
    style R2 fill:#ffcdd2
    style R4 fill:#ffcdd2

图表讲解:ISM频段是为工业、科学和医疗设备预留的,允许无授权使用。最著名的ISM频段是2.4GHz,Wi-Fi、蓝牙、Zigbee等无数设备都在这个频段。ISM频段的使用规则是:你可以自由使用,但必须使用低功率,且必须接受该频段的所有现有干扰(你不受到保护)。这就是为什么2.4GHz Wi-Fi可能很慢——太多设备竞争频谱,相互干扰。另一个常用的ISM频段是915MHz(北美)或868MHz(欧洲),用于Zigbee、LoRa等低功耗广域网技术。13.56MHz用于NFC和RFID标签。5.8GHz是另一个Wi-Fi频段,通常比2.4GHz空旷但覆盖范围稍小。


三、带宽与信号质量

带宽是信号质量的关键参数,需要仔细理解。

3.1 带宽的定义

带宽有几种不同的定义方式。

flowchart TD
    subgraph BW_Def[带宽定义]
        direction TB
        AbsBW["绝对带宽:<br/>最高频率 - 最低频率"]
        NulledBW["零点带宽:<br/>主瓣宽度<br/>FFT第一个零点"]
        PowerBW["功率带宽:<br/>包含99%功率<br/>实际有效"]
        HalfPower["半功率带宽:<br/>-3dB带宽<br/>功率减半"]
    end

    subgraph Examples[带宽示例]
        Ex1["语音信号:<br/>300Hz - 3.4kHz<br/>绝对BW ~3.1kHz"]
        Ex2["FM广播:<br/>0 - 15kHz音频<br/>RF带宽 ~200kHz"]
        Ex3["LTE 20MHz:<br/>载波间隔<br/>实际可用 <20MHz"]

        Ex1 -->|测量| HalfPower
        Ex2 -->|计算| NulledBW
        Ex3 -->|定义| PowerBW
    end

    subgraph Importance[带宽重要性]
        Imp1["信息容量:<br/>香农公式<br/>带宽 × SNR"]
        Imp2["频谱效率:<br/>bit/s/Hz<br/>单位带宽数据率"]
        Imp3["成本:<br/>频谱是<br/>有限资源"]

        Imp1 -.->|决定| BW_Def
        Imp2 -.->|优化| BW_Def
        Imp3 -.->|约束| BW_Def
    end

    BW_Def -.->|应用| Examples
    BW_Def -.->|意义| Importance

    style AbsBW fill:#bbdefb
    style PowerBW fill:#c8e6c9
    style Imp1 fill:#e1f5fe

图表讲解:带宽看似简单,但有多种定义方式,需要注意。绝对带宽是最直观的——信号占用的频率范围。半功率带宽(-3dB带宽)是常用的工程定义——功率下降到一半的频率点之间的宽度。零点带宽基于信号频谱的主瓣宽度(FFT的第一个零点)。功率带宽包含信号99%功率的频率范围。对于不同的应用,可能使用不同的定义。在SDR中,我们通常关心绝对带宽和半功率带宽。带宽的重要性体现在信息论中——香农公式C = B·log₂(1+SNR),其中C是信道容量(数据率),B是带宽,SNR是信噪比。带宽直接决定数据传输能力,这就是为什么现代通信系统不断追求更大带宽。

3.2 带宽与信号质量

带宽直接影响可传输的信号质量。

flowchart TD
    subgraph BW_Quality[带宽与质量]
        direction TB
        Narrow["窄带宽:<br/>低数据率<br/>受限制"]
        Medium["中等带宽:<br/>平衡<br/>实用"]
        Wide["宽带宽:<br/>高数据率<br/>高质量"]
    end

    subgraph Audio_BW[音频带宽]
        AB1["电话语音:<br/>300Hz-3.4kHz<br/>~3kHz带宽<br/>可理解"]
        AB2["AM广播:<br/>50Hz-5kHz<br/>~5kHz带宽<br/>一般音质"]
        AB3["FM广播:<br/>50Hz-15kHz<br/>~15kHz带宽<br/>良好音质"]
        AB4["CD音质:<br/>20Hz-20kHz<br/>~20kHz带宽<br/>优秀音质"]

        AB1 -->|最低| Narrow
        AB2 -->|中等| Medium
        AB3 -->|良好| Wide
        AB4 -->|最好| Wide
    end

    subgraph Video_BW[视频带宽]
        VB1["低分辨率:<br/>~1MHz<br/>可接受"]
        VB2["标清:<br/>~6MHz<br/>DVD质量"]
        VB3["高清:<br/>~20MHz<br/>HDTV"]
        VB4["4K:<br/>~40MHz+<br/>超高清"]

        VB1 -->|基础| Narrow
        VB2 -->|标准| Medium
        VB3 -->|现代| Wide
        VB4 -->|高端| Wide
    end

    BW_Quality -.->|音频| Audio_BW
    BW_Quality -.->|视频| Video_BW

    style AB1 fill:#ffcdd2
    style AB3 fill:#c8e6c9
    style AB4 fill:#a5d6a7
    style VB1 fill:#ffcdd2
    style VB3 fill:#c8e6c9
    style VB4 fill:#a5d6a7

图表讲解:带宽直接决定信号质量。对于音频,电话语音只需要约3kHz带宽,人声的可理解度足够。AM广播提供约5kHz带宽,音质尚可,适合语音和一般音乐。FM广播提供约15kHz带宽,接近CD的20kHz,音质良好,能满足大多数音乐。对于视频,带宽需求更大——标清电视需要约6MHz带宽,高清需要约20MHz,4K超高清可能需要40MHz以上。这就是为什么从模拟电视到数字电视的过渡需要更大带宽,但数字调制的高频谱效率使其成为可能。在SDR应用中,选择合适的带宽很重要——太窄会损失质量,太宽会浪费频谱资源并增加噪声和干扰。

3.3 带宽效率

不同调制方式的带宽效率差异很大。

flowchart TD
    subgraph BW_Eff[带宽效率]
        direction TB
        Eff_Def["带宽效率:<br/>bit/s/Hz<br/>单位带宽数据率"]
        Spec_Eff["频谱效率:<br/>bit/s/Hz/Hz<br/>单位面积数据率"]
    end

    subgraph Comparison[调制方式对比]
        Mod1["AM/FM:<br/>模拟调制<br/>~1 bit/s/Hz<br/>低效率"]
        Mod2["QPSK:<br/>4状态调制<br/>~2 bit/s/Hz<br/>中等"]
        Mod3["16QAM:<br/>16状态调制<br/>~4 bit/s/Hz<br/>良好"]
        Mod4["1024QAM:<br/>1024状态<br/>~10 bit/s/Hz<br/>高效率"]
        Mod5["OFDM+MIMO:<br/>现代技术<br/>~20+ bit/s/Hz<br/>极高"]

        Mod1 -->|最低| Eff_Def
        Mod2 -->|2倍| Eff_Def
        Mod3 -->|4倍| Eff_Def
        Mod4 -->|10倍| Eff_Def
        Mod5 -->|20倍+| Eff_Def
    end

    subgraph Tradeoff[效率权衡]
        T1["高效率:<br/>需要更高SNR<br/>复杂度高"]
        T2["低效率:<br/>鲁棒<br/>简单实现"]

        T1 -.->|代价| Mod4
        T2 -.->|优势| Mod1
    end

    BW_Eff -.->|比较| Comparison
    Comparison -.->|权衡| Tradeoff

    style Mod1 fill:#ffcdd2
    style Mod3 fill:#fff9c4
    style Mod5 fill:#c8e6c9
    style T1 fill:#ffcdd2

图表讲解:带宽效率是衡量调制方式的重要指标,表示单位带宽能传输的数据率。模拟调制(AM/FM)的带宽效率很低,约1 bit/s/Hz——这是模拟通信的根本限制。数字调制可以达到更高效率:QPSK为2 bit/s/Hz,16QAM为4 bit/s/Hz,1024QAM可达10 bit/s/Hz。现代技术如OFDM结合MIMO(多天线)可以达到20+ bit/s/Hz的频谱效率。高效率的代价是需要更高的SNR和更复杂的实现——1024QAM需要非常好的信道条件(低噪声、低干扰),否则误码率会很高。在SNR较差的环境下,QPSK甚至BPSK(1 bit/s/Hz)可能更可靠。这就是为什么现代通信系统使用自适应调制——根据信道条件选择合适的调制方式。


四、噪声与信噪比

噪声是通信质量的永恒敌人,需要深入理解。

4.1 噪声来源

噪声来自多个方面。

flowchart TD
    subgraph Noise_Sources[噪声来源]
        direction TB
        Thermal["热噪声<br/>电子热运动<br/>不可避免"]
        Shot["散粒噪声<br/>载流子随机<br/>半导体器件"]
        Inter["干扰噪声<br/>其他设备<br/>人为干扰"]
        Quant["量化噪声<br/>ADC有限精度<br/>数字系统"]
        Atmo["大气噪声<br/>雷电<br/>自然现象"]
    end

    subgraph Thermal_Detail[热噪声详解]
        T1["产生:<br/>电阻/导体<br/>电子热运动"]
        T2["与温度相关:<br/>kT<br/>开尔文温度"]
        T3["与带宽相关:<br/>kTB<br/>B是带宽"]
        T4["功率谱密度:<br/>kT<br/>白噪声<br/>平坦频谱"]

        T1 --> T2
        T2 --> T3
        T3 --> T4
    end

    subgraph Reduction[降噪方法]
        R1["热噪声:<br/>冷却元件<br/>低噪声器件"]
        R2["干扰:<br/>屏蔽<br/>滤波"]
        R3["量化:<br/>更多位数<br/>过采样"]
        R4["大气:<br/>编码<br/>交织"]

        R1 -.->|方法| Thermal
        R2 -.->|方法| Inter
        R3 -.->|方法| Quant
        R4 -.->|方法| Atmo
    end

    Noise_Sources -.->|来源| Thermal_Detail
    Noise_Sources -.->|减少| Reduction

    style Thermal fill:#bbdefb
    style Inter fill:#ffcdd2
    style R2 fill:#c8e6c9

图表讲解:噪声来源多样,需要不同应对策略。热噪声来自电子的热运动,是温度的函数——温度越高,热噪声越大。这是所有电子系统固有的,只能通过降低温度(冷却)或使用低噪声器件来减少。散粒噪声来自半导体器件中载流子的随机穿越,与电流相关。干扰噪声来自其他电子设备(电源、电机、开关等),可以通过屏蔽、滤波和频谱管理来减少。量化噪声来自ADC的有限精度,可以通过增加位数或使用过采样(将量化噪声分散到更大带宽)来改善。大气噪声来自雷电等自然现象,可以通过编码和交织来对抗。在SDR系统中,热噪声和干扰噪声是最主要的噪声来源。

4.2 信噪比(SNR)

SNR是信号质量的核心指标。

flowchart TD
    subgraph SNR_Def[信噪比定义]
        direction TB
        S_Power["信号功率<br/>有用信号能量"]
        N_Power["噪声功率<br/>不需要的能量"]
        Ratio["比率:<br/>SNR = S/N"]
        dB["dB单位:<br/>SNR(dB) = 10log10(S/N)"]
    end

    subgraph SNR_Scale[SNR质量尺度]
        Excellent["优秀: &gt;40dB<br/>非常清晰<br/>接近完美"]
        Good["良好: 25-40dB<br/>清晰<br/>少量噪声"]
        Fair["一般: 15-25dB<br/>可理解<br/>明显噪声"]
        Poor["差: 10-15dB<br/>勉强<br/>很多噪声"]
        Terrible["极差: &lt;10dB<br/>难以理解<br/>通信边缘"]
        Threshold["数字门限:<br/>取决于调制<br/>QPSK ~10-15dB<br/>64QAM ~25dB"]

        Excellent --> Good --> Fair --> Poor --> Terrible
        Fair --> Threshold
        Good --> Threshold
    end

    subgraph Examples2[实际SNR值]
        E1["FM广播:<br/>~50dB<br/>非常高质量"]
        E2["AM广播:<br/>~30dB<br/>可接受质量"]
        E3["手机(良好):<br/>~15-20dB<br/>可接受"]
        E4["手机(边缘):<br/>~5-10dB<br/>通话困难"]
        E5["卫星GPS:<br/>-5 to 10dB<br/>需要纠错"]

        E1 -->|参考| Excellent
        E2 -->|参考| Good
        E3 -->|参考| Fair
        E4 -->|参考| Terrible
        E5 -->|参考| Threshold
    end

    SNR_Def -.->|评估| SNR_Scale
    SNR_Scale -.->|应用| Examples2

    style Excellent fill:#a5d6a7
    style Fair fill:#ffcdd2
    style Terrible fill:#ef5350
    style Threshold fill:#fff9c4

图表讲解:SNR是信号质量的首要指标。对于语音通信,10-15dB的SNR就能实现可理解的通信,20-25dB是良好质量,40dB以上是优秀质量。数字通信系统对SNR的要求取决于调制方式——QPSK需要约10-15dB的SNR,而64QAM可能需要25dB以上才能可靠工作。这是因为高阶调制方式需要区分更多的信号状态,对噪声更敏感。GPS信号的SNR甚至可以是负值(-5dB),这意味着噪声功率大于信号功率!但这可能吗?是的,因为GPS使用扩频技术和长积分时间,可以从远低于噪声的信号中提取信息。理解SNR对于设置接收机增益、选择调制方式和预期性能都很重要。

4.3 噪声系数与噪声图

噪声系数描述接收链路对SNR的影响。

flowchart TD
    subgraph NF[噪声系数]
        direction TB
        NF_Def["定义:<br/>输入SNR - 输出SNR<br/>单位: dB"]
        NF_Mean["意义:<br/>链路恶化SNR<br/>的量"]
        Ideal["理想:<br/>NF = 0dB<br/>不恶化"]
        Real["实际:<br/>NF > 0dB<br/>必然恶化"]
    end

    subgraph NF_Calc[噪声系数计算]
        Stage1["第1级:<br/>增益G1<br/>噪声系数F1"]
        Stage2["第2级:<br/>增益G2<br/>噪声系数F2"]
        Formula["Friis公式:<br/>F_total = F1 + (F2-1)/G1"]
        Meaning["第1级最关键:<br/>如果G1大<br/>后续F影响小"]

        Stage1 --> Formula
        Stage2 --> Formula
        Formula --> Meaning
    end

    subgraph LNA[低噪声放大器]
        LNA_Purpose["用途:<br/>天线后第1级<br/>高增益+低NF"]
        LNA_Gain["增益:<br/>20-30dB<br/>降低后续NF影响"]
        LNA_NF["噪声系数:<br/>1-3dB<br/>非常低"]

        LNA_Purpose -.->|实现| LNA_Gain
        LNA_Purpose -.->|实现| LNA_NF
    end

    NF -.->|计算| NF_Calc
    NF_Calc -.->|前端| LNA

    style Ideal fill:#c8e6c9
    style Real fill:#ffcdd2
    style Stage1 fill:#bbdefb
    style LNA fill:#e1f5fe

图表讲解:噪声系数(Noise Figure, NF)描述接收链路恶化SNR的程度。理想情况下,NF = 0dB(不恶化SNR),实际中NF总是大于0dB(链路会增加噪声)。Friis公式告诉我们,链路的总噪声系数主要由第一级决定——如果第一级有高增益,后续级的噪声系数影响会很小。这就是为什么LNA(低噪声放大器)如此重要——它是天线后的第一级放大器,提供20-30dB增益,同时只有1-3dB的噪声系数。LNA的高增益意味着后续级(混频器、滤波器、ADC)的噪声被”淹没”在放大后的信号中,对总SNR影响很小。没有LNA,整个接收链路的噪声系数可能高达20-30dB,严重恶化SNR。理解噪声系数对于设计接收前端至关重要。


五、常见SDR硬件

现在让我们了解实际的SDR硬件设备。

5.1 RTL-SDR

RTL-SDR是最便宜的SDR入门设备。

flowchart TD
    subgraph RTL[RTL-SDR]
        direction TB
        Cost["价格:<br/>$20-30<br/>最便宜"]
        Freq_Range["频率范围:<br/>24MHz - 1.7GHz<br/>覆盖广泛"]
        Sample["采样率:<br/>2.4MHz max<br/>可用~2MHz"]
        BW["带宽:<br/>~2MHz<br/>适中"]
        Res["分辨率:<br/>8位<br/>中等"]
        Duplex["双工:<br/>半双工<br/>不能同时收发"]
    end

    subgraph RTL_Pro[RTL-SDR优势]
        P1["低成本:<br/>入门门槛低"]
        P2["社区支持:<br/>软件丰富<br/>文档多"]
        P3["体积小:<br/>USB供电<br/>便携"]
        P4["足够性能:<br/>学习足够<br/>广播监听"]

        P1 -->|最大| Cost
        P2 -->|资源| Freq_Range
        P3 -->|方便| Sample
        P4 -->|应用| BW
    end

    subgraph RTL_Limit[RTL-SDR限制]
        L1["带宽有限:<br/>2MHz对于<br/>宽应用不够"]
        L2["分辨率低:<br/>8位动态范围<br/>~48dB"]
        L3["时钟漂移:<br/>需要校准<br/>可能不稳定"]
        L4["半双工:<br/>不能同时<br/>收发"]

        L1 -->|限制| BW
        L2 -->|限制| Res
        L3 -->|问题| Sample
        L4 -->|限制| Duplex
    end

    RTL -.->|优点| RTL_Pro
    RTL -.->|缺点| RTL_Limit

    style Cost fill:#a5d6a7
    style P1 fill:#a5d6a7
    style L1 fill:#ffcdd2

图表讲解:RTL-SDR是基于RTL2832U(原本用于DVB-T电视接收机)的芯片,被重新发现为SDR设备。它最大的优势是价格——只需20-30美元,是入门SDR的最佳选择。24MHz到1.7GHz的频率范围覆盖了大多数广播频段(AM、FM、航空、业余、P25等),非常灵活。2.4MHz的最大采样率可用约2MHz带宽,对于广播监听足够。8位分辨率提供约48dB动态范围,对于大多数应用可接受。RTL-SDR的社区支持非常丰富,几乎所有SDR软件都支持它。主要限制是带宽和分辨率——对于更宽带宽或更高动态范围的应用,需要更专业的设备。时钟漂移也是一个问题,可能需要定期校准。

5.2 HackRF One

HackRF One是流行的中端SDR设备。

flowchart TD
    subgraph HackRF[HackRF One]
        direction TB
        Cost_H["价格:<br/>$300左右<br/>中端设备"]
        Freq_H["频率范围:<br/>1MHz - 6GHz<br/>超宽范围"]
        Sample_H["采样率:<br/>20MHz max<br/>很宽"]
        BW_H["带宽:<br/>~20MHz<br/>非常宽"]
        Res_H["分辨率:<br/>8位<br/>中等"]
        Dup_H["双工:<br/>半双工<br/>不能同时收发"]
        Port["端口:<br/>SMA<br/>专业连接"]
    end

    subgraph HackRF_Pro[HackRF优势]
        HP1["超宽带宽:<br/>20MHz采样<br/>覆盖整个频段"]
        HP2["超宽频率:<br/>1MHz-6GHz<br/>几乎所有频段"]
        HP3["半双工:<br/>快速切换<br/>收发之间"]
        HP4["USB供电:<br/>便携<br/>灵活使用"]
        HP5["开源硬件:<br/>设计开放<br/>可DIY"]

        HP1 -->|最大| Sample_H
        HP2 -->|广| Freq_H
        HP3 -->|快速| Dup_H
        HP5 -->|开放| Port
    end

    subgraph HackRF_Limit[HackRF限制]
        HL1["8位分辨率:<br/>动态范围有限<br/>~48dB"]
        HL2["USB 2.0:<br/>带宽限制<br/>可能瓶颈"]
        HL3["半双工:<br/>不能同时收发<br/>需要切换"]
        HL4["无内部滤波:<br/>需要外部<br/>抗混叠"]

        HL1 -->|限制| Res_H
        HL2 -->|限制| Sample_H
        HL3 -->|限制| Dup_H
        HL4 -->|注意| BW_H
    end

    HackRF -.->|优点| HackRF_Pro
    HackRF -.->|缺点| HackRF_Limit

    style Sample_H fill:#a5d6a7
    style HP1 fill:#a5d6a7
    style HL1 fill:#ffcdd2

图表讲解:HackRF One是功能强大的中端SDR,价格约300美元。最大特点是超宽的频率范围(1MHz-6GHz)和超宽的带宽(20MHz采样率),这意味着你可以用它接收从AM广播到Wi-Fi的所有信号。20MHz带宽足够宽,可以同时接收多个信道或进行宽带频谱分析。半双工意味着不能同时接收和发射,但收发切换很快(微秒级),对于时分双工(TDD)应用足够。USB 2.0接口在20MHz采样率时可能成为瓶颈,但通常能应付。主要限制是8位分辨率(与RTL-SDR相同),动态范围有限。HackRF是开源硬件,设计文件公开,可以DIY或改进版本。对于学习SDR和大多数应用,HackRF是理想选择。

5.3 其他SDR设备

除了RTL和HackRF,还有其他选择。

flowchart TD
    subgraph Other_SDR[其他SDR设备]
        direction TB
        Pluto["PlutoSDR:<br/>$150左右<br/>ADI学习模块"]
        Lime["LimeSDR:<br/>$300+<br/>高性能"]
        Ettus["Ettus USRP:<br/>$1000+<br/>专业级"]
        Airspy["Airspy:<br/>$200+<br/>高性能接收"]
    end

    subgraph Comparison[设备对比]
        Para1["价格:<br/>RTL &lt; Pluto &lt; Airspy &lt; Lime &lt; HackRF &lt; USRP"]
        Para2["带宽:<br/>RTL(2M) &lt; Airspy(10M) &lt; Lime/HackRF(20M)"]
        Para3["分辨率:<br/>RTL/HackRF(8bit) &lt; Pluto/USRP(12bit)"]
        Para4["频率:<br/>RTL(1.7G) &lt; others(6G+)"]
        Para5["双工:<br/>Pluto(全双工) &lt; others(半双工)"]

        Para1 -->|由低到高| Summary[对比总结]
        Para2 -->|由窄到宽| Summary
        Para3 -->|由低到高| Summary
        Para4 -->|由低到高| Summary
        Para5 -->|选择| Summary
    end

    subgraph Recommend[推荐选择]
        Rec1["入门学习:<br/>RTL-SDR<br/>便宜够用"]
        Rec2["进阶通用:<br/>HackRF/LimeSDR<br/>平衡性能价格"]
        Rec3["专业应用:<br/>USRP/Ettus<br/>高性能专业"]
        Rec4["教育实验:<br/>PlutoSDR<br/>半双工够用<br/>官方支持"]

        Rec1 -.->|建议| RTL_Ref[RTL-SDR]
        Rec2 -.->|建议| HackRF_Ref[HackRF]
        Rec3 -.->|建议| Ettus_Ref[Ettus USRP]
        Rec4 -.->|建议| Pluto_Ref[PlutoSDR]
    end

    Other_SDR -.->|比较| Comparison
    Comparison -.->|应用| Recommend

    style Pluto fill:#fff9c4
    style Ettus fill:#e1bee7
    style Rec1 fill:#c8e6c9
    style Rec2 fill:#c8e6c9

图表讲解:SDR设备选择需要考虑多个因素。RTL-SDR是最便宜的入门选择,20-30美元,对于学习SDR基础足够。HackRF One和LimeSDR是进阶选择,价格300-400美元,提供更宽的带宽和频率范围,适合大多数业余和专业应用。Ettus USRP是专业级设备,价格1000美元以上,提供最高的性能和可靠性,用于专业研发和工业应用。PlutoSDR是ADI公司的学习模块,约150美元,虽然是半双工,但性能不错且有官方支持。Airspy是高性能接收设备,专用于接收(不能发射),带宽10MHz,分辨率12-14位,适合高质量接收应用。选择设备时,考虑你的应用(学习、业余还是专业)、预算(几十到几千美元)、功能需求(接收还是收发)、性能要求(带宽、分辨率)。


六、IQ采样与硬件架构

IQ采样是SDR硬件的核心技术。

6.1 IQ采样原理

IQ采样与实数采样有根本区别。

flowchart TD
    subgraph Real_Sampling[实数采样]
        direction TB
        Real_ADC["单个ADC<br/>采样实信号"]
        Real_Out["实数输出<br/>单个值序列"]
        Real_Freq["频谱:<br/>关于0Hz对称<br/>正负频率相同"]
        Real_Limit["限制:<br/>必须满足<br/>奈奎斯特<br/>f_s &gt; 2f_max"]

        Real_ADC --> Real_Out
        Real_Out --> Real_Freq
        Real_Freq --> Real_Limit
    end

    subgraph IQ_Sampling[IQ采样]
        direction TB
        IQ_ADC["两个ADC<br/>I和Q<br/>同时采样"]
        IQ_Out["复数输出<br/>I+jQ序列"]
        IQ_Freq["频谱:<br/>不对称<br/>只有正或负频率"]
        IQ_Adv["优势:<br/>信息密度翻倍<br/>无镜像问题"]

        IQ_ADC --> IQ_Out
        IQ_Out --> IQ_Freq
        IQ_Freq --> IQ_Adv
    end

    subgraph Difference2[关键差异]
        D1["采样率要求:<br/>实数: f_s &gt; 2f_max<br/>IQ: f_s &gt; f_max"]
        D2["数据量:<br/>IQ是实数2倍<br/>但信息量相同"]
        D3["硬件复杂:<br/>IQ需要2个ADC<br/>正交本振"]

        Real_Limit -.->|严格要求| Real_ADC
        IQ_Adv -.->|优势| D2
        IQ_ADC -.->|代价| D3
    end

    Real_Sampling -.->|对比| IQ_Sampling
    IQ_Sampling -.->|差异| Difference2

    style Real_ADC fill:#ffcdd2
    style IQ_ADC fill:#c8e6c9
    style IQ_Adv fill:#a5d6a7

图表讲解:IQ采样使用两个ADC同时采样信号的两个正交分量(I和Q),而实数采样只使用一个ADC。I和Q是信号与两个相位相差90度的本地振荡(cos和-sin)混频的结果,这保留了信号的完整信息(幅度和相位)。IQ采样的频谱是不对称的——如果本地振荡选择得当,可以只有正频率分量,负频率分量被抑制。这意味着IQ采样只需要满足f_s > f_max(而不是f_s > 2f_max),采样率可以降低一半,或者在相同采样率下带宽可以翻倍。这是IQ采样的巨大优势。代价是需要两个ADC、更复杂的硬件和校准。理解IQ采样对于理解SDR硬件设计和性能限制至关重要。

6.2 SDR硬件架构

典型的SDR硬件包含多个阶段。

flowchart TD
    subgraph SDR_Arch[SDR硬件架构]
        direction TB
        Ant["天线<br/>接收电磁波"]
        LNA2["低噪声放大器<br/>LNA<br/>第1级放大"]
        Mixer2["混频器<br/>下变频<br/>到中频/基带"]
        IF_Filter["中频滤波<br/>抗混叠<br/>可调"]
        ADC["ADC<br/>数字化<br/>IQ采样"]
        FPGA["FPGA/USB<br/>数据传输<br/>到主机"]
    end

    subgraph Signal_Flow[信号演变]
        RF["RF信号:<br/>GHz频率<br/>~μV或mV"]
        Amp["放大信号:<br/>增益放大<br/>mV级"]
        Mixed["混频信号:<br/>中频/基带<br/>MHz或kHz"]
        Filt["滤波信号:<br/>抗混叠<br/>带限"]
        Digital["数字IQ:<br/>样本流<br/>USB传输"]

        RF --> Amp
        Amp --> Mixed
        Mixed --> Filt
        Filt --> Digital
    end

    subgraph Gain_Stages[增益阶段]
        GS["RF增益:<br/>LNA增益<br/>高增益关键"]
        IFG["IF增益:<br/>中频放大<br/>调整信号电平"]
        BBG["基带增益:<br/>数字域<br/>软件可调"]

        GS -.->|最重要| LNA2
        IFG -.->|可调| Mixer2
        BBG -.->|灵活| ADC
    end

    SDR_Arch -.->|信号流| Signal_Flow
    SDR_Arch -.->|增益控制| Gain_Stages

    style Ant fill:#bbdefb
    style LNA2 fill:#c8e6c9
    style Mixer2 fill:#fff9c4
    style ADC fill:#e1bee7

图表讲解:SDR硬件架构是信号处理的前端,负责将真实世界的射频信号转换为数字IQ数据。天线接收电磁波,通常只有微伏级别的微弱信号。LNA(低噪声放大器)是第一级放大,提供20-30dB增益,这对整个接收系统的噪声系数至关重要。混频器将射频信号下变频到中频或直接到基带,通过改变本地振荡频率实现调谐。中频滤波器滤除镜像频率和带外信号,防止混叠。ADC进行IQ采样,将模拟信号转换为数字流。FPGA处理数据流并通过USB接口传输到主机。增益通常分为三级:RF增益(LNA)、IF增益(混频后)、基带增益(数字域),可以独立调节以优化性能。理解硬件架构有助于正确设置增益和处理性能问题。


七、增益设置与优化

正确的增益设置对于获得最佳接收质量至关重要。

7.1 增益分配策略

如何分配多级增益是一门艺术。

flowchart TD
    subgraph Gain_Strategy[增益分配策略]
        direction TB
        RF_G["RF增益:<br/>最大化<br/>克服噪声"]
        IF_G["IF增益:<br/>适中<br/>避免饱和"]
        BB_G["基带增益:<br/>调节<br/>匹配ADC"]
    end

    subgraph Strategy_Detail[策略详情]
        Detail1["第1步:<br/>最大化RF增益<br/>在不过载前提下"]
        Detail2["第2步:<br/>设置IF增益<br/>使信号适中"]
        Detail3["第3步:<br/>调整基带增益<br/>接近ADC满量程"]

        Detail1 --> RF_G
        Detail2 --> IF_G
        Detail3 --> BB_G
    end

    subgraph Overload[避免过载]
        Sign["过载症状:<br/>信号削波<br/>失真增加"]
        Cause["原因:<br/>增益太高<br/>强信号"]
        Solution["解决:<br/>降低增益<br/>任何一级"]

        Sign --> Cause
        Cause --> Solution
    end

    subgraph Optimal[优化目标]
        Opt1["目标:<br/>ADC输入<br/>接近满量程<br/>如-6到-3dBFS"]
        Opt2["原因:<br/>最大化<br/>动态范围<br/>最小量化噪声"]
        Opt3["余量:<br/>留余量<br/>避免削波<br/>3-6dB"]

        Opt1 --> Opt2
        Opt2 --> Opt3
    end

    Gain_Strategy -.->|原则| Strategy_Detail
    Strategy_Detail -.->|避免| Overload
    Strategy_Detail -.->|目标| Optimal

    style RF_G fill:#c8e6c9
    style Optimal fill:#e1f5fe

图表讲解:增益分配的策略是最大化RF增益(因为LNA是第1级,对噪声系数影响最大),然后是IF增益,最后是基带增益。在不过载的前提下,RF增益应该尽可能高——通常设为最大值或接近最大值。IF增益应该设置使混频后的信号电平适中(既不太小也不太大),避免混频器或滤波器过载。基带增益(数字域)应该调整使ADC输入接近满量程(如-6到-3dBFS),以最大化利用ADC的动态范围,同时留3-6dB余量避免意外过载。过载的症状是信号削波(波形顶部或底部被截断),导致失真。如果你在GRC中添加QT GUI Time Sink观察到削波,应该降低某一级的增益。

7.2 AGC(自动增益控制)

AGC可以自动调节增益以保持稳定输出。

flowchart TD
    subgraph AGC[自动增益控制]
        direction TB
        Input2["输入信号<br/>强度变化"]
        Detect["检测器<br/>测量电平"]
        Error["误差信号<br/>参考-测量"]
        Loop["环路滤波<br/>平滑误差"]
        Gain["可调增益<br/>放大/衰减"]
        Output2["输出信号<br/>稳定电平"]
    end

    subgraph AGC_Mode[AGC模式]
        Slow["慢AGC:<br/>响应慢<br/>平稳<br/>语音适用"]
        Fast["快AGC:<br/>响应快<br/>跟踪变化<br/>数据适用"]
        Attack["攻击时间:<br/>增益增加速度<br/>从低到高"]
        Decay["衰减时间:<br/>增益降低速度<br/>从高到低"]

        Slow -.->|语音| Input2
        Fast -.->|数据| Input2
        Attack -.->|上升| Gain
        Decay -.->|下降| Gain
    end

    subgraph GNU_Radio_AGC[GNU Radio AGC]
        GR_AGC["AGC模块:<br/>自动增益控制"]
        GR_RMS["RMS AGC:<br/>均方根检测<br/>平均功率"]
        GR_Peak["Peak AGC:<br/>峰值检测<br/>峰值功率"]

        GR_RMS -.->|常用| AGC
        GR_Peak -.->|可选| AGC
    end

    AGC -.->|原理| AGC_Mode
    AGC -.->|实现| GNU_Radio_AGC

    style Output2 fill:#c8e6c9
    style Slow fill:#a5d6a7

图表讲解:AGC自动调节增益以保持输出信号电平稳定。它的工作原理是:检测器测量输入(或输出)信号电平,与参考电平比较产生误差信号,误差经过环路滤波器平滑后控制可调增益,形成反馈环路。如果输入信号减弱,误差为正,增益增加;如果输入信号增强,误差为负,增益降低。AGC有多种模式:慢AGC(响应时间较长,适用于变化缓慢的信号如语音)和快AGC(响应快,跟踪快速变化的信号如突发数据)。攻击时间(从低到高的速度)和衰减时间(从高到低的速度)可以独立设置。GNU Radio提供了AGC模块,可以根据信号特性选择合适的模式和参数。

7.3 增益设置实践

实际的增益设置指南。

flowchart TD
    subgraph Practical_Gain[增益设置实践]
        direction TB
        Start["开始"]
        Observe["观察信号<br/>频谱+时域"]
        Set_RF["设置RF增益<br/>通常最大"]
        Check_OV["检查过载?<br/>削波?"]
        Adjust_IF["调整IF增益<br/>信号适中"]
        Set_BB["设置基带<br/>ADC满量程"]
        Verify["验证质量<br/>SNR最佳"]
        Finish["完成"]
    end

    subgraph Check_List[检查清单]
        CL1["信号存在:<br/>频谱可见<br/>峰值明显"]
        CL2["幅度合适:<br/>不太小<br/>不过载"]
        CL3["SNR良好:<br/>噪声底低<br/>信号强"]
        CL4["无干扰:<br/>无干扰<br/>信道干净"]

        CL1 --> Verify
        CL2 --> Check_OV
        CL3 --> Verify
        CL4 --> Verify
    end

    subgraph Tips[实用技巧]
        T1["逐步增加:<br/>从低到高<br/>观察变化"]
        T2["使用监视器:<br/>QT GUI<br/>实时观察"]
        T3["保存配置:<br/>找到最佳值<br/>记录下来"]
        T4["定期检查:<br/>信号变化<br/>重新调整"]

        T1 --> Start
        T2 --> Observe
        T3 --> Finish
        T4 --> Start
    end

    Practical_Gain -.->|流程| Check_List
    Practical_Gain -.->|使用| Tips

    style Set_RF fill:#c8e6c9
    style Verify fill:#a5d6a7

图表讲解:实际设置增益时,建议采用系统化的方法。首先观察信号——使用QT GUI Frequency Sink查看频谱,确认目标信号存在且强度足够。然后设置RF增益——通常设置为最大值或接近最大值(如30dB中的28-30dB),这会最大化SNR。检查是否有过载——使用QT GUI Time Sink观察波形,如果有削波(波形顶部或底部变平),降低RF或IF增益。调整IF增益——使信号电平适中(不太小以致被量化噪声淹没,也不要太大以致后续级过载)。设置基带增益——使ADC输入接近满量程(-6到-3dBFS)。最后验证接收质量——SNR应该最佳,无失真或干扰。这些步骤可能需要迭代几次才能找到最佳配置。一旦找到最佳配置,记录下来以便下次使用。


八、核心概念总结

概念定义关键要点应用
电磁波E场和H场的交替变化光速传播、极化天线设计
频率/波长f与λ的关系λ = c/f频段选择
极化E场方向匹配很重要天线放置
频谱频率资源划分不同频段不同用途调谐选择
带宽频率范围决定数据率调制方式
SNR信号/噪声比质量指标增益设置
噪声系数SNR恶化量第1级最关键LNA设计
IQ采样双ADC正交采样f_s > f_maxSDR标准

常见问题解答

Q1:为什么不同频段的传播特性差异这么大?我能看到多远的电台?

:不同频段的传播特性确实差异巨大,这是物理规律决定的。

低频(VLF/LF/MF)信号沿地球表面传播(地波),能够绕过障碍物,传播距离远,覆盖范围可达几百到几千公里。AM广播(中频)利用这个特性,可以覆盖广阔区域。低频信号的缺点是带宽小,天线尺寸大。

高频(HF)信号会被电离层(大气层中电离的部分,约50-500km高度)反射回地球,可以实现超远距离通信(数千公里)。这就是为什么短波广播可以全球覆盖,但信号会随昼夜和季节变化。

甚高频及以上(VHF/UHF及以上)主要是视线传播,受地球曲率限制。两个电台要能互相”看见”才能通信。天线高度很重要——在平地上,两个30米高的天线可以互相看到约40公里外的对方。FM广播和电视利用VHF/UHF,覆盖范围通常限制在视线内(约100公里)。

所以你能收到的电台距离取决于频段和天线高度。AM广播电台可以几百公里外,FM广播电台通常在100公里内。如果你想接收更远的信号,需要更高的天线或利用特殊传播条件(如大气波导)。


Q2:我的SDR接收到的信号很弱,如何改善接收质量?

:弱信号需要从多个方面改善,系统化的方法最有效。

首先是天线改善。使用更高增益的天线(定向天线或更长的垂直天线),将天线放置在更高的位置(屋顶而非室内),远离干扰源(电脑、电源线),使用优质馈线(低损耗同轴电缆)。这些措施可能带来10-20dB的改善,非常显著。

然后是前端增益。确保LNA(低噪声放大器)工作且增益设置正确。如果使用HackRF或RTL-SDR,可以添加外部LNA(约20dB增益),放在天线附近而非接收机附近,以改善噪声系数。注意不要增益太高导致强信号过载。

接下来是带宽优化。将滤波器带宽设置为信号所需的最小值,这会减少带外噪声。对于弱信号,每减少1dB带宽就是1dB SNR改善。

最后是处理增益。确保数字域的增益足够,使ADC输入接近满量程,充分利用ADC的动态范围。但也要小心不要过载——强信号会削波,产生严重失真。

改善需要逐步尝试,每次改变一个参数,观察效果。建议使用QT GUI Sink实时观察信号,这比盲目调整更有效。


Q3:为什么我的SDR接收到的信号有严重的噪声干扰?如何定位噪声源?

:噪声干扰可能来自多个来源,需要系统排查来定位。

首先确认噪声类型。使用QT GUI Frequency Sink观察频谱。如果是宽带平坦噪声(所有频率都有,强度基本相同),可能是热噪声或量化噪声。如果是集中在特定频率的尖峰,可能是干扰信号(如某个发射台)。

然后区分内部和外部噪声。如果使用真实SDR硬件,断开天线,观察噪声底是否下降。如果断开天线后噪声底明显下降,说明噪声来自外部环境(其他发射机、电器设备等);如果噪声底基本不变,说明噪声来自接收机内部(热噪声、量化噪声、本地干扰)。

内部噪声很难消除——这是物理限制。外部噪声可以通过屏蔽、滤波或避开干扰方向来减少。例如,如果干扰来自特定方向,使用定向天线可以避开该方向。如果干扰是固定频率,使用带阻滤波器可以去除。

软件方面,确保采样率设置正确——过采样会将噪声折叠到基带,欠采样会产生混叠。使用适当的滤波器可以改善SNR。

最后检查连接质量。劣质馈线或松动连接会引入噪声和损耗,确保所有连接牢固可靠。


Q4:IQ采样真的比实数采样好吗?为什么所有SDR都用IQ采样?

:IQ采样确实优于实数采样,这是SDR普遍使用IQ采样的原因。

最重要的优势是带宽效率。实数采样需要f_s > 2f_max(奈奎斯特定理),而IQ采样只需要f_s > f_max。在相同采样率下,IQ采样可以处理两倍带宽的信号,或者在相同带宽下,IQ采样可以用一半采样率。这对于高速信号(如GHz级别)非常重要——10GHz信号用实数采样需要20Gsps(极高速,极贵),用IQ采样只需要10Gsps(仍然快但可行)。

第二个优势是避免镜像频率问题。实数混频会产生和频与差频,无法区分镜像频率。IQ混频使用复数本振,只产生一个边带,彻底避免镜像问题。这使得调谐更简单、更可靠。

第三个优势是保留完整信息。实数信号的正负频率对称,有一半信息是冗余的。IQ信号不对称,正负频率可以携带不同信息,频谱利用率更高。

代价是需要两个ADC、两个本振和更复杂的校准。但这些代价相对于性能优势是值得的。这就是为什么几乎所有现代SDR(以及专业通信设备)都使用IQ采样。


Q5:如何选择我的第一个SDR设备?RTL-SDR还是HackRF?

:这取决于你的应用和预算,以下建议可以帮助选择。

如果你是SDR初学者,主要兴趣是广播监听(AM/FM、航空、业余电台等),预算有限(几十美元),RTL-SDR是最佳选择。它便宜、社区支持好、软件丰富,足够满足学习和大多数业余应用。2MHz带宽对于广播监听足够,8位分辨率对于大多数应用可接受。

如果你对SDR有更浓厚的兴趣,想要进行更广泛的实验(Wi-Fi、卫星、LTE等),或者对信号质量要求更高,HackRF One是很好的升级选择。20MHz带宽允许更宽频谱观察和更多应用,1MHz-6GHz的频率范围覆盖几乎所有常用频段。HackRF的价格(约300美元)对于爱好者来说是可以接受的。

如果你主要只做接收(不发射),Airspy Mini(约$100-170)是另一个选择,它专门优化为接收,12位分辨率和低噪声系数提供更好的接收质量,但只能接收不能发射。

对于专业应用或研发,Ettus USRP是行业标准,但价格很高(1000美元以上),除非你有专业需求或预算充足。

建议路径:从RTL-SDR开始学习SDR基础,掌握原理后,如果需要更高性能,再升级到HackRF或更专业设备。


总结

本文深入探讨了SDR硬件和信号物理的基础知识,连接了仿真与实战。我们学习了:

  1. 电磁波基础:产生机制、频率波长关系、极化特性
  2. 频谱划分:各频段特性与应用、ISM频段规则
  3. 带宽概念:带宽定义、对信号质量的影响、带宽效率
  4. 噪声与SNR:噪声来源、信噪比概念、噪声系数
  5. SDR硬件:RTL-SDR、HackRF等设备的特性与选择
  6. IQ采样:原理、优势、硬件架构
  7. 增益设置:分配策略、AGC原理、实际设置方法

掌握这些知识后,你已经具备了使用真实SDR硬件的能力。在下一篇文章中,我们将学习调制解调的深入原理,并构建完整的收发系统,实现真正的SDR通信。

下篇预告

最后一篇将深入探讨调制技术(AM、FM、PM、数字调制)和发射系统构建。你将学习各种调制方式的原理与实现,理解过调制问题,掌握发射机的设计与测试,完成整个SDR学习之旅!