Hogyan készítsünk Raspberry Pi alapú rádiót

Hogyan készítsünk Raspberry Pi alapú rádiót

A rádió talán „régi” technológiának hangzik, de pontosan ez a vonzereje: egyszerű, megbízható, és továbbra is rendkívül releváns mind a szórakoztató, mind az oktatási projektekben. Egy Raspberry Pi-vel modern, rugalmas rádiót hozhatsz létre – lehet internetes streaming rádió, helyi zenelejátszó, vagy akár (egy kiegészítő modullal) FM rádió is. Ez a cikk bemutatja, hogyan építhetsz praktikus módon egy Raspberry Pi alapú rádiót, a hardverbeállítástól a szoftverkonfigurációig.

-

1. Raspberry Pi alapú rádió koncepció

Általánosságban két fő megközelítés létezik:

1. Internetes rádió (streamelés)
A Raspberry Pi rádióadásokat játszik le az internetről Wi-Fi/Ethernet kapcsolaton keresztül. Ez a legegyszerűbb és leggyakoribb módszer, mivel nem igényel semmilyen speciális rádiófrekvenciás berendezést.

2. FM/AM rádió (opcionális eszközzel)
Tuner modult (pl. FM vevőt I2C/SPI-n keresztül) vagy szoftveresen definiált rádió (SDR) eszközt igényel. A konfiguráció összetettebb, és gyakran a használt eszköztől függ.

Ebben a cikkben a fő hangsúly az internetes rádión van, mivel ez a leginkább kezdőbarát és alkalmas arra, hogy rövid idő alatt lehessen zenét alkotni.

-

2. Szükséges felszerelés

Íme egy lista az ajánlott komponensekről:

– Raspberry Pi (Pi 3/4/Zero 2 W ajánlott)
– MicroSD minimum 8–16 GB
– Stabil tápegység (5V, áramerősség a Pi modell szerint)
– Internetkapcsolat (Wi-Fi vagy LAN-kábel)
– Hangkimenet:
– Aktív hangszórók 3.5 mm-es jack csatlakozón keresztül (a támogatott modelleken), vagy
– USB hangszóró/erősítő, vagy
– DAC audio HAT (opcionális, jobb minőség)
– Monitor és billentyűzet (a kezdeti beállításhoz) vagy SSH hozzáférés
– Projekt burkolat/doboz (opcionális, a tisztaság kedvéért)

Ha fizikai vezérlőkkel rendelkező rádiót szeretne, akkor a következőket adhatja hozzá:
– Nyomógomb, forgójeladó vagy OLED/LCD képernyő.

-

3. A Raspberry Pi operációs rendszer telepítése

1. Töltsd le és telepítsd a Raspberry Pi Imager alkalmazást a számítógépedre/laptopodra.
2. Helyezze be a microSD kártyát, majd flashelje a Raspberry Pi OS Lite-ot (asztali verzió nélkül) az erőforrás-hatékony használat érdekében, vagy az asztali verziót, ha grafikus felületet szeretne.
3. A kép írása előtt beállíthatja:
– Wi-Fi (SSID és jelszó)
– Felhasználónév és jelszó
– SSH aktiválás
4. Indítsd el a Raspberry Pi-t, és ellenőrizd, hogy működik-e az internet.

A rendszerbe való bejelentkezés után frissítse a csomagokat:

„Bash
sudo apt frissítés
sudo apt upgrade -y
""

-

4. Hang beállítása Raspberry Pi-n

Az észlelt audioeszközök ellenőrzése:

„Bash
aplay -l
""

Ha HDMI-n vagy jack-en keresztül használ hangot (a modelltől függően), kiválaszthatja az alapértelmezett kimenetet. A Raspberry Pi operációs rendszer egyes verziói automatikusan konfigurálják a hangbeállításokat, de a kimenetet a következőképpen tesztelheti:

„Bash
hangszóró-teszt -t wav -c 2
""

Ha USB hangkártyát vagy DAC HAT-ot használsz, az általában új eszközként jelenik meg. Győződj meg róla, hogy a kimenet megfelelő a rádió hallgatásához.

-

5. Az Internetes Rádiólejátszó (MPD + MPC) telepítése

Az egyik legstabilabb módszer az MPD (Music Player Daemon) használata hanganyagok lejátszására és az MPC vezérlőként való használata a terminálból.

Telepítse a csomagot:

„Bash
sudo apt install -y mpd mpc
""

Győződjön meg róla, hogy az MPD fut:

„Bash
sudo systemctl enable mpd
sudo systemctl indítsa el az mpd-t
""

Állapot ellenőrzése:

„Bash
systemctl állapot mpd
""

-

6. Rádióállomások listájának hozzáadása

Az MPD képes URL-streameket lejátszani. Rádióállomásokat adhatsz hozzá az MPD lejátszási listáidhoz.

Példa egy rádiófolyam hozzáadására:

„Bash
mpc hozzáadja a http://streamurl-radio-anda:8000/stream címet
""

Akkor játssz:

„Bash
mpc játék
""

A lista megtekintéséhez:

„Bash
mpc lejátszási lista
""

Kedvenc állomások lejátszási listájának létrehozása
Létrehozhatsz egy `.m3u` lejátszási lista fájlt:

1. Hozz létre egy lejátszási lista mappát (ha még nem létezik):
„Bash
mkdir -p ~/lejátszási listák
""

2. Fájl létrehozása:
„Bash
nano ~/lejátszási listák/rádió.m3u
""

