hamradioshop.ro
Articole > Echipamente si constructii radio Litere mici Litere medii Litere mari     Comentati acest articol    Tipariti

Radioreceptor FM pentru banda de 6 metri cu Arduino Nano, RDA5807M și LCD1602

Daniel Romila VE7LCG

După ce am realizat mai multe receptoare FM cu diverse plăci Arduino și similare am dorit să execut și ceva pentru radioamatori. Din păcate nu am găsit nimic pe Internet care să mă intereseze. Știam că există mai multe module de radio DSP cu posibilități de demodulare FM și care ar putea fi "convinse" să lucreze și în benzile de radioamatori. Sunt specific interesat de benzile de 2 metri și de 6 metri (50 MHz - 54 MHz).

Youtube video cu receptorul in funcționare: https://www.youtube.com/watch?v=2H7L6JWE_bs&feature=youtu.be

Schema si software: https://github.com/danielromila/6-meter-Rx-with-Arduino-RDA5807-and-LCD1602

După ce am realizat mai multe receptoare FM cu diverse plăci Arduino și similare am dorit să execut și ceva pentru radioamatori. Din păcate nu am găsit nimic pe Internet care să mă intereseze. Știam că există mai multe module de radio DSP cu posibilități de demodulare FM și care ar putea fi "convinse" să lucreze și în benzile de radioamatori. Sunt specific interesat de benzile de 2 metri și de 6 metri (50 MHz - 54 MHz). După mai multe experimentări am ajuns la concluzia că modulul RDA5807M este simplu și ar putea fi util, pentru că știe să coboare până la 50 MHz în cadrul specificațiilor tehnice, fără a fi forțat. Din păcate aceste posibilități ale hardware nu au fost luate in considerare de către cel care a făcut librăria Radio.h, Matthias Hertel. Radu - Eosif Mihailescu a făcut o librărie mai buna dar nu am văzut pe nimeni sa o folosească si pare abandonata chiar de autor.

Soluția a fost sa păcălesc RDA5807 ca nu are nevoie sa ii fie declarata banda de frecvente in care sa lucreze si in acest fel sa îmi ofere toate posibilitățile lui. L-am declarat drept TEA5767, un circuit mai simplu, echivalent pin cu pin, care folosește o alta librărie in care nici măcar nu se pune problema de a alege banda de frecvente, pentru ca TEA5767 știe numai una.

Schema pe care am construit-o:

Am respectat in schema conexiunile așa cum sunt dorite de exemplele conținute in Arduino IDE pentru a funcționa. Se poate încarcă in aceasta schema exemplul „Hello world”:

Este momentul sa subliniez aici câteva considerente de hardware:
- Condensatoare de decuplare trebuie puse imediat lângă Arduino Nano si RDA5807M.
- Modulul RDA5807M trebuie instalat pe o plăcuță. Nu poate fi lipit direct si manipulat direct. Se exfoliază imediat, chiar daca nu e evident când te uiți la el. Vorbesc din experiență, după ce am ignorat sfatul altora.

Produsul final este realizat pe o placa perforata, double side. Am folosit socluri pentru afișaj, Arduino Nano, cele 3 butoane si pentru modulul RDA5807M. Alimentarea se face prin mufa USB a plăcii Arduino Nano. Folosesc conectoare audio pentru căști si pentru antena. Volumul nu mai este reglabil prin software, așa ca trebuie fie sa fie folosite căști cu potențiometru pe linie, fie difuzoare pentru calculator, cu volum reglabil. Eu am conectat direct căștile si este la nivel potrivit. Pentru a vedea ca sunt într-adevăr pe frecventa dorita si afișată am folosit un generator cu cuarț făcut de mine. In poza sunt unul lângă altul pentru a putea fi văzute împreună, dar nu recomand sa puneți receptorul așa de aproape de o sursa de semnal.

