Pärast poolteist aastat kestnud arengut moodustati uus versioon oluline digitaalse signaalitöötluse platvorm GNU raadio 3.9 ja selles uues versioonis arendusorganisatsioonis on tehtud muudatusi, samuti tugiparandused ja palju muud.
Neile, kellele platvorm pole tuttav, peaksid nad seda teadma sisaldab komplekti programme ja teeke, mis võimaldavad teil luua meelevaldseid raadiosüsteeme, modulatsiooniskeemid ning vastuvõetud ja saadetud signaalide vorm on konfigureeritud tarkvaras ning signaalide püüdmiseks ja genereerimiseks kasutatakse lihtsaid riistvaraseadmeid.
Koos universaalsete programmeeritavate transiiveritega, mis pole seotud sagedusribaga ja signaali modulatsiooni tüübiga, platvormi saab kasutada seadmete loomiseks GSM-võrkude tugijaamadena, seadmed RFID-siltide kauglugemiseks (elektroonilised tuvastused ja pääsmed, kiipkaardid), GPS-vastuvõtjad, WiFi, FM-raadiovastuvõtjad ja -saatjad, teleridekoodrid, passiivradarid, spektraalanalüsaatorid jne.
Lisaks USRP-le pakett võib signaali sisestamiseks ja väljundiks kasutada muid riistvarakomponente, näiteks on draiverid saadaval helikaartidele, telerituuneritele, BladeRF, Myriad-RF, HackRF, UmTRX, Softrock, Comedi, Funcube, FMCOMMS, USRP ja S -Mini seadmetele.
GNU raadio 3.9 peamised uued funktsioonid
Selles GNU raadio 3.9 uues versioonis arenduses osalemiseks tehti suuri muudatusi ja see on aeg, mil CLA allkirja enam ei nõuta, selle asemel peab arendaja vaid kinnitama, et tal on õigus kood üle kanda ega püüa kellegi teise koodi omistada.
Arendaja päritolusertifikaadi dokument (DCO) kasutatakse koodiedastuse vormistamiseks, mida on alates 2004. aastast kasutatud muudatuste ülekandmiseks Linuxi kernelisse. Autori jälgimiseks on igale muudatusele lisatud rida "Allkirjastanud: arendaja nimi ja e-posti aadress" (git pühendada -s). Lisades selle allkirja plaastrile, kinnitab arendaja selle autorsust edastatud koodi kohta ja aktsepteerige selle levitamist projekti osana või koodi osana tasuta litsentsi alusel.
Teine muudatus, mis GNU Radio 3.9 uues versioonis silma paistab, on API SWIG-generaatori kasutamine lõpetati PyBind11 kasutatakse nüüd C / C ++ ja Pythoni koodi linkimiseks, mis nõuab küll lisakoodi, kuid annab prognoositavama ja stabiilsema tulemuse. Koos PyBindi muutmisega GRC GUI koodi ajakohastamiseks on tehtud palju tööd (GNU raadiokaaslane).
Lisatud uus gr-võrgu moodul TCP-d ja UDP-d toetavate võrguplokkide loomiseks.
Gr-qtgui GUI lisas graafikud asimuudi, kauguse ja autokorrelatsiooni kohta, kompassi kuvamise ja vertikaalse paneeli.
Lisatud UHD 4.0 tugi (USRP riistvara draiver) ja pakuti välja uus API filtrite loomiseks.
Python 2 tugi on eemaldatud, nõuab nüüd töötamiseks vähemalt Pythoni 3.6.5. Uuendatud sõltuvused: numpy 1.13.3, VOLK 2.4.1, CMake 3.10.2, Boost 1.65, Mako 1.0.7, PyBind11 2.4.3. Koostajatest toetatakse GCC 8.3.0, Clang 11.0.0 ja MSVC 1910 (Microsoft VS 2017 15.0). Libsndfile'i teek on lisatud sõltuvustesse. VOLK (Vector Optimized Kernels Library) kolis alamoodulitest eraldi sõltuvusse.
Lisaks on lubatud C ++ 14 konstruktsioonid, kuid kood, mis jätkab Boosti kasutamist, kasutab jätkuvalt konstruktsioone C ++ 11. Lisaks on koodile lisatud päised SPDX-vormingus litsentsiteabega.
Kuidas installida GNU raadio Ubuntu ja selle derivaadid?
Neile, kes on huvitatud selle uue versiooni installimisest, praegu peavad nad koostama oma lähtekoodi, kuna see pole veel Ubuntu hoidlates saadaval.
Enne seda peame installima selle toimimiseks vajalikud sõltuvused, installime need, avades süsteemis terminali (saate seda teha klahvikombinatsiooniga Ctrl + Alt + T) ja sisestate sinna järgmise:
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
Pärast seda peame lähtekoodi allalaadimiseks sisestama ainult järgmise:
git clone --recursive https://github.com/gnuradio/gnuradio.git cd gnuradio mkdir build cd build
Ja lõpuks koostame, tippides ükshaaval järgmised käsud:
cmake ../ make make test sudo make install