3. Tölts ki néhány streaming URL-t, például:
""
http://example.com/stream1
http://example.com/stream2
http://example.com/stream3
""

Add hozzá őket az MPD-hez egyenként betöltéssel, vagy az MPD zene/lejátszási lista könyvtár beállításával. Gyors módszer: közvetlenül egy fájlból add hozzá őket (opcionális az MPD konfigurációjától függően), vagy másold a lejátszási listát az MPD lejátszási lista mappájába (általában `/var/lib/mpd/playlists/`).

-

7. MPD konfiguráció rádióhoz való alkalmasabbá tétele érdekében

MPD konfiguráció szerkesztése:

„Bash
sudo nano /etc/mpd.conf
""

Néhány fontos rész:

– Győződjön meg arról, hogy a hangkimenet megfelelő. Gyakori példák:
„`konf
hang kimenet {
írja be az „alsa” szót
név „ALSA kimenet”
mixer_type „szoftver”
}
""

– Beállíthatja a puffert a stabilabb streaming érdekében (opcionális, a hálózati viszonyoktól függően).

Ha kész, indítsd újra az MPD-t:

„Bash
sudo systemctl indítsa újra az mpd-t
""

-

8. A rádió automatikus bekapcsolása indításkor

Ahhoz, hogy a Raspberry Pi bekapcsolás után azonnal játssza a rádiót:

1. Hozz létre egy egyszerű szkriptet, például:

„Bash
nano ~/start-radio.sh
""

Tartalom:

„Bash
!/bin/bash
alvás 5
mpc tiszta
mpc hozzáadja a http://streamurl-radio-anda:8000/stream címet
mpc hangerő 70
mpc játék
""

Mentés, majd végrehajtási engedély megadása:

„Bash
chmod +x ~/start-radio.sh
""

2. Hozz létre egy systemd szolgáltatást:

„Bash
sudo nano /etc/systemd/system/radio.service
""

Tartalom:

„ez
[Egység]
Leírás=Rádió automatikus lejátszása
After=network-online.target mpd.service
Wants=network-online.target

[Szolgáltatás]
Felhasználó=pi
ExecStart=/home/pi/start-radio.sh
Újraindítás=hiba esetén

[Telepítés]
WantedBy = multi-user.target
""

Engedélyezés:

„Bash
sudo systemctl daemon-reload
sudo systemctl engedélyezze a rádió.szolgáltatást
sudo systemctl indítsa el a rádió.szolgáltatást
""

Megjegyzés: ha a felhasználónév nem `pi`, akkor módosítsa az elérési utat és a `User=` paramétert.

-

9. Vezérlők hozzáadása (opcionális)

Hogy igazi rádiónak tűnjön, fizikai vezérlőket is hozzáadhatsz:

– Következő/Előző gomb az állomások váltásához:
– `mpc következő`
– `mpc előző`
– Lejátszás/Leállítás gomb:
– `mpc váltás`
– `mpc stop`
– Forgójeladó a hangerő beállításához:
– `mpc hangerő +5`
– `mpc hangerő -5`

A gombok megvalósításához használhatod a Pythont (GPIO) és meghívhatod az `mpc` parancsot. Ez a kombináció nagyon népszerű, mert egyszerű és könnyen fejleszthető.

-

10. Fejlesztési tippek és hibaelhárítás

Néhány gyakori probléma és azok megoldása:

1. Nincs hang
– Győződjön meg arról, hogy a hangkimenet megfelelő (ALSA eszköz).
– Próbáld meg kicserélni a hangszórót/USB hangkártyát.
– Győződjön meg róla, hogy a hangerő nem 0: `mpc volume 80`

2. A streamelés szakaszos
– Ha lehetséges, használjon LAN-kapcsolatot.
– Késleltetés hozzáadása a rendszerindításkor történő lejátszás előtt (`sleep 5` vagy `sleep 10`).
– Válasszon alacsonyabb bitrátájú adatfolyamot.

3. Az MPD nem tudja lejátszani az URL-t
– Próbáljon meggyőződni arról, hogy az URL helyes, és ugyanarról a hálózatról megnyitható.
– Győződjön meg róla, hogy elérhetőek a támogató csomagok (általában elegendőek a legújabb Raspberry Pi operációs rendszeren).

4. Rádióbarátabb felületet szeretne?
– Telepítsen egy frontendet, például az ncmpcpp-t (terminál felhasználói felület), vagy hozzon létre egy egyszerű webes felhasználói felületet.

-

Záró

Egy Raspberry Pi alapú rádió építése egyszerre szórakoztató és kifizetődő projekt. Az MPD és az MPC kombinálásával egy stabil internetes rádiót hozhatsz létre, amely automatikusan elindul a rendszerindításkor, és könnyen bővíthető fizikai gombokkal, kis képernyővel és akár egyedi tokkal rendelkező eszközökkel is. Miután letisztult az alapverzió, tovább is léphetsz: hozzáadhatsz egy OLED képernyőt az állomások nevének megjelenítéséhez, létrehozhatsz egy előre beállított menüt, vagy akár egy tuner modult az FM rádióhoz.

Ha szeretnéd, folytathatom konkrétabb verziókkal: például egy használatra kész indonéz rádióállomások listájával (URL), egy Python kód példával egy GPIO kapcsolóhoz, vagy egy útmutatóval a DAC HAT használatához a sokkal jobb hangminőség érdekében.

Hozzászólás írása