Cele trei butoane sunt:
- Meniu: 1 KHz, 10 KHz, 100 KHz si 1 MHz. Nu am folosit funcțiile de căutare de frecventa scrise in librăria TEA5767. Am scris eu in programul .ino si in acest fel forțez RDA5807M sa lucreze pe frecventa pe care o doresc. Fiecare frecventa impusa este un eveniment singular pentru RDA5807M, așa ca nu am probleme cu pasul dintre doua frecvente succesive. Oricum selectivitatea este foarte larga.
- Plus – creștere frecventa ca pasul stabilit de Meniu
- Minus – scădere frecventa ca pasul stabilit de Meniu

Produsul final arata așa:

După cum am spus, este construit modular:

Si pe dos nu este prea frumos:

Realizez prototipurile pe placi perforate pentru ca le fac imediat. De asemenea nu am nevoie de nici unul din montaje. Este doar un exercițiu intelectual, nici măcar profesional. Pe exact pe același hardware am făcut si un radio FM, cu 50 de memorii care rămân la tăierea alimentarii, scanare automata, bass boost si ajustare manuala a frecventei. Am schimbat doar programul introdus in Arduino Nano.

Acest receptor pentru banda de 6 metri este mai mult o dovada ca se poate realiza așa ceva cu Arduino. Nu este chiar un receptor pe care l-as folosi in benzile de radioamator zi de zi – deși la lipsa de activitate si prezenta doar din când in când a unei stații locale face fata.

Daniel Romila VE7LCG

Articol aparut la 18-10-2019

1213

Inapoi la inceputul articolului

