Kaip pasigaminti „Raspberry Pi“ pagrindu sukurtą radiją

Kaip pasigaminti „Raspberry Pi“ pagrindu sukurtą radiją

Radijas gali skambėti kaip „sena“ technologija, tačiau būtent toks ir yra jo patrauklumas: paprastas, patikimas ir vis dar labai aktualus tiek pramogų, tiek edukaciniuose projektuose. Su „Raspberry Pi“ galite sukurti modernų, lankstų radiją – tai gali būti interneto transliacijų radijas, vietinis muzikos grotuvas arba net (su papildomu moduliu) FM radijas. Šiame straipsnyje aprašoma, kaip praktiškai sukurti „Raspberry Pi“ pagrindu sukurtą radiją, pradedant aparatinės įrangos sąranka ir baigiant programinės įrangos konfigūravimu.

-

1. Raspberry Pi pagrindu sukurta radijo koncepcija

Apskritai yra du pagrindiniai metodai:

1. Internetinis radijas (transliacija)
„Raspberry Pi“ groja radijo transliacijas iš interneto per „Wi-Fi“ / eternetą. Tai lengviausias ir labiausiai paplitęs metodas, nes jam nereikia jokios specialios radijo dažnių įrangos.

2. FM/AM radijas (su papildomu įrenginiu)
Reikalingas derinimo modulis (pvz., FM imtuvas per I2C/SPI) arba programiniu būdu apibrėžto radijo (SDR) įrenginys. Konfigūracija yra sudėtingesnė ir dažnai priklauso nuo naudojamo įrenginio.

Šiame straipsnyje pagrindinis dėmesys skiriamas internetiniam radijui, nes jis yra labiausiai pritaikytas pradedantiesiems ir tinkamas kurti per trumpą laiką.

-

2. Reikalinga įranga

Čia pateikiamas rekomenduojamų komponentų sąrašas:

– Raspberry Pi (rekomenduojama Pi 3/4/Zero 2 W)
– „MicroSD“ kortelė, mažiausiai 8–16 GB
– Stabilus maitinimo šaltinis (5 V, srovė pagal Pi modelį)
– interneto ryšys („Wi-Fi“ arba LAN kabelis)
– Garso išvestis:
– Aktyvūs garsiakalbiai per 3.5 mm lizdą (palaikomuose modeliuose) arba
– USB garsiakalbis / stiprintuvas arba
– DAC garso HAT (pasirinktinai, geresnė kokybė)
– Monitorius ir klaviatūra (pradiniam nustatymui) arba SSH prieiga
– Projekto korpusas/dėžutė (nebūtina, dėl tvarkingumo)

Jei norite radijo imtuvo su fiziniais valdikliais, galite pridėti:
– Mygtukas, sukamasis kodavimo valdiklis arba OLED/LCD ekranas.

-

3. „Raspberry Pi“ operacinės sistemos diegimas

1. Atsisiųskite ir įdiekite „Raspberry Pi Imager“ į savo kompiuterį / nešiojamąjį kompiuterį.
2. Įdėkite „microSD“ kortelę, tada įdiekite „Raspberry Pi OS Lite“ (be darbalaukio versijos), kad galėtumėte naudoti taupiai, arba darbalaukio versiją, jei norite grafinės sąsajos.
3. Prieš rašydami paveikslėlį, galite nustatyti:
– „Wi-Fi“ (SSID ir slaptažodis)
– Vartotojo vardas ir slaptažodis
– SSH aktyvinimas
4. Paleiskite „Raspberry Pi“ ir įsitikinkite, kad veikia internetas.

Prisijungę prie sistemos, atnaujinkite paketus:

„bash
Sudo apt atnaujinimas
sudo apt atnaujinimas -y
„“

-

4. Garso nustatymas „Raspberry Pi“

Patikrinkite aptiktus garso įrenginius:

„bash
aplay -l
„“

Jei garsą naudojate per HDMI arba lizdą (priklausomai nuo modelio), galite pasirinkti numatytąją išvestį. Kai kurios „Raspberry Pi OS“ versijos automatiškai konfigūruoja garso nustatymus, tačiau galite patikrinti išvestį:

„bash
garsiakalbio testas -t wav -c 2
„“

Jei naudojate USB garso plokštę arba DAC HAT, jis paprastai bus rodomas kaip naujas įrenginys. Įsitikinkite, kad jūsų išvestis yra tinkama, kad girdėtumėte radiją.

-

5. Internetinio radijo grotuvo (MPD + MPC) diegimas

Vienas iš stabiliausių būdų yra naudoti MPD (Music Player Daemon) garso atkūrimui ir MPC kaip valdiklį iš terminalo.

Įdiekite paketą:

„bash
sudo apt install -y mpd mpc
„“

Įsitikinkite, kad MPD veikia:

„bash
sudo systemctl įjungti mpd
sudo systemctl paleisti mpd
„“

Patikrinkite būseną:

„bash
systemctl būsena mpd
„“

-

6. Radijo stočių sąrašo pridėjimas

MPD gali leisti URL srautus. Galite įtraukti radijo stotis į MPD grojaraščius.

Vieno radijo srauto pridėjimo pavyzdys:

„bash
mpc pridėti http://streamurl-radio-anda:8000/stream
„“

Tada žaiskite:

„bash
mpc žaidimas
„“

Norėdami peržiūrėti sąrašą:

„bash
mpc grojaraštis
„“

Sukurkite mėgstamiausių stočių grojaraštį
Galite sukurti grojaraščio failą „.m3u“:

1. Sukurkite grojaraščio aplanką (jei jo dar nėra):
„bash
mkdir -p ~/grojaraščiai
„“

