Chapter: 1 (Weeks 1-2) Duration: 2 hr in-class + 1 hr independent Substrate: GNU Radio (software-only for Part 1; ANTSDR E200 optional for Part 2) Points: 8
Overview
Build GNU Radio flowgraphs for all seven modulation schemes covered in Weeks 1-2. Capture constellation diagrams and spectrum plots for each. No hardware required for Part 1 (software simulation). Part 2 optionally uses the ANTSDR E200 for hardware observation.
Part 1: Software Simulation (2 hr)
Build each modulation flowgraph using GNU Radio Companion. For each, capture screenshots of:
QT GUI Frequency Sink(spectrum)QT GUI Constellation Sink(IQ scatter)QT GUI Time Sink(time domain, optional)
1.1 OOK (On-Off Keying / ASK)
[Bernoulli Binary Source]
|
[Float to Char]
|
[Chunks to Symbols] (symbol map: [0.0, 1.0])
|
[Repeat] (samples_per_symbol=8)
|
[Float to Complex]
|
[Signal Source] -----> [Multiply] ----> [Throttle] ----> [QT GUI Frequency Sink]
(sine, 1kHz, 0-phase) ----> [QT GUI Constellation Sink]
Sample rate: 32000. Symbol rate: 4000. Carrier: 1000 Hz.
1.2 BPSK
[Bernoulli Binary Source, bits_per_symbol=1]
|
[BPSK Mod] (samples_per_symbol=4)
|
[Channel Model] (noise_voltage=0.1, optional)
|
[Throttle]
|
[QT GUI Frequency Sink + Constellation Sink]
1.3 QPSK
Same as BPSK but use [QPSK Mod] (bits_per_symbol=2). Observe: four clusters in the constellation instead of two. Spectrum bandwidth: same as BPSK (same symbol rate, 2× data rate).
1.4 16-QAM
[Bernoulli Binary Source, bits_per_symbol=4]
|
[QAM Mod] (constellation_size=16)
|
[Throttle]
|
[QT GUI Constellation Sink]
1.5 GFSK
[Bernoulli Binary Source]
|
[GFSK Mod] (samples_per_symbol=4, sensitivity=0.3, bt=0.35)
|
[Throttle]
|
[QT GUI Frequency Sink + Constellation Sink]
Compare GFSK spectrum to BPSK spectrum at the same symbol rate. GFSK bandwidth is wider (FM-family vs. PM-family).
1.6 WBFM (Wide-Band FM, analog)
[Signal Source] (sine, 300 Hz, audio frequency)
|
[WBFM Transmit] (quadrature_rate=48000, deviation=75000)
|
[Multiply Const] (0.3)
|
[Throttle]
|
[QT GUI Frequency Sink]
Observe: wide spectral spreading, characteristic double-hump spectrum.
1.7 AM-DSB
[Signal Source] (sine, 1 kHz, amplitude 0.5) → [Add] → [Multiply] → [Throttle] → [Frequency Sink]
[Const Source] (1.0) ↗ ↑
[Signal Source] (sine, f_carrier=5000 Hz, amplitude 1.0)
Observe: two sidebands symmetric around the carrier; no carrier suppression (DSB-LC = double-sideband large carrier).
Part 2: Hardware Observation (optional; ANTSDR E200 required)
Use the ANTSDR E200 in loopback mode (TX → RF cable → RX, or TX → Faraday-cage RX) to observe each modulation on actual hardware.
TX flowgraph: Signal Source / GFSK Mod / BPSK Mod → PlutoSDR Sink (URI: ip:192.168.1.10, TX freq: 433.5 MHz, TX gain: 0 dB)
RX flowgraph: PlutoSDR Source (same URI, RX freq: 433.5 MHz, sample rate: 2 MSPS) → QT GUI Frequency Sink + QT GUI Constellation Sink
Capture: screenshot of hardware-received constellation for BPSK and GFSK. Compare to software simulation.
Virtual path (no hardware): The software simulation flowgraphs from Part 1 are the virtual-path deliverable. Add Channel Model block with noise_voltage=0.1 to simulate a real-world noisy channel.
Deliverables
- 7 frequency-sink screenshots (one per modulation)
- 7 constellation screenshots (one per modulation)
- 1 paragraph per modulation: what does the constellation and spectrum tell you about this modulation scheme?
- Comparison table: fill in bandwidth, noise robustness (qualitative), and receiver complexity for each scheme
| Modulation | Bandwidth (relative) | Noise robustness | Receiver complexity |
|---|---|---|---|
| OOK | |||
| BPSK | |||
| QPSK | |||
| 16-QAM | |||
| GFSK | |||
| WBFM | |||
| AM-DSB |
Grading (8 points)
| Item | Points |
|---|---|
| All 7 frequency-sink screenshots present and labeled | 2 |
| All 7 constellation screenshots present and labeled | 2 |
| Per-modulation paragraph analysis (7 × 0.25 points) | 1.75 |
| Comparison table complete and accurate | 2.25 |