Az utolsó jelentős kiadás kialakulása óta eltelt hat év elteltével sNemrég jelentette be a GNU Radio 3.8.0 új verziójának kiadását. Azok számára, akik nem ismerik a GNU Rádiót, ezt tudnia kell ez a szoftver olyan programok és könyvtárak összessége, amelyek lehetővé teszik önkényes rádiórendszerek létrehozását, A modulációs sémákat, valamint a fogadott és elküldött jelek formáját, amelyben programozottan vannak konfigurálva, és a legegyszerűbb hardvereszközöket használják a jelek rögzítésére és generálására.
A projekt A GPLv3 licenc alatt van licencelve. A legtöbb GNU Radio komponens kódja Pythonban van megírva, A teljesítmény és a késés kritikus részei C ++ nyelven vannak megírva, így a csomag valós idejű hibaelhárításra használható.
A platform univerzálisan programozható adó-vevőkkel kombinálva, amelyek nem kötődnek a frekvenciasávhoz és a jelmoduláció típusához felhasználható eszközök létrehozására, például bázisállomások a GSM-hálózatokhoz, eszközök RFID-címkék távoli olvasására (elektronikus azonosítók és bérletek, intelligens kártyák), GPS-vevők, WiFi, FM rádióvevők és -adók, TV-dekóderek, passzív radarok, spektrumelemzők stb.
Az USRP mellett a csomag más hardverkomponenseket is használhat a bemeneti és kimeneti jelekhez, például a hangkártyák, a TV-tunerek, a BladeRF-eszközök, a Myriad-RF, a HackRF, az UmTRX, a Softrock, a Comedi, a FUNcube, az FMCOMMS, az USRP illesztőprogramjai. és S -Mini.
A kompozíció szűrők, csatornakodekek, szinkron modulok, demodulátorok, hangszínszabályozók, beszéd kodekek, dekóderek és a rádiórendszerek létrehozásához szükséges egyéb elemek.
Ezeket az elemeket fel lehet használni építőelemként a kész rendszertervezéshez, amely a blokkok közötti adatáramlás meghatározásának képességével együtt lehetővé teszi rádiórendszerek tervezését programozási ismeretek nélkül is.
A GNU Radio 3.8.0 újdonságai
A GNU Radio 3.8.0 új verziójának megérkezésével a fejlesztők átültették a kódot, amikor a C ++ 11 szabvány fejlesztésében használták és a Cmake build rendszert, és a clang formátumhoz igazított kódstílust használva.
A függőségek közé tartozik az MPIR / GMP, Qt5, gsm és codec2. Amellyel a függőségi követelményeket frissítették a CMake, a GCC, az MSVC, a Swig, a Boost számára, és ezzel kiküszöbölték a libusb, Qt4 és CppUnit függőségeket.
A kód: A GNU Radio 3.8.0 kompatibilis a Python 3-mal a fejlesztők pedig arról számoltak be, hogy a GNU Radio 3.8 következő ága lesz az utolsó, Python 2 támogatással.
A gnuradio-runtime alkalmazásban az időcímkék töredékértékeinek feldolgozása az alkalmazás kontextusában túlmintavételi modulokkal lett átalakítva.
A C ++ kódgenerálás opcionális támogatása felkerült a GRC grafikus felületére (GNU Radio Companion) az XML helyett a YAML formátumot használták, a blks2-t eltávolították, a vászoneszközöket jelentősen továbbfejlesztették, és a lekerekített nyilak támogatását is hozzáadták.
A többi kiemelkedő változás közül azt találjuk:
- A gr-qtgui GUI átkerült a Qt4-ről a Qt5-re
- A Gr-utils jelentősen javította a gr_modtool segédprogramot. A PyQwt-alapú segédprogramokat eltávolítottuk a kompozícióból
- Megszűnt a gr-comedi, a gr-fcd és a gr-wxgui modulok támogatása.
Hogyan kell telepíteni a GNU Rádiót az Ubuntura és a származékaira?
Azok számára, akik szeretnék telepíteni ezt az új verziót, egyelőre össze kell állítaniuk a forráskódjukat, mivel az Ubuntu adattárakban még nem érhető el.
Ezt megelőzően telepítenünk kell a működéséhez szükséges függőségeket, telepítjük őket egy terminál megnyitásával a rendszerben (ezt megteheti a Ctrl + Alt + T billentyűkombinációval), és a következőket írja be:
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
Ezt követően csak a következőket kell beírnunk a forráskód letöltéséhez:
git clone --recursive https://github.com/gnuradio/gnuradio.git cd gnuradio mkdir build cd build
És végül összeállítjuk a következő parancsok egyesével történő begépelésével:
cmake ../ make make test sudo make install