چگونه یک رادیو مبتنی بر رزبری پای بسازیم
رادیو ممکن است مانند یک فناوری «قدیمی» به نظر برسد، اما جذابیت آن دقیقاً در همین است: ساده، قابل اعتماد و همچنان بسیار مناسب برای پروژههای سرگرمی و آموزشی. با رزبری پای، میتوانید یک رادیوی مدرن و انعطافپذیر بسازید - میتواند یک رادیوی پخش اینترنتی، یک پخشکننده موسیقی محلی یا حتی (با یک ماژول اضافی) یک رادیو FM باشد. این مقاله نحوه ساخت یک رادیوی مبتنی بر رزبری پای را به روشی عملی، از راهاندازی سختافزار گرفته تا پیکربندی نرمافزار، پوشش میدهد.
-
۱. طرح رادیویی مبتنی بر رزبری پای
به طور کلی، دو رویکرد اصلی وجود دارد:
۱. رادیو اینترنتی (پخش آنلاین)
رزبری پای از طریق وایفای/اترنت، امواج رادیویی را از طریق اینترنت پخش میکند. این سادهترین و رایجترین روش است، زیرا به هیچ تجهیزات RF خاصی نیاز ندارد.
۲. رادیو FM/AM (با دستگاه اختیاری)
به یک ماژول تیونر (مثلاً یک گیرنده FM از طریق I2C/SPI) یا یک دستگاه رادیوی نرمافزاری (SDR) نیاز دارد. پیکربندی پیچیدهتر است و اغلب به دستگاه مورد استفاده بستگی دارد.
در این مقاله، تمرکز اصلی بر روی رادیو اینترنتی است زیرا این رادیو برای مبتدیان بسیار مناسب است و برای ایجاد در مدت زمان کوتاه مناسب است.
-
۲. تجهیزات مورد نیاز
در اینجا لیستی از اجزای توصیه شده آورده شده است:
– رزبری پای (رزبری پای ۳/۴/زیرو ۲ وات توصیه میشود)
– حداقل حافظه microSD، ۸ تا ۱۶ گیگابایت
– منبع تغذیه پایدار (5 ولت، جریان مطابق با مدل رزبری پای)
- اتصال به اینترنت (وایفای یا کابل LAN)
- خروجی صدا:
– بلندگوهای فعال از طریق جک ۳.۵ میلیمتری (در مدلهای پشتیبانیشده)، یا
– بلندگو/آمپلی فایر USB، یا
– DAC audio HAT (اختیاری، کیفیت بهتر)
– مانیتور و کیبورد (برای تنظیمات اولیه) یا دسترسی SSH
– پوشش/جعبه پروژه (اختیاری، برای تمیزی)
اگر رادیویی با کنترلهای فیزیکی میخواهید، میتوانید موارد زیر را اضافه کنید:
– دکمه فشاری، رمزگذار چرخشی یا صفحه نمایش OLED/LCD.
-
۳. نصب سیستم عامل رزبری پای
۱. نرمافزار Raspberry Pi Imager را روی کامپیوتر/لپتاپ خود دانلود و نصب کنید.
۲. کارت حافظه microSD را وارد کنید، سپس برای استفاده بهینه از منابع، سیستم عامل Raspberry Pi OS Lite (بدون نسخه دسکتاپ) را فلش کنید، یا اگر رابط گرافیکی میخواهید، نسخه دسکتاپ را فلش کنید.
۳. قبل از نوشتن تصویر، میتوانید موارد زیر را تنظیم کنید:
- وایفای (SSID و رمز عبور)
– نام کاربری و رمز عبور
- فعالسازی SSH
۴. رزبری پای را بوت کنید و مطمئن شوید که اینترنت کار میکند.
پس از ورود به سیستم، بستهها را بهروزرسانی کنید:
«باش
sudo apt update
sudo apt update -y
""
-
۴. تنظیم صدا در رزبری پای
بررسی دستگاههای صوتی شناساییشده:
«باش
aplay -l
""
اگر از طریق HDMI یا جک (بسته به مدل) از صدا استفاده میکنید، میتوانید خروجی پیشفرض را انتخاب کنید. برخی از نسخههای سیستم عامل Raspberry Pi به طور خودکار تنظیمات صدا را پیکربندی میکنند، اما میتوانید خروجی را با موارد زیر آزمایش کنید:
«باش
تست بلندگو -t wav -c 2
""
اگر از کارت صدای USB یا DAC HAT استفاده میکنید، معمولاً به عنوان یک دستگاه جدید ظاهر میشود. برای شنیدن صدای رادیو، مطمئن شوید که خروجی شما صحیح است.
-
۵. نصب پخشکننده رادیو اینترنتی (MPD + MPC)
یکی از پایدارترین راهها استفاده از MPD (Music Player Daemon) برای پخش صدا و MPC به عنوان کنترلکننده از ترمینال است.
بسته را نصب کنید:
«باش
دستور sudo apt install -y mpd mpc را اجرا کنید.
""
مطمئن شوید که MPD در حال اجرا است:
«باش
فعال کردن mpd با sudo systemctl
sudo systemctl شروع mpd
""
بررسی وضعیت:
«باش
وضعیت systemctl mpd
""
-
۶. افزودن فهرست ایستگاههای رادیویی
MPD میتواند جریانهای URL را پخش کند. میتوانید ایستگاههای رادیویی را به لیستهای پخش MPD اضافه کنید.
مثال اضافه کردن یک جریان رادیویی:
«باش
mpc آدرس http://streamurl-radio-anda:8000/stream را اضافه کنید
""
سپس بازی کنید:
«باش
پخش ام پی سی
""
برای مشاهده لیست:
«باش
لیست پخش mpc
""
ایجاد لیست پخش ایستگاه مورد علاقه
شما میتوانید یک فایل لیست پخش با پسوند `.m3u` ایجاد کنید:
۱. یک پوشه لیست پخش ایجاد کنید (اگر وجود ندارد):
«باش
mkdir -p ~/لیستهای پخش
""
۲. ایجاد فایل:
«باش
نانو ~/playlists/radio.m3u
""
۳. چند آدرس اینترنتی پخش زنده را وارد کنید، برای مثال:
""
http://example.com/stream1
http://example.com/stream2
http://example.com/stream3
""
با بارگذاری تک تک آنها یا با تنظیم دایرکتوری موسیقی/لیست پخش MPD خود، آنها را به MPD اضافه کنید. راه سریع: آنها را مستقیماً از یک فایل اضافه کنید (بسته به پیکربندی MPD شما اختیاری است)، یا لیست پخش را در پوشه لیست پخش MPD خود (معمولاً `/var/lib/mpd/playlists/`) کپی کنید.
-
۷. پیکربندی MPD برای مناسبتر کردن آن برای رادیو
ویرایش پیکربندی MPD:
«باش
sudo nano /etc/mpd.conf
""
برخی از بخشهای مهم:
– مطمئن شوید که خروجی صدا صحیح است. مثالهای رایج:
«کنفرانس»
خروجی صدا {
نوع «آلسا»
نام «خروجی ALSA»
mixer_type “نرمافزار”
}
""
– میتوانید بافر را تنظیم کنید تا پخش جریانی پایدارتر شود (اختیاری، بسته به شرایط شبکه).
پس از انجام این کار، MPD را مجدداً راهاندازی کنید:
«باش
sudo systemctl mpd را مجدداً راه اندازی کنید
""
-
۸. روشن شدن خودکار رادیو هنگام بوت شدن
برای اینکه رزبری پای بلافاصله پس از روشن شدن، رادیو را پخش کند:
۱. یک اسکریپت ساده ایجاد کنید، برای مثال:
«باش
نانو ~/start-radio.sh
""
فهرست مطالب:
«باش
!/bin/bash
خواب 5
پاک کردن mpc
mpc آدرس http://streamurl-radio-anda:8000/stream را اضافه کنید
حجم mpc 70
پخش ام پی سی
""
ذخیره کنید و سپس اجازه اجرا بدهید:
«باش
chmod +x ~/start-radio.sh
""
۲. یک سرویس systemd ایجاد کنید:
«باش
sudo nano /etc/systemd/system/radio.service
""
فهرست مطالب:
«این»
[واحد]
توضیحات=پخش خودکار رادیو
بعد از = network-online.target mpd.service
خواستهها=شبکه-آنلاین.هدف
[سرویس]
کاربر = عدد پی
اجرای شروع=/home/pi/start-radio.sh
راهاندازی مجدد=در صورت خرابی
[نصب]
WantedBy = چند کاربر. هدف
""
فعال کردن:
«باش
sudo systemctl daemon-reload
sudo systemctl فعال کردن radio.service
sudo systemctl شروع رادیو.سرویس
""
توجه: اگر نام کاربری `pi` نیست، مسیر و `User="" را تنظیم کنید.
-
۹. افزودن کنترلها (اختیاری)
برای اینکه حس یک رادیوی واقعی را داشته باشید، میتوانید کنترلهای فیزیکی اضافه کنید:
– دکمه بعدی/قبلی برای تغییر ایستگاهها:
– «mpc بعدی»
– `قبلی mpc`
- دکمه پخش/توقف:
– `تغییر وضعیت mpc`
– «توقف mpc»
– رمزگذار چرخشی برای میزان صدا:
– `حجم MPC +5`
– `حجم mpc -5`
برای پیادهسازی دکمهها، میتوانید از پایتون (GPIO) استفاده کنید و دستور `mpc` را فراخوانی کنید. این ترکیب بسیار محبوب است زیرا ساده و توسعه آن آسان است.
-
۱۰. نکات توسعه و عیبیابی
برخی از مشکلات رایج و راه حل های آنها:
۱. صدا ندارد
– مطمئن شوید که خروجی صدا صحیح است (دستگاه ALSA).
– سعی کنید بلندگو/کارت صدای USB را تغییر دهید.
– مطمئن شوید که صدا ۰ نیست: `mpc volume 80`
۲. پخش متناوب است
- در صورت امکان از اتصال LAN استفاده کنید.
- اضافه کردن تأخیر قبل از پخش در هنگام بوت (`sleep 5` یا `sleep 10`).
– یک جریان با بیت ریت پایینتر انتخاب کنید.
۳. MPD نمیتواند URL را پخش کند.
– مطمئن شوید که URL صحیح است و از همان شبکه قابل باز شدن است.
– مطمئن شوید که بستههای پشتیبانی در دسترس هستند (معمولاً در جدیدترین سیستم عامل Raspberry Pi کافی هستند).
۴. رابط کاربری «رادیوییتر» میخواهید
– یک رابط کاربری مانند ncmpcpp (رابط کاربری ترمینال) نصب کنید، یا یک رابط کاربری وب ساده ایجاد کنید.
-
بستن
ساخت یک رادیو مبتنی بر رزبری پای هم یک پروژه سرگرمکننده و هم ارزشمند است. با ترکیب MPD و MPC، میتوانید یک رادیوی اینترنتی پایدار ایجاد کنید که به طور خودکار پس از بوت شدن شروع به کار میکند و به راحتی قابل ارتقا است تا شامل دستگاههایی با دکمههای فیزیکی، صفحه نمایش کوچک و حتی یک قاب سفارشی شود. پس از اینکه نسخه اولیه را تهیه کردید، میتوانید یک قدم جلوتر بروید: یک صفحه نمایش OLED برای نمایش نام ایستگاهها اضافه کنید، یک منوی از پیش تنظیم شده ایجاد کنید یا حتی یک ماژول تیونر برای رادیو FM اضافه کنید.
اگر بخواهید، میتوانم با نسخههای خاصتری ادامه دهم: مثلاً فهرستی از ایستگاههای رادیویی اندونزیایی آماده (URL)، یک نمونه کد پایتون برای سوئیچ GPIO یا راهنمایی برای استفاده از DAC HAT برای کیفیت صدای بسیار بهتر.