GNU Radio

Software für Digitale Signalverarbeitung und Software-Defined Radio

GNU Radio ist ein freies Programmierwerkzeug für die Implementierung von Software Defined Radio (SDR), einem Bereich der Nachrichtentechnik mit Fokus auf der digitalen Signalverarbeitung. GNU Radio erlaubt die praktische Implementierung beliebiger digitaler Modulations- und Demodulationsverfahren, Verfahren zur Manipulation von Signalen wie digitale Filter und bietet verschiedene Anzeigen wie Darstellungen als Zeitsignal oder als Frequenzspektrum, der dabei auftretenden Leistungsdichten, oder die bei digitalen Modulationen vorhandenen Konstellationsdiagramme.

GNU Radio

Basisdaten

Maintainer Joshua Morman, Jeff Long, Eric Blossom, Tom Rondeau, Johnathan Corgan, Marcus Müller[1]
Entwickler Gnuradio community
Erscheinungsjahr 2001
Aktuelle Version 3.10.11.0[2]
(24. Juli 2024)
Aktuelle Vorabversion 3.8.4.0-rc1[3]
(13. September 2021)
Betriebssystem GNU/Linux[4], Microsoft Windows[4], BSD-Betriebssystem[4], macOS[4], Unix-ähnliches System, Plattformunabhängig
Programmier­sprache C++[5], Python
Kategorie Digitale Signalverarbeitung
Lizenz GNU General Public License, Version 3.0 oder später[4][6], GNU General Public License, Version 2.0 oder später[7]
deutschsprachig nein
www.gnuradio.org

Mit GNU Radio kann die digitale Signalverarbeitung entweder am Rechner simuliert werden, dafür ist keine weitere Hardware nötig. Alternativ kann GNU Radio mit zusätzlicher an den PC angeschlossener Hardware betrieben werden, welche primär die Funkschnittstelle und die nötigen externen Verbindungen wie Antennen umfasst. Die erzeugten Signale können dann in Echtzeit ausgestrahlt oder in der Gegenrichtung die empfangenen Funksignale demoduliert und weiterverarbeitet werden. Aufgrund der vergleichsweise kostengünstig verfügbaren SDR-Hardware, der leichten Verfügbarkeit handelsüblicher Rechner, auf denen GNU Radio lauffähig ist, findet es vor allem im Bereich des Amateurfunks, im Rahmen von Ausbildung und Lehre und als einfache Evaluierungsplattform im professionellen Sektor Anwendung.

Struktur

Bearbeiten

GNU Radio besteht aus mehreren einzelnen Anwendungen, welche als englisch flowgraphs bezeichnet werden und elementare Signalverarbeitungsblöcke darstellen. Durch Kombination mehrerer flowgraphs werden komplexe Strukturen beschrieben und durch Austausch, Veränderung der Parameter und Funktionen und durch die Anordnung der flowgraphs lässt sich die Signalverarbeitung beliebig gestalten.

Die flowgraphs werden entweder in Python oder bei zeitkritischen und komplexen Funktionen in C++ programmiert. Die GNU-Radio-Umgebung ist komplett in C++ geschrieben. Daneben existieren diverse Erweiterungsmodule wie beispielsweise der GNU Radio Companion, eine auf Qt basierende grafische Oberfläche für die Darstellung und Modifikation der flowgraphs.

Für den Empfang zur Analyse oder für die Ausstrahlung von mit GNU Radio und den flowgraphs erzeugten Signalen ist zusätzliche Hardware, ein sogenanntes Software Defined Radio Frontend nötig. Es kann für Anwendungen im Basisband und bei Verwendung von Audiofrequenzen auch eine Soundkarte zur Signalaus- und Signaleingabe verwendet werden.[8]

Bearbeiten
Commons: GNU Radio – Sammlung von Bildern, Videos und Audiodateien

Einzelnachweise

Bearbeiten
  1. Marcus Müller: GNU Radio Project Leadership Updates. 2. Februar 2018 (englisch, abgerufen am 21. Dezember 2020).
  2. Release 3.10.11.0. 24. Juli 2024 (abgerufen am 22. August 2024).
  3. github.com.
  4. a b c d e In: Free Software Directory.
  5. The real-gnuradio Open Source Project on Open Hub: Languages Page. In: Open Hub. (abgerufen am 19. Oktober 2018).
  6. Updated license from GPL version 2 or later to GPL version 3 or later. 21. Juli 2007.
  7. ftp.gnu.org.
  8. A Quick Guide to Hardware and GNU Radio. Abgerufen am 27. September 2015.