PySDR: Een handleiding voor SDRs en digitale signaalbewerking met Python
door Dr. Marc Lichtman - pysdr@vt.edu
Welkom bij PySDR, een gratis online boek (geen Python-bibliotheek!) dat met een een overvloed aan diagrammen, animaties en Python-codevoorbeelden een zachte introductie biedt tot draadloze communicatie en software-gedefinieerde-radio (SDR). Van FFT's tot filters tot digitale modulatie tot ontvangen en verzenden via SDR's in Python, PySDR heeft het allemaal!
Het doel van PySDR is om de toegankelijkheid van onderwerpen die traditioneel met zware wiskunde in een aantal universiteiten worden behandeld, te vergroten. Alle inhoud die wordt gebruikt om PySDR te genereren, is open source en kun je hier vinden.
Zie Hoofdstuk 1: Introductie voor het doel en de doelgroep van het boek.
Probeer eens te spelen met de onderstaande simulatie als voorproefje op RF signaalverwerking. De simulatie laat het frequentie- en tijdsdomein van een signaal zien dat bestaat uit een toon en witte Gaussische ruis.
Klap de volledige inhoudsopgave uit
- 1. Introductie
- 2. Het Frequentiedomein
- 2.1. Fourierreeks
- 2.2. Tijd-Frequentie paren
- 2.3. Fouriertransformatie
- 2.4. Tijd-Frequentie Eigenschappen
- 2.5. Fast Fourier Transform (FFT)
- 2.6. Negatieve Frequenties
- 2.7. Volgorde in de tijd maakt niet uit
- 2.8. FFT in Python
- 2.9. Vensterfunctie
- 2.10. FFT-grootte
- 2.11. Spectrogram/Waterval
- 2.12. FFT Implementatie
- 3. IQ-sampling
- 3.1. Basis van samplen
- 3.2. Nyquist samplen
- 3.3. Kwadratuursamplen
- 3.4. Complexe Getallen
- 3.5. Complexe getallen bij FFTs
- 3.6. Ontvangende kant
- 3.7. Draaggolven en frequentieverschuiving
- 3.8. Architectuur van ontvangers
- 3.9. Basisband- en Banddoorlaatsignalen
- 3.10. DC Piek
- 3.11. samplen met onze SDR
- 3.12. Gemiddelde Vermogen Berekenen
- 3.13. Power Spectral Density berekenen
- 3.14. Extra Leesmateriaal
- 4. Digitale Modulatie
- 5. PlutoSDR in Python
- 6. USRP in Python
- 7. Ruis en dB
- 8. Filters
- 9. Link Budgets
- 10. Kanaalcodering
- 11. IQ Files and SigMF
- 12. Multipath Fading
- 13. Pulse Shaping
- 14. Synchronisatie
- 15. Compleet voorbeeld
- 15.1. Introductie FM-Radio en RDS
- 15.2. Het RDS-Signaal
- 15.3. Signaal ontvangen
- 15.4. FM Demodulatie
- 15.5. Frequentieverschuiving
- 15.6. RDS eruit filteren
- 15.7. Met 10 decimeren
- 15.8. Hersamplen naar 19 kHz
- 15.9. Banddoorlaatfilter
- 15.10. Tijdsynchronisatie (Symbool-niveau)
- 15.11. Fijne Frequentiesynchronisatie uitvoeren
- 15.12. BPSK demoduleren
- 15.13. Differentieel decoderen
- 15.14. RDS Decoderen
- 15.15. RDS Interpreteren
- 15.16. Laatste code
- 15.17. Erkenningen
- 15.18. Extra leesmateriaal RDS
- 16. DOA & Beamforming
- 16.1. Overzicht en termen
- 16.2. Eisen SDR
- 16.3. Introductie Matrix wiskunde in Python/NumPy
- 16.4. Basiswiskunde
- 16.5. Een signaal ontvangen
- 16.6. Conventional DOA
- 16.7. 180 Degree Ambiguity
- 16.8. Broadside of the Array
- 16.9. When d is not λ/2
- 16.10. MVDR/Capon Beamformer
- 16.11. Number of Elements
- 16.12. MUSIC
- 16.13. ESPRIT
- 16.14. Radar-Style Scenario
- 16.15. Quiescent Antenna Pattern
- 16.16. 2D DOA
- 16.17. Steering Nulls
- 16.18. Conclusion and References
- 17. Phased Arrays with Phaser
- 18. Over de auteur