Kā izveidot viegli programmējamu radioaparātu
Radio ir viena no klasiskākajām elektroniskajām ierīcēm, kas joprojām ir aktuāla arī mūsdienās. Interesanti, ka radioaparātus var iegādāties ne tikai gatavus, bet arī paštaisītus — pat apvienojumā ar mikrokontrolleri vienkāršai programmēšanai. Tādā veidā jūsu paštaisītais radio nav tikai "apraides uztvērējs", bet gan var kļūt par pilnībā mērogojamu projektu: tas attēlo staciju nosaukumus, saglabā iepriekš iestatītas stacijas, automātiski regulē skaļumu un pat tiek vadīts ar pogām, lietotni vai lietu internetu.
Šajā rakstā ir aplūkots, kā izveidot viegli programmējamu radio ar relatīvi viegli atrodamām sastāvdaļām, pieejamām izmaksām un iesācējiem draudzīgu procesu.
Sākot no
1. Radio koncepcija “Viegli programmējama”
Viegli programmējami radio parasti balstās uz iepriekš izveidotu radio uztvērēja moduli (FM/AM vai tikai FM), ko kontrolē, izmantojot digitālo saziņu, piemēram, I2C. Tas nozīmē, ka jums nav jāprojektē sarežģītas RF shēmas (kas bieži vien ir sarežģītas un kurām nepieciešams specializēts mērīšanas aprīkojums). Mikrokontrolleris (Arduino/ESP32) vienkārši nosūta komandas uztvērēja modulim: izvēlēties frekvenci, meklēt stacijas, saglabāt iestatījumus utt.
Iesācējiem vispopulārākā izvēle ir FM radio, kas balstīts uz Si4703 vai RDA5807 moduli, jo:
– Lētas cenas un viegli atrodamas.
– Vadība caur I2C (viegli programmējama).
– Stabils FM pārraižu uztveršanai.
– Daudz dokumentācijas un programmu piemēru.
Sākot no
2. Nepieciešamās sastāvdaļas
Šeit ir ieteicamo komponentu saraksts viegli programmējama FM radio izveidei:
1. Mikrokontrolleris
– Vienkārša izvēle: Arduino Nano/Uno
– Uzlabotāka opcija: ESP32 (var pievienot ar Wi-Fi/Bluetooth)
2. FM radio modulis
– Ieteicams: RDA5807M (vienkāršs un lēts)
– Alternatīva: Si4703
3. Audio pastiprinātāja modulis
– Piemēram, PAM8403 (3 W pastiprinātājs, mazs, viegls)
4. Skaļrunis 4Ω/8Ω (1–3W) vai izeja uz austiņām
5. Ekrāns (pēc izvēles, bet noderīgs)
– 0.96 collu I2C OLED vai 16×2 I2C LCD frekvences attēlošanai
6. Poga/kodētājs
– Pogas augšup/lejup regulēšanai
– Rotācijas kodētājs (pēc izvēles) īstai radioaktivitātes pieredzei
7. Antena
– FM diapazonam bieži vien pietiek ar 70–80 cm garu kabeli.
8. Barošanas avots
– 5 V (ārējais akumulators, USB adapteris vai akumulators + pastiprinātājs/lādētājs)
9. Pārslēgšanas kabeļi, maizes dēlis/drukātā shēma un kaste (pēc izvēles)
Sākot no
3. Vienkārša ķēdes shēma
Ķēdes princips:
– Mikrokontrolleris sazinās ar radio moduli, izmantojot I2C:
– Dabas resursi dabas resursiem
– SCL uz SCL
– VCC līdz 3.3 V vai 5 V (pielāgojiet moduli)
– Zemējums uz zemējumu
– Radio moduļa audio izeja tiek savienota ar pastiprinātāja ieeju:
– LOUT/ROUT (vai audio izeja) → pastiprinātāja kreisās/labās puses ieeja
– GND audio → GND pastiprinātājs
– Pastiprinātāja izeja uz skaļruņiem:
– OUT+ un OUT- uz skaļruņiem
- Rokturis:
– Poga uz Arduino digitālo tapu + GND (izmantojiet iekšējo uzvilkšanas vadu)
Ja izmantojat I2C OLED displeju:
– Izveidot savienojumu ar to pašu SDA/SCL (I2C var koplietot līnijas), ja vien I2C adreses nekonfliktē.
Svarīga piezīme: daži radio moduļi vislabāk darbojas ar 3.3 V spriegumu. Ja izmantojat 5 V Arduino, pārliecinieties, vai jūsu modulis atbalsta 5 V, vai izmantojiet līmeņa pārslēdzēju.
Sākot no
4. Programmas loģika (kā tā darbojas)
Kopumā radio programma veiks šādas darbības:
1. I2C inicializācija
2. Inicializējiet RDA5807 moduli
3. Iestatiet sākotnējo frekvenci (piemēram, 99.9 MHz)
4. Lasīšanas pogas ievade:
– Poga “+” palielina frekvenci (piemēram, +0.1 MHz)
– Poga “-” samazina frekvenci.
– Poga “Meklēt” (pēc izvēles) automātiskai skenēšanai
5. Parādiet frekvenci ekrānā
Šī struktūra atvieglo radio paplašināšanu. Varat pievienot iepriekš iestatītus kanālus (atmiņu), miega taimerus un pat vadīt, izmantojot lietotni.
Sākot no
5. Vienkāršs ieviešanas piemērs (Arduino + RDA5807 + OLED)
Tālāk sniegts praktisko darba soļu pārskats:
1. darbība. Sagatavojiet bibliotēku
Meklējiet RDA5807 paredzētu Arduino bibliotēku, piemēram:
– “RDA5807” vai “RDA5807M” no Arduino IDE bibliotēkas pārvaldnieka.
OLED ekrāniem:
– Adafruit SSD1306 un Adafruit GFX (vai U8g2).
2. solis: pierakstiet minimālās funkcijas
Sāciet ar galvenajām funkcijām:
– setVolume()
– setFrequency()
– displejaBiežums()
3. darbība. Pievienojiet pogu
Izmantojiet `INPUT_PULLUP` vienkāršai pogu secībai:
– viena pogas kāja līdz digitālajai tapai
– viena pogas kāja pie GND
Sākot no
6. Padomi stabilākai un skaidrākai radioaparāta uztveršanai
1. Antenai ir liela ietekme
Kā vienkāršu antenu var izmantot 75 cm garu kabeli. Pievienojiet to moduļa antenas kontaktam (ja tāds ir pieejams) vai datu lapā ieteiktajam punktam.
2. Atdaliet audio ceļu no strāvas ceļa.
Troksnis bieži rodas, ja elektrolīnijas atrodas tuvu audiolīnijām. Izmantojiet īsus kabeļus un kārtīgi sakārtojiet tos.
3. Izmantojiet atvienošanas kondensatoru
Lai samazinātu troksni, radio un pastiprinātāja moduļu tuvumā pievienojiet 0.1 µF un 10 µF kondensatorus.
4. Kārtīgs zemējums
Ja iespējams, mēģiniet visus zemējumus savienot ar vienu galveno punktu (zvaigžņu zemējumu).
5. Kastes un skaļruņa pozīcija
Skaļruņu un korpusa novietojums ietekmē skaņas kvalitāti. Mazs korpuss ar labi pieguļošām gaisa ventilācijas atverēm skanēs kompaktāk.
Sākot no
7. Funkciju izstrāde (lai padarītu “viegli programmējamu” pievilcīgāku)
Kad pamata radio ir uzstādīts un darbojas, varat pievienot šādas funkcijas:
– Staciju iepriekšiestatījumi (1–10 atmiņas pogas)
Saglabājiet frekvenci EEPROM (Arduino) atmiņā, lai tā nepazustu, kad ierīce tiek izslēgta.
– Automātiska skenēšana
Radio skenē frekvences un apstājas, kad signāls ir spēcīgs.
– RDS (radio datu sistēma)
Daži moduļi atbalsta stacijas nosaukuma/teksta attēlošanu, atkarībā no aparatūras.
– Digitālā skaļuma kontrole
To var izdarīt, izmantojot radio moduli vai pastiprinātāju (ja pastiprinātājs atbalsta digitālo potenciometru).
– Enerģijas taupīšanas režīms / miega taimeris
Piemērots pārnēsājamam radioaparātam.
– ESP32 + tīmekļa vadība
Izmantojot ESP32, jūs varat kontrolēt frekvenci no sava tālruņa pārlūkprogrammas.
Sākot no
8. Paredzamās izmaksas un grūtības
Aptuvenās izmaksas (var atšķirties atkarībā no veikala/reģiona):
– Arduino Nano: 40–80 tūkstoši rūpiju
– RDA5807 modulis: 20–40 tūkstoši rūpiju
– PAM8403: 10–20 tūkstoši rūpiju
– OLED I2C: 30–60 tūkstoši rūpiju
– Runātājs: 10 tūkstoši–30 tūkstoši rūpiju
Vienkārša projekta kopējās izmaksas: aptuveni 100–200 tūkstoši rūpiju.
Grūtības līmenis: iesācējs–vidējais. Iesācējiem galvenās grūtības parasti ir elektroinstalācija, radio moduļa saderības nodrošināšana (3.3 V/5 V) un piemērotas bibliotēkas atrašana.
Sākot no
9. Penutups
Programmējama radio izveide ir gan jautrs, gan izglītojošs projekts. Paļaujoties uz digitālā uztvērēja moduli, piemēram, RDA5807, jūs varat koncentrēties uz programmēšanu un funkcijām, nevis uz sarežģītām RF shēmām. Rezultāts ir moderns, pašrocīgi lietojams FM radio, ko varat pielāgot savām vēlmēm: pievienot displeju, iestatījumus, skenēt un pat vadīt to internetā, izmantojot ESP32.
Ja vēlaties, varu palīdzēt sagatavoties:
– ekonomiskākās versijas sastāvdaļu saraksts,
– elektroinstalācijas shēma atbilstoši jūsu plates tipam (Arduino vai ESP32),
– un augšupielādei gatavi koda paraugi (plus iepriekš iestatītas un automātiskās skenēšanas funkcijas).