GNU Radio 3.9 идва с подобрения, корекции на грешки и много други

След година и половина разработка се формира нова версия значителна част от платформата за безплатна цифрова обработка на сигнали Радио GNU 3.9 и в тази нова версия са направени промени в организацията за развитие, както и подобрения в поддръжката и други.

За тези, които не знаят за платформата, те трябва да знаят, че това включва набор от програми и библиотеки, които ви позволяват да създавате произволни радио системи, модулационните схеми и формата на получените и изпратените сигнали се конфигурират в софтуер, а за улавяне и генериране на сигнали се използват прости хардуерни устройства.

В комбинация с универсални програмируеми приемо-предаватели, които не са обвързани с честотната лента и вида на модулация на сигнала, платформата може да се използва за създаване на устройства като базови станции за GSM мрежи, устройства за дистанционно четене на RFID тагове (електронни идентификации и пропуски, смарт карти), GPS приемници, WiFi, FM радио приемници и предаватели, телевизионни декодери, пасивни радари, анализатори на спектъра и др.

В допълнение към USRP, пакетът може да използва други хардуерни компоненти за вход и изход на сигнала, например налични са драйвери за звукови карти, телевизионни тунери, BladeRF, Myriad-RF, HackRF, UmTRX, Softrock, Comedi, Funcube, FMCOMMS, USRP и S -Mini устройства.

Основни нови функции на GNU Radio 3.9

В тази нова версия на GNU Radio 3.9 бяха направени големи промени за участие в разработката и то е, че времето вече не изисква подписване на CLA, вместо което разработчикът трябва само да потвърди, че има право да прехвърли кода и не се опитва да присвои чужд код.

Документът за сертификат за произход на разработчика (DCO) се използва за формализиране на трансфер на код, който се използва от 2004 г. за прехвърляне на промени в ядрото на Linux. За проследяване на автора е прикачен ред "Подписан от: име на разработчика и имейл" (git commit -s) към всяка промяна. Като прикрепя този подпис към кръпката, разработчикът потвърждава авторството си за прехвърления код и приемете разпространението му като част от проекта или като част от кода под безплатен лиценз.

Друга промяна, която се откроява в новата версия на GNU Radio 3.9, е преустановено използване на API SWIG генератора като Сега PyBind11 се използва за свързване на C / C ++ и Python код, който изисква допълнителен код, но осигурява по-предсказуем и стабилен резултат. Заедно с промяната в PyBind, направена е много работа за модернизиране на GRC GUI кода (GNU Radio Companion).

Добавен е нов gr-мрежов модул за създаване на мрежови блокове, които поддържат TCP и UDP.
Графичният потребителски интерфейс gr-qtgui добави графики за азимут, разстояние и автокорелация, осигурен дисплей на компаса, добавен вертикален панел.

Добавено поддръжка за UHD 4.0 (USRP хардуерен драйвер) и е предложен нов API за създаване на филтри.

Поддръжката за Python 2 е премахната, сега изисква поне Python 3.6.5 да работи. Актуализирани зависимости: numpy 1.13.3, VOLK 2.4.1, CMake 3.10.2, Boost 1.65, Mako 1.0.7, PyBind11 2.4.3. От компилаторите се поддържат GCC 8.3.0, Clang 11.0.0 и MSVC 1910 (Microsoft VS 2017 15.0). Библиотеката libsndfile е включена в зависимостите. VOLK (Vector Optimized Library of Kernels) се премести от подмодули в отделна зависимост.

Освен това са разрешени конструкции C ++ 14, но кодът, който продължава да използва Boost, продължава да използва конструкции C ++ 11. Освен това към кода са добавени заглавия с информация за лиценз във формат SPDX.

Как да инсталирам GNU Radio на Ubuntu и деривати?

За тези, които се интересуват от възможността да инсталират тази нова версия, засега те трябва да компилират своя изходен код, тъй като все още не е наличен в хранилищата на Ubuntu.

Преди да го направим, трябва да инсталираме необходимите зависимости за неговата работа, ние ги инсталираме, като отворим терминал в системата (можете да го направите с комбинацията от клавиши Ctrl + Alt + T) и в него ще напишете следното:

sudo apt install git cmake g++ libboost-all-dev libgmp-dev swig python3-numpy \

python3-mako python3-sphinx python3-lxml doxygen libfftw3-dev libcomedi-dev \

libsdl1.2-dev libgsl-dev libqwt-qt5-dev libqt5opengl5-dev python3-pyqt5 \

liblog4cpp5-dev libzmq3-dev python3-yaml python3-click python3-click-plugins

След това ще трябва само да напишем следното, за да изтеглим изходния код:

git clone --recursive https://github.com/gnuradio/gnuradio.git

cd gnuradio

mkdir build

cd build

И накрая ще компилираме, като напишем следните команди една по една:

cmake ../

make

make test

sudo make install

Бъдете първите, които коментират

Оставете вашия коментар

Вашият имейл адрес няма да бъде публикуван. Задължителните полета са отбелязани с *

*

*

  1. Отговорен за данните: Мигел Анхел Гатон
  2. Предназначение на данните: Контрол на СПАМ, управление на коментари.
  3. Легитимация: Вашето съгласие
  4. Съобщаване на данните: Данните няма да бъдат съобщени на трети страни, освен по законово задължение.
  5. Съхранение на данни: База данни, хоствана от Occentus Networks (ЕС)
  6. Права: По всяко време можете да ограничите, възстановите и изтриете информацията си.