GNU Radio
программное обеспечение | |
GNU Radio | |
Тип | радио |
---|---|
Автор | Эрик Блоссом |
Разработчик | GNU Project Том Рондо (Tom Rondeau) Джонатан Корган (Johnathan Corgan) |
Написана на | C++, Python |
Операционная система | кроссплатформенное ПО |
Языки интерфейса | English |
Лицензия | GNU General Public License |
Сайт | gnuradio.org |
GNU Radio — свободный инструментарий для построения программно-определяемого радио. Его можно использовать для обработки сигналов с легкодоступного дешевого внешнего аппаратного модуля, или без него в режиме симуляции. Широко используется для изучения, построения и развертывания программного радио, как в бизнесе, так и в академической области.
Обзор[править]
Компоненты GNU Radio преимущественно написанный на языке программирования Python, тогда как критические к производительности компоненты обработки сигнала — на C++ с использованием расширений процессора для работы с нефиксированными запятыми, где это возможно. Таким образом, разработчик может реализовывать реалтаймовые радиосистемы с высокой пропускной способностью в простом для использования среде разработки.
GNU Radio поддерживает разработку алгоритмов обработки сигналов с использованием предварительно записанных или сгенерированных данных, что позволяет избежать необходимости применять реальное внешнее оборудование.[1]
Как и во всех системах программно-определяемого радио, переконфигурирование является ключевой особенностью. Вместо приобретения нескольких дорогих радио можно иметь один общий приемник, сигнал с которого обрабатывается программно. GNU Radio содержит определенное количество уже готовых блоков демодуляции для различных типов сигналов, но если человек понимает математику радиосистемы, можно перенастроить GNU Radio и на получение других типов.
История[править]
В 2001 году GNU Radio появилось как официальный проект GNU. Филантроп Джон Гилмор инициировал и поддержал GNU Radio, заплатив $ 320,000 Эрику Блоссому на написание кода и управленческие нужды.
GNU Radio вначале был форком Pspectra, код которой написан проектом SpectrumWare в Массачусетском технологическом институте (МТИ). В 2004 году полное переписывание GNU Radio было завершено, поэтому сегодня GNU Radio не содержит ничего из коду Pspectra.
GNU Radio было использовано в дешевых системах пассивных радаров.[2][3]
В сентябре 2010 года руководитель проекта Эрик Блоссом ушел в отставку и его заменил Том Рондо.[4] Том является выпускником Virginia Tech и специалистом по когнитивным радио, на тот момент он уже давно участвовал в разработке GNU Radio.
GNU Radio Companion[править]
GNU Radio Companion (GRC) — это графический интерфейс для разработки программ GNU Radio, фронтенд к библиотекам сигнальной обработки. Представляет собой редактор диаграмм, в котором пользователь соединяет блоки нужным образом, получая надзорную блок-схему прохождения сигнала. GRC разработал Джош Блум во время обучения в университете Джонса Хопкинса (2006—2007). Был успешно использован в нескольких университетах.[5] GRC официально в составе gnuradio с версии 3.2.