Comentarii (8)  

  • Postat de Daniel - VE7LCG (ve7lcg) la 2019-10-18 10:26:46 (ora Romaniei)
  • Pe aceeasi schema si hardware am facut si un receptor de unde ultrascurte sofistifat, cu auto-search, 50 de memorii si afisare RDS (ce transmite statia receptionata, daca transmite si digital - nume statie, numele cantecului difuzat, etc). L-am facut in doua variante software, cu modificari legate de ce se afiseaza - nimic radical functional. Poate fi vazut la: https://www.youtube.com/watch?v=ydHF1U-pbds
    Schema si codurile (varianta 1 si 2) la: https://github.com/danielromila/Arduino-FM-radio-with-RDA5807M-LCD-1602-and-Nano-board
    Software-ul a fost pornit de la ce a facut Alexander Liman, si s-a indepartat atat de mult incat a devenit un alt produs - dar totusi Alexander Liman a fost un mare ajutor si eu nu m-as fi incumetat sa incep de la zero; asa am tot modificat ceva care deja functiona. Printre altele am adaugat pas variabil de cautare. Daca butonul SUS (sau JOS) este tinut apasat mai mult timp sau continuu pasul dintre doua frecvente adiacente la scanarea manuala creste de la 0.1 MHz la 1 MHz.
      Comentariu modificat de autor.

  • Postat de Daniel - VE7LCG (ve7lcg) la 2019-10-18 18:21:19 (ora Romaniei)
  • Mentionez ca in varianta mea de receptor FM cele 50 de memorii nu raman dupa taierea alimentarii. Nu folosesc EEPROM din placa Nano. In varianta lui Alexander Liman se folosesc 10 memorii, care se presupun a ramane. Din pacate placile noi de Arduino Nano au altfel gestionate si umplute EEPROM, asa ca varianta lui Alexander merge pe unele placi si nu merge pe altele. Am evitat asemenea ratari si nu am folosit EEPROM.

  • Postat de Adrian - YO3HJV (yo3hjv) la 2019-10-19 23:40:00 (ora Romaniei)
  • Interesant! Am testat si eu o solutie similara dar pentru 70 MHz insa selectivitatea era totalmente improprie. Adica, lipsa selectivitatii. Cum ati rezolvat problema asta? Mie imi auzea tot ce misca in banda si nu am reusit sa il dresez sa practice o selectivitatea apta sa il transforme in receptor " de trafic". A aterizat intr-o cutie intr-un sertat si cam atat. 73 de YO3HJV

  • Postat de Daniel - VE7LCG (ve7lcg) la 2019-10-20 02:45:19 (ora Romaniei)
  • Nu am rezolvat problema selectivitatii. Este doar un exercitiu, o demonstrare a faptului ca merge si in 50 de MHz, unde este oricum complet liniste aici. Mai interesant este pe acelasi hardware si schema de facut receptorul FM, prezentat la https://github.com/danielromila/Arduino-FM-radio-with-RDA5807M-LCD-1602-and-Nano-board
    Are si manual de utilizator, pentru ca are mai multe meniuri. Exista acum pe github si varianta 2, si in manual se precizeaza diferentele, care sunt minore.

  • Postat de Florian - YO9GJX (yo9gjx) la 2019-10-20 07:54:16 (ora Romaniei)
  • Problema selectivității se rezolvă extrem de simplu cu montarea pe intrare a unui filtru clasic LC, sau mai multe pentru brenzi diferite. Pare de necrezut dar diferența e enormă. Eu am făcut la fel cu un scanner Yupiteru la care bătrânul Cebysev s-a impus cu rezultate remarcabile mai ales după ce la cutia cu filtrele de bandă am adăugat și un preamplificator cu MosFet.
    La fel am procedat și cu un SDR h.m. pe 80m (după YU1LM), care a devenit foarte performant după montarea pe intrare a clasicului filtru trece bandă LC.
    Pentru începători explicația aici: https://www.rtl-sdr.com/tag/preselector/

  • Postat de Daniel - VE7LCG (ve7lcg) la 2019-10-20 08:32:53 (ora Romaniei)
  • Nu la asa ceva se referea YO3HJV. Ci se referea la faptul ca din proiectare RDA5807 este foarte larg, pentru ca este destinat sa demoduleze WIDE FM, nu narrow FM. Nu ne deranjeaza semnalele din afara benzii, ci cele de la 10 KHz distanta.

  • Postat de Maior Alexandru - YO5PQJ (yo5pqj) la 2019-10-30 19:17:30 (ora Romaniei)
  • https://create.arduino.cc/projecthub/hvde/convert-cb-transceiver-to-50mhz-2f9f14?f=1
    recomand, incercati !

  • Postat de Daniel - VE7LCG (ve7lcg) la 2019-10-30 19:52:04 (ora Romaniei)
  • Frumos proiect, frumos lucrat. Voi folosi de acolo schemele cu NE612 (NE602) si multe idei. Cand voi mai face ceva cu Arduino voi face un oscilator cu SI5351 (160 MHz, 4 CAD shipping and taxes included) si ma voi uita la codul pe care l-ati facut. Aici, in Canada, radioamatorii sunt numiti "buy the garbage, sell the garbage" pentru ca echipamentele vechi si damblagite sunt vandute mai scump decat cele noi. Un CB radio cu SSB vechi de peste 20 de ani sunt vandute cu 300 - 500 CAD. Adica cu atat incearca sa le vanda. Si le muta de la unii la altii, si le mai posteaza de cateva zeci de ori. Asa ca e nerentabil sa modifici echipament vechi, care oricum poate crapa oricand din cauza condensatoarelor. Nu este bogatia de echipamente asa cum este in Europa. Aici incearca sa vanda si aspiratoare vechi, de 15 ani, care au defectiuni. Multumesc.

    Scrieti un mic comentariu la acest articol!  

    Opinia dumneavoastra va aparea dupa postare sub articolul "Radioreceptor FM pentru banda de 6 metri cu Arduino Nano, RDA5807M și LCD1602"
    Comentariul trebuie sa se refere la continutul articolului. Mesajele anonime, cele scrise sub falsa identitate, precum si cele care contin (fara a se limita la) atac la persoana, injurii, jigniri, expresii obscene vor fi sterse iar dupa caz se va ridica dreptul de a posta comentarii.
    Comentariu *
     
    Trebuie sa va autentificati pentru a putea adauga un comentariu.


    Opiniile exprimate în articole pe acest site aparţin autorilor şi nu reflectă neapărat punctul de vedere al redacţiei.

    Copyright © Radioamator.ro. Toate drepturile rezervate. All rights reserved
    Articole | Concursuri | Mica Publicitate | Forum YO | Pagini YO | Call Book | Diverse | Despre Radioamator.ro | Contact