Raspberry Pi asosidagi radio qanday yaratiladi
Radio "eski" texnologiyadek tuyulishi mumkin, ammo uning jozibadorligi aynan shunda: sodda, ishonchli va ko'ngilochar va ta'lim loyihalari uchun juda dolzarb. Raspberry Pi yordamida siz zamonaviy, moslashuvchan radio yaratishingiz mumkin — bu internet orqali uzatiladigan radio, mahalliy musiqa pleyeri yoki hatto (qo'shimcha modul bilan) FM radio bo'lishi mumkin. Ushbu maqolada apparat sozlamalaridan tortib dasturiy ta'minot konfiguratsiyasigacha bo'lgan amaliy usulda Raspberry Pi asosidagi radioni qanday yaratish haqida so'z boradi.
-
1. Raspberry Pi asosidagi radio konsepsiyasi
Umuman olganda, ikkita asosiy yondashuv mavjud:
1. Internet radiosi (oqimli)
Raspberry Pi internetdan Wi-Fi/Ethernet orqali radioeshittirishlarni ijro etadi. Bu eng oson va eng keng tarqalgan usul, chunki u hech qanday maxsus RF uskunalarini talab qilmaydi.
2. FM/AM radiosi (ixtiyoriy qurilma bilan)
Tyuner moduli (masalan, I2C/SPI orqali FM qabul qilgich) yoki dasturiy ta'minot bilan belgilangan radio (SDR) qurilmasi talab qilinadi. Konfiguratsiya murakkabroq va ko'pincha ishlatiladigan qurilmaga bog'liq.
Ushbu maqolada asosiy e'tibor Internet radiosiga qaratilgan, chunki u yangi boshlanuvchilar uchun eng qulay va qisqa vaqt ichida yaratish uchun mos keladi.
-
2. Kerakli uskunalar
Tavsiya etilgan komponentlar ro'yxati:
– Raspberry Pi (Pi 3/4/Zero 2 Vt tavsiya etiladi)
– Minimal 8–16 GB MicroSD
– Barqaror quvvat manbai (5V, Pi modeliga muvofiq tok)
– Internetga ulanish (Wi-Fi yoki LAN kabeli)
– Audio chiqishi:
– 3.5 mm raz'em orqali faol dinamiklar (qo'llab-quvvatlanadigan modellarda), yoki
– USB karnay/kuchaytirgich, yoki
– DAC audio HAT (ixtiyoriy, sifatliroq)
– Monitor va klaviatura (dastlabki sozlash uchun) yoki SSH kirish
– Loyiha korpusi/qutisi (ixtiyoriy, ozodalik uchun)
Agar sizga jismoniy boshqaruv elementlari bo'lgan radio kerak bo'lsa, quyidagilarni qo'shishingiz mumkin:
– Bosish tugmasi, aylanuvchi kodlovchi yoki OLED/LCD ekran.
-
3. Raspberry Pi operatsion tizimini o'rnatish
1. Raspberry Pi Imager dasturini kompyuteringizga/noutbukingizga yuklab oling va o'rnating.
2. microSD kartani joylashtiring, so'ngra resurslardan tejamkor foydalanish uchun Raspberry Pi OS Lite (ish stoli kompyuterisiz) yoki grafik interfeys kerak bo'lsa, ish stoli versiyasini o'chiring.
3. Rasmni yozishdan oldin quyidagilarni o'rnatishingiz mumkin:
– Wi-Fi (SSID va parol)
– Foydalanuvchi nomi va parol
– SSH faollashtirish
4. Raspberry Pi ni ishga tushiring va internet ishlayotganiga ishonch hosil qiling.
Tizimga kirgandan so'ng, paketlarni yangilang:
“`bash
sudo apt yangilanishi
sudo-upgrade -y
""
-
4. Raspberry Pi-da audio sozlamalari
Aniqlangan audio qurilmalarni tekshiring:
“`bash
aplay -l
""
Agar siz HDMI yoki ulagich orqali audiodan foydalanayotgan bo'lsangiz (modelga qarab), standart chiqishni tanlashingiz mumkin. Raspberry Pi OS ning ba'zi versiyalari audio sozlamalarini avtomatik ravishda sozlaydi, ammo siz chiqishni quyidagicha sinab ko'rishingiz mumkin:
“`bash
karnay-test -t wav -c 2
""
Agar siz USB ovoz kartasi yoki DAC HAT dan foydalanayotgan bo'lsangiz, u odatda yangi qurilma sifatida ko'rinadi. Radioni eshitish uchun chiqishingiz to'g'ri ekanligiga ishonch hosil qiling.
-
5. Internet Radio Playerni o'rnatish (MPD + MPC)
Eng barqaror usullardan biri bu audio va MPC ni terminaldan boshqaruvchi sifatida ijro etish uchun MPD (Music Player Daemon) dan foydalanishdir.
Paketni o'rnating:
“`bash
sudo apt install -y mpd mpc
""
MPD ishlayotganiga ishonch hosil qiling:
“`bash
sudo systemctl mpd ni yoqish
sudo systemctl start mpd
""
Holatni tekshirish:
“`bash
systemctl holati mpd
""
-
6. Radiostansiyalar ro'yxatini qo'shish
MPD URL oqimlarini ijro eta oladi. Siz MPD pleylistlariga radiostansiyalarni qo'shishingiz mumkin.
Bitta radio oqimini qo'shishga misol:
“`bash
mpc ga http://streamurl-radio-anda:8000/stream qo'shing
""
Keyin o'ynang:
“`bash
mpc ijrosi
""
Ro'yxatni ko'rish uchun:
“`bash
mpc pleylisti
""
Sevimli stansiya pleylistini yarating
Siz `.m3u` pleylist faylini yaratishingiz mumkin:
1. Pleylist papkasini yarating (agar mavjud bo'lmasa):
“`bash
mkdir -p ~/pleylistlar
""
2. Fayl yarating:
“`bash
nano ~/pleylistlar/radio.m3u
""
3. Masalan, ba'zi striming URL manzillarini to'ldiring:
""
http://example.com/stream1
http://example.com/stream2
http://example.com/stream3
""
Ularni alohida-alohida yuklash yoki MPD musiqa/pleylist katalogingizni sozlash orqali MPDga qo'shing. Tezkor usul: ularni to'g'ridan-to'g'ri fayldan qo'shing (MPD konfiguratsiyangizga qarab ixtiyoriy) yoki pleylistni MPD pleylist papkangizga nusxalang (odatda `/var/lib/mpd/playlists/`).
-
7. Radio uchun mosroq qilish uchun MPD konfiguratsiyasi
MPD konfiguratsiyasini tahrirlash:
“`bash
sudo nano /etc/mpd.conf
""
Ba'zi muhim qismlar:
– Audio chiqishi to'g'ri ekanligiga ishonch hosil qiling. Umumiy misollar:
“`konf
audio_chiqish {
"alsa" ni yozing
"ALSA chiqishi" nomi
mixer_type “dasturiy ta’minot”
}
""
– Siz oqimni yanada barqaror qilish uchun buferni o'rnatishingiz mumkin (tarmoq sharoitlariga qarab ixtiyoriy).
Tugatgandan so'ng, MPDni qayta ishga tushiring:
“`bash
sudo systemctl mpd ni qayta ishga tushiring
""
-
8. Radioni ishga tushirishda avtomatik ravishda yoqing
Raspberry Pi yoqilgandan so'ng darhol radioni tinglash uchun:
1. Masalan, oddiy skript yarating:
“`bash
nano ~/start-radio.sh
""
Mundarija:
“`bash
!/bin/bash
uyqu 5
mpc aniq
mpc ga http://streamurl-radio-anda:8000/stream qo'shing
mpc hajmi 70
mpc ijrosi
""
Saqlash, keyin bajarishga ruxsat bering:
“`bash
chmod +x ~/start-radio.sh faylini ishga tushiring
""
2. Systemd xizmatini yarating:
“`bash
sudo nano /etc/systemd/system/radio.service
""
Mundarija:
"`bu
[Birlik]
Tavsif=Radio avtomatik ijrosi
After=network-online.target mpd.service
Wants=network-online.target
[Xizmat ko'rsatish]
Foydalanuvchi=pi
ExecStart=/home/pi/start-radio.sh
Qayta ishga tushirish=xatolik yuz berdi
[O'rnatish]
WantedBy = multi-user.target
""
Yoqish:
“`bash
sudo systemctl daemon-qayta yuklash
sudo systemctl radio.service ni yoqish
sudo systemctl start radio.service
""
Eslatma: agar foydalanuvchi nomi "pi" bo'lmasa, yo'lni va "Foydalanuvchi =" ni o'zgartiring.
-
9. Boshqaruv elementlarini qo'shish (ixtiyoriy)
Haqiqiy radio kabi his qilish uchun siz jismoniy boshqaruv elementlarini qo'shishingiz mumkin:
– Stansiyalarni o'zgartirish uchun Keyingi/Oldingi tugmasi:
– `mpc next`
– `mpc oldingi`
– Ijro etish/To'xtatish tugmasi:
– `mpc almashtirish`
– `mpc stop`
– Ovoz balandligi uchun aylanma kodlovchi:
– `mpc ovoz balandligi +5`
– `mpc hajmi -5`
Tugmalarni amalga oshirish uchun siz Python (GPIO) dan foydalanishingiz va `mpc` buyrug'ini chaqirishingiz mumkin. Bu kombinatsiya juda mashhur, chunki uni ishlab chiqish oson va sodda.
-
10. Rivojlanish bo'yicha maslahatlar va muammolarni bartaraf etish
Ba'zi keng tarqalgan muammolar va ularning yechimlari:
1. Ovoz yo'q
– Audio chiqishi to'g'ri ekanligiga ishonch hosil qiling (ALSA qurilmasi).
– Karnay/USB ovoz kartasini almashtirib ko'ring.
– Ovoz balandligi 0 emasligiga ishonch hosil qiling: `mpc ovoz balandligi 80`
2. Oqim vaqti-vaqti bilan uzatiladi
– Iloji bo'lsa, LAN ulanishidan foydalaning.
– Yuklashda ijro etishdan oldin kechiktirishni qo'shing (`5-uyqu` yoki `10-uyqu`).
– Pastroq bitreytli oqimni tanlang.
3. MPD URLni o'ynata olmaydi
– URL manzili to'g'ri ekanligiga va uni bir xil tarmoqdan ochish mumkinligiga ishonch hosil qilishga harakat qiling.
– Qoʻllab-quvvatlash paketlari mavjudligiga ishonch hosil qiling (odatda eng soʻnggi Raspberry Pi OS da yetarli).
4. Ko'proq "radio" interfeysini xohlaysizmi
– ncmpcpp (terminal interfeysi) kabi frontendni o'rnating yoki oddiy veb-interfeys yarating.
-
Yopish
Raspberry Pi asosidagi radio yaratish ham qiziqarli, ham foydali loyihadir. MPD va MPC ni birlashtirish orqali siz yuklanganda avtomatik ravishda ishga tushadigan va jismoniy tugmachalari, kichik ekrani va hatto maxsus korpusi bo'lgan qurilmalarni qo'shish uchun osongina kengaytiriladigan barqaror internet radiosini yaratishingiz mumkin. Asosiy versiyasini o'rnatganingizdan so'ng, siz uni bir qadam oldinga olib borishingiz mumkin: stansiya nomlarini ko'rsatish uchun OLED ekran qo'shish, oldindan o'rnatilgan menyu yaratish yoki hatto FM radiosi uchun tyuner modulini qo'shish.
Agar xohlasangiz, men aniqroq versiyalar bilan davom ettirishim mumkin: masalan, foydalanishga tayyor Indoneziya radiostansiyalari ro'yxati (URL), GPIO kommutatori uchun Python kod namunasi yoki ancha yaxshi ovoz sifati uchun DAC HAT dan foydalanish bo'yicha qo'llanma.