2. Sukurkite failą:
„bash
nano ~/grojaraščiai/radijo.m3u
„“

3. Įveskite kai kuriuos srautinio perdavimo URL, pavyzdžiui:
„“
http://example.com/stream1
http://example.com/stream2
http://example.com/stream3
„“

Pridėkite juos prie MPD įkeldami juos po vieną arba nustatydami savo MPD muzikos / grojaraščių katalogą. Greitas būdas: pridėkite juos tiesiai iš failo (nebūtina, priklausomai nuo MPD konfigūracijos) arba nukopijuokite grojaraštį į savo MPD grojaraščio aplanką (paprastai `/var/lib/mpd/playlists/`).

-

7. MPD konfigūracija, kad ji būtų tinkamesnė radijui

Redaguoti MPD konfigūraciją:

„bash
sudo nano /etc/mpd.conf
„“

Kai kurios svarbios dalys:

– Įsitikinkite, kad garso išvestis yra tinkama. Dažniausi pavyzdžiai:
„konf
audio_putput {
įveskite „alsa“
pavadinimas „ALSA Output“
mikserio_tipas „programinė įranga“
}
„“

– Galite nustatyti buferį, kad transliacija būtų stabilesnė (nebūtina, priklausomai nuo tinklo sąlygų).

Baigę paleiskite MPD iš naujo:

„bash
sudo systemctl paleisti mpd iš naujo
„“

-

8. Priverskite radiją automatiškai įsijungti paleidžiant sistemą

Kad „Raspberry Pi“ paleistų radiją iš karto po įjungimo:

1. Sukurkite paprastą scenarijų, pavyzdžiui:

„bash
nano ~/start-radio.sh
„“

Isi:

„bash
!/bin/bash
miegoti 5
mpc aišku
mpc pridėti http://streamurl-radio-anda:8000/stream
mpc tūris 70
mpc žaidimas
„“

Išsaugoti, tada suteikti vykdymo leidimą:

„bash
chmod +x ~/start-radio.sh
„“

2. Sukurkite sisteminę paslaugą:

„bash
sudo nano /etc/systemd/system/radio.service
„“

Isi:

""ini
[Vienetas]
Aprašymas = Automatinis radijo paleidimas
Po=network-online.target mpd.service
Nori=tinklas-internete.target

[Paslauga]
Vartotojas=pi
ExecStart=/home/pi/start-radio.sh
Paleisti iš naujo = esant nesėkmei

[Diegti]
WantedBy = multi-user.target
„“

Įgalinti:

„bash
sudo systemctl daemon-reload
sudo systemctl įjungti radijo.paslaugą
sudo systemctl paleisti radijo.paslaugą
„“

Pastaba: jei vartotojo vardas nėra „pi“, pakoreguokite kelią ir `User=`.

-

9. Valdiklių pridėjimas (neprivaloma)

Kad radijas atrodytų kaip tikras, galite pridėti fizinius valdiklius:

– Mygtukas „Kitas/Ankstesnis“, skirtas stočių perjungimui:
– „mpc kitas“
– `mpc ankst.`
– Mygtukas „Paleisti / sustabdyti“:
– „mpc perjungiklis“
– „mpc stop“
– Sukamasis tūrio kodavimo įrenginys:
– `mpc tūris +5`
– `mpc tūris -5`

Mygtukams įgyvendinti galite naudoti „Python“ (GPIO) ir iškviesti komandą „mpc“. Šis derinys yra labai populiarus, nes jį paprasta ir lengva sukurti.

-

10. Kūrimo patarimai ir trikčių šalinimas

Kai kurios dažniausios problemos ir jų sprendimai:

1. Nėra garso
– Įsitikinkite, kad garso išvestis yra tinkama (ALSA įrenginys).
– Pabandykite pakeisti garsiakalbį / USB garso plokštę.
– Įsitikinkite, kad garsumas nėra 0: `mpc volume 80`

2. Srautas transliuojamas su pertrūkiais
– Jei įmanoma, naudokite LAN ryšį.
– Pridėti uždelsimą prieš grojimą paleidžiant sistemą („sleep 5“ arba „sleep 10“).
– Pasirinkite mažesnio bitų srauto srautą.

3. MPD negali paleisti URL
– Įsitikinkite, kad URL adresas teisingas ir jį galima atidaryti iš to paties tinklo.
– Įsitikinkite, kad yra prieinami palaikymo paketai (paprastai jų pakanka naujausioje „Raspberry Pi“ OS).

4. Norite labiau „radijo“ sąsajos
– Įdiekite vartotojo sąsają, pvz., „ncmpcpp“ (terminalo vartotojo sąsają), arba sukurkite paprastą žiniatinklio vartotojo sąsają.

-

Uždarymas

Radijo imtuvo, pagrįsto „Raspberry Pi“, kūrimas yra ir smagus, ir naudingas projektas. Sujungus MPD ir MPC, galima sukurti stabilų internetinį radiją, kuris įsijungia automatiškai paleidžiant sistemą ir yra lengvai išplečiamas, kad apimtų įrenginius su fiziniais mygtukais, mažu ekranu ir netgi pritaikytu dėklu. Įdiegę pagrindinę versiją, galite žengti dar vieną žingsnį: pridėti OLED ekraną, kuriame būtų rodomi stočių pavadinimai, sukurti iš anksto nustatytų stočių meniu arba net pridėti FM radijo imtuvo modulį.

Jei norite, galiu tęsti su konkretesnėmis versijomis: pavyzdžiui, paruoštų naudoti Indonezijos radijo stočių sąrašą (URL), GPIO jungiklio „Python“ kodo pavyzdį arba DAC HAT naudojimo vadovą, siekiant daug geresnės garso kokybės.

Palikite komentarą