Kako narediti radio na osnovi Raspberry Pi
Radio se morda sliši kot »stara« tehnologija, vendar je prav v tem njegova privlačnost: preprost, zanesljiv in še vedno zelo pomemben tako za zabavne kot izobraževalne projekte. Z Raspberry Pi lahko ustvarite sodoben, prilagodljiv radio – lahko je internetni pretočni radio, lokalni predvajalnik glasbe ali celo (z dodatnim modulom) FM radio. Ta članek obravnava, kako na praktičen način sestaviti radio na osnovi Raspberry Pi, od nastavitve strojne opreme do konfiguracije programske opreme.
-
1. Koncept radia na osnovi Raspberry Pi
Na splošno obstajata dva glavna pristopa:
1. Internetni radio (pretakanje)
Raspberry Pi predvaja radijske oddaje iz interneta prek omrežja Wi-Fi/Ethernet. To je najlažja in najpogostejša metoda, saj ne zahteva posebne RF opreme.
2. FM/AM radio (z dodatno napravo)
Zahteva sprejemniški modul (npr. FM sprejemnik prek I2C/SPI) ali napravo za programsko definirani radio (SDR). Konfiguracija je bolj zapletena in je pogosto odvisna od uporabljene naprave.
V tem članku je glavni poudarek na internetnem radiu, ker je najbolj prijazen do začetnikov in primeren za ustvarjanje v kratkem času.
-
2. Potrebna oprema
Tukaj je seznam priporočenih komponent:
– Raspberry Pi (priporočeno Pi 3/4/Zero 2 W)
– MicroSD najmanj 8–16 GB
– Stabilno napajanje (5 V, tok glede na model Pi)
– Internetna povezava (Wi-Fi ali LAN kabel)
– Zvočni izhod:
– Aktivni zvočniki prek 3.5 mm priključka (pri podprtih modelih) ali
– USB zvočnik/ojačevalnik ali
– DAC avdio HAT (neobvezno, boljša kakovost)
– Monitor in tipkovnica (za začetno nastavitev) ali dostop prek SSH
– Ohišje/škatla projekta (neobvezno, za urejenost)
Če želite radio s fizičnimi kontrolami, lahko dodate:
– Pritisni gumb, rotacijski kodirnik ali OLED/LCD zaslon.
-
3. Namestitev operacijskega sistema Raspberry Pi
1. Prenesite in namestite Raspberry Pi Imager na svoj računalnik/prenosnik.
2. Vstavite kartico microSD in nato nanjo naložite Raspberry Pi OS Lite (brez namizja) za učinkovito uporabo ali namizno različico, če želite grafični vmesnik.
3. Preden napišete sliko, lahko nastavite:
– Wi-Fi (SSID in geslo)
– Uporabniško ime in geslo
– Aktivacija SSH
4. Zaženite Raspberry Pi in se prepričajte, da internet deluje.
Po prijavi v sistem posodobite pakete:
“`bash
Posodobi sudo apt
sudo apt nadgradnja -y
""
-
4. Nastavitev zvoka na Raspberry Pi
Preverite zaznane zvočne naprave:
“`bash
aplay -l
""
Če uporabljate zvok prek HDMI ali priključka (odvisno od modela), lahko izberete privzeti izhod. Nekatere različice sistema Raspberry Pi OS samodejno konfigurirajo nastavitve zvoka, vendar lahko izhod preizkusite tako, da:
“`bash
preizkus zvočnika -t wav -c 2
""
Če uporabljate zvočno kartico USB ali DAC HAT, se bo običajno prikazal kot nova naprava. Prepričajte se, da je vaš izhod pravilen, da boste slišali radio.
-
5. Namestitev predvajalnika internetnega radia (MPD + MPC)
Eden najbolj stabilnih načinov je uporaba MPD (Music Player Daemon) za predvajanje zvoka in MPC kot krmilnika iz terminala.
Namestite paket:
“`bash
sudo apt install -y mpd mpc
""
Prepričajte se, da MPD deluje:
“`bash
sudo systemctl omogoči mpd
sudo systemctl zagon mpd
""
Preveri stanje:
“`bash
status systemctl mpd
""
-
6. Dodajanje seznama radijskih postaj
MPD lahko predvaja URL tokove. Na sezname predvajanja MPD lahko dodate radijske postaje.
Primer dodajanja enega radijskega toka:
“`bash
mpc dodaj http://streamurl-radio-anda:8000/stream
""
Potem igraj:
“`bash
predvajanje mpc
""
Za ogled seznama:
“`bash
seznam predvajanja mpc
""
Ustvarite seznam predvajanja priljubljenih postaj
Datoteko seznama predvajanja `.m3u` lahko ustvarite:
1. Ustvarite mapo s seznami predvajanja (če je še ni):
“`bash
mkdir -p ~/seznami predvajanja
""
2. Ustvarite datoteko:
“`bash
nano ~/seznami predvajanja/radio.m3u
""
3. Izpolnite nekaj URL-jev za pretakanje, na primer:
""
http://example.com/stream1
http://example.com/stream2
http://example.com/stream3
""
Dodajte jih v MPD tako, da jih naložite posamično ali tako, da nastavite imenik za glasbo/seznam predvajanja MPD. Hiter način: dodajte jih neposredno iz datoteke (neobvezno, odvisno od konfiguracije MPD) ali kopirajte seznam predvajanja v mapo s seznamom predvajanja MPD (običajno `/var/lib/mpd/playlists/`).
-
7. Konfiguracija MPD za bolj primerno uporabo pri radiu
Urejanje konfiguracije MPD:
“`bash
sudo nano /etc/mpd.conf
""
Nekaj pomembnih delov:
– Prepričajte se, da je zvočni izhod pravilen. Pogosti primeri:
"`konf
avdio izhod {
vtipkajte »alsa«
ime »Izhod ALSA«
mešalnik_tip »programska oprema«
}
""
– Medpomnilnik lahko nastavite za stabilnejše pretakanje (neobvezno, odvisno od omrežnih pogojev).
Ko končate, znova zaženite MPD:
“`bash
sudo systemctl ponovni zagon mpd
""
-
8. Naj se radio samodejno vklopi ob zagonu
Če želite, da Raspberry Pi predvaja radio takoj po vklopu:
1. Ustvarite preprost skript, na primer:
“`bash
nano ~/start-radio.sh
""
Vsebina:
“`bash
!/bin/bash
spanja 5
mpc jasno
mpc dodaj http://streamurl-radio-anda:8000/stream
prostornina mpc 70
predvajanje mpc
""
Shrani in nato dodeli dovoljenje za izvajanje:
“`bash
chmod +x ~/start-radio.sh
""
2. Ustvarite storitev systemd:
“`bash
sudo nano /etc/systemd/system/radio.service
""
Vsebina:
"to"
[Enota]
Opis = Samodejno predvajanje radia
Po=omrežje-na-spletu.cilj mpd.storitev
Želi=omrežje-na-spletu.cilj
[Storitev]
Uporabnik=pi
ExecStart=/home/pi/start-radio.sh
Ponovni zagon=ob-napaki
[Namesti]
WantedBy = multi-user.target
""
Omogoči:
“`bash
sudo systemctl daemon-reload
sudo systemctl omogoči radio.service
sudo systemctl zaženi radio.service
""
Opomba: če uporabniško ime ni `pi`, prilagodite pot in `User=`.
-
9. Dodajanje kontrolnikov (neobvezno)
Da bi bil občutek pravega radia, lahko dodate fizične kontrole:
– Gumb Naprej/Nazaj za menjavo postaj:
– `mpc next`
– `mpc prev`
– Gumb za predvajanje/ustavitev:
– `mpc preklop`
– `mpc stop`
– Rotacijski kodirnik za glasnost:
– `glasnost mpc +5`
– `mpc volumen -5`
Za implementacijo gumbov lahko uporabite Python (GPIO) in pokličete ukaz `mpc`. Ta kombinacija je zelo priljubljena, ker je preprosta in enostavna za razvoj.
-
10. Nasveti za razvoj in odpravljanje težav
Nekaj pogostih težav in njihove rešitve:
1. Brez zvoka
– Prepričajte se, da je zvočni izhod pravilen (naprava ALSA).
– Poskusite zamenjati zvočnik/zvočno kartico USB.
– Prepričajte se, da glasnost ni 0: `mpc volume 80`
2. Pretakanje je prekinjeno
– Če je mogoče, uporabite LAN povezavo.
– Dodajte zakasnitev pred predvajanjem ob zagonu (`sleep 5` ali `sleep 10`).
– Izberite tok z nižjo bitno hitrostjo.
3. MPD ne more predvajati URL-ja
– Poskusite se prepričati, da je URL pravilen in da ga je mogoče odpreti iz istega omrežja.
– Prepričajte se, da so na voljo podporni paketi (običajno zadostujejo za najnovejši operacijski sistem Raspberry Pi).
4. Želite bolj "radijski" vmesnik
– Namestite vmesnik, kot je ncmpcpp (terminalni uporabniški vmesnik), ali ustvarite preprost spletni uporabniški vmesnik.
-
Zapiranje
Izdelava radia na osnovi Raspberry Pi je zabaven in koristen projekt. Z združevanjem MPD in MPC lahko ustvarite stabilen internetni radio, ki se samodejno zažene ob zagonu in ga je mogoče enostavno razširiti, da vključuje naprave s fizičnimi gumbi, majhnim zaslonom in celo ohišjem po meri. Ko imate osnovno različico, lahko greste še korak dlje: dodate OLED zaslon za prikaz imen postaj, ustvarite prednastavljeni meni ali celo dodate sprejemnik za FM radio.
Če želite, lahko nadaljujem z bolj specifičnimi različicami: na primer seznamom indonezijskih radijskih postaj (URL), primerom kode v Pythonu za stikalo GPIO ali vodnikom za uporabo DAC HAT za veliko boljšo kakovost zvoka.