07 noiembrie 2017

RTL-SDR, o noua provocare pentru mine ( partea 1 )

            Cu ceva timp in urma am intrat in posesia unui stick dedicat receptiilor TV si adaptat de catre radioamatori receptiilor SDR, avind in componenta sa cipul RTL2832U. Dupa citeva experimente reusite am trecut la montarea acestuia in interiorul transceiverului meu, un FT897D, pe post de panoramic adapter. Pentru a vizualiza semnalele radio am folosit mai multe programe, dintre acestea evidentiindu-se HDSDR si SDR Console. HDSDR este cel mai apropiat nevoilor mele, dar SDR Console mi se pare mult mai deosebit. Desi ambele programe imi plac foarte mult, acestea nu sint complete si prezinta anumite dezavantaje functionale. Datorita acestor aspecte, am luat hotarirea de a incerca sa imi dezvolt o aplicatie proprie, care sa se apropie cit mai mult cerintelor mele. 
            Din fericire pentru mine, pe internet exista o multime de aplicatii Open Source care le-am folosit ca sursa de inspiratie si care m-au ajutat sa dezvolt prima mea aplicatie simpla. Pentru inceput am invatat cum pot seta si afisa un anumit segment din spectrul radio. Deorece vizualizarea emisiunilor radio foarte slabe este greoaie, am hotarit sa afisez spectrul radio numai printr-un ecran waterfall. Acesta afiseaza amplitudinea semnalelor pe diferite nivele de culoare, usurind diferentierea emisiunilor radio de zgomotul de fond. Desi fiecare comanda trimisa receptorului este urmata de un raspuns din partea acestuia, in aceasta etapa a programului, am ales sa nu tratez acest raspuns, considerindu-l intotdeauna ca fiind OK.


            Programul a fost scris in mediul de dezvoltare Borland Delphi 6 si o mica parte a fost inspirat din sursele programelor lui Sergey G. Badlo. Pentru afisarea ecranului waterfall am testat mai multe Fast Furier Transform (FFT) cu rezultate foarte asemanatoare. In aceasta versiune a programului am folosit FFT din codul sursa al autorului sus mentionat, la care am adus usoare modificari. Pentru afisarea culorilor din waterfall am creat o paleta proprie de 64 de nivele de culoarea in spectrul Albastru - Galben - Rosu.
            Deoarece programul este in teste, afisez numai segmente mici din spectrul radio, doar pentru a evidentia rezutatele codului scris de mine. Proiectul este destul de captivant si cere multa pregatire din partea celui care il abordeaza. Personal sper sa il duc la bun sfirsit.

Descarca codul sursa si executabilul.

Pentru realizarea proiectului m-am inspirat din:
http://delphiexamples.com/application/appsynchthread.html
http://ajoo.blog/intro-to-rtl-sdr-part-ii-software.html
http://raxp2.blogspot.ro/2016/04/rtl-sdr.html
http://www.m0dts.co.uk/files/simple_rtlsdr_fft.c

Constantin Badican  - YO7FWS
---  73's   YO7FWS  ---

Niciun comentariu:

Trimiteți un comentariu