Πώς να φτιάξετε ένα ραδιόφωνο με βάση το Raspberry Pi
Το ραδιόφωνο μπορεί να ακούγεται σαν μια «παλιά» τεχνολογία, αλλά αυτή ακριβώς είναι η γοητεία του: απλό, αξιόπιστο και εξαιρετικά χρήσιμο τόσο για ψυχαγωγικά όσο και για εκπαιδευτικά έργα. Με ένα Raspberry Pi, μπορείτε να δημιουργήσετε ένα σύγχρονο, ευέλικτο ραδιόφωνο—μπορεί να είναι ένα ραδιόφωνο ροής στο διαδίκτυο, ένα τοπικό πρόγραμμα αναπαραγωγής μουσικής ή ακόμα και (με μια πρόσθετη μονάδα) ένα ραδιόφωνο FM. Αυτό το άρθρο καλύπτει τον τρόπο κατασκευής ενός ραδιοφώνου που βασίζεται στο Raspberry Pi με πρακτικό τρόπο, από την εγκατάσταση υλικού έως τη διαμόρφωση λογισμικού.
-
1. Ραδιόφωνο βασισμένο στο Raspberry Pi
Γενικά, υπάρχουν δύο κύριες προσεγγίσεις:
1. Διαδικτυακό ραδιόφωνο (Streaming)
Το Raspberry Pi αναπαράγει ραδιοφωνικές εκπομπές από το διαδίκτυο μέσω Wi-Fi/Ethernet. Αυτή είναι η ευκολότερη και πιο συνηθισμένη μέθοδος, καθώς δεν απαιτεί ειδικό εξοπλισμό RF.
2. Ραδιόφωνο FM/AM (με προαιρετική συσκευή)
Απαιτείται μια μονάδα δέκτη (π.χ., ένας δέκτης FM μέσω I2C/SPI) ή μια συσκευή Software Defined Radio (SDR). Η διαμόρφωση είναι πιο περίπλοκη και συχνά εξαρτάται από τη συσκευή που χρησιμοποιείται.
Σε αυτό το άρθρο, η κύρια εστίαση είναι στο διαδικτυακό ραδιόφωνο, επειδή είναι το πιο φιλικό προς τους αρχάριους και κατάλληλο για δημιουργία σε σύντομο χρονικό διάστημα.
-
2. Απαιτούμενος εξοπλισμός
Ακολουθεί μια λίστα με τα συνιστώμενα εξαρτήματα:
– Raspberry Pi (συνιστάται Pi 3/4/Zero 2 W)
– MicroSD τουλάχιστον 8–16 GB
– Σταθερή τροφοδοσία ρεύματος (5V, ρεύμα σύμφωνα με το μοντέλο Pi)
– Σύνδεση στο Διαδίκτυο (καλώδιο Wi-Fi ή LAN)
– Έξοδος ήχου:
– Ενεργά ηχεία μέσω υποδοχής 3.5 mm (σε υποστηριζόμενα μοντέλα) ή
– Ηχείο/ενισχυτής USB ή
– DAC ήχου HAT (προαιρετικό, καλύτερη ποιότητα)
– Οθόνη & πληκτρολόγιο (για αρχική εγκατάσταση) ή πρόσβαση SSH
– Θήκη/κουτί έργου (προαιρετικά, για τάξη)
Αν θέλετε ένα ραδιόφωνο με φυσικά χειριστήρια, μπορείτε να προσθέσετε:
– Κουμπί πίεσης, περιστροφικός κωδικοποιητής ή οθόνη OLED/LCD.
-
3. Εγκατάσταση του λειτουργικού συστήματος Raspberry Pi
1. Κατεβάστε και εγκαταστήστε το Raspberry Pi Imager στον υπολογιστή/φορητό υπολογιστή σας.
2. Τοποθετήστε την κάρτα microSD και, στη συνέχεια, εγκαταστήστε ξανά το Raspberry Pi OS Lite (χωρίς επιτραπέζιο υπολογιστή) για αποτελεσματική χρήση πόρων ή την έκδοση για επιτραπέζιους υπολογιστές, εάν θέλετε γραφικό περιβάλλον εργασίας.
3. Πριν γράψετε την εικόνα, μπορείτε να ορίσετε:
– Wi-Fi (SSID και κωδικός πρόσβασης)
– Όνομα χρήστη και κωδικός πρόσβασης
– Ενεργοποίηση SSH
4. Εκκινήστε το Raspberry Pi και βεβαιωθείτε ότι το διαδίκτυο λειτουργεί.
Αφού συνδεθείτε στο σύστημα, ενημερώστε τα πακέτα:
""μπας
sudo apt update
sudo apt upgrade -y
«"
-
4. Ρύθμιση ήχου στο Raspberry Pi
Ελέγξτε τις ανιχνευμένες συσκευές ήχου:
""μπας
aplay -l
«"
Εάν χρησιμοποιείτε ήχο μέσω HDMI ή υποδοχής (ανάλογα με το μοντέλο), μπορείτε να επιλέξετε την προεπιλεγμένη έξοδο. Ορισμένες εκδόσεις του Raspberry Pi OS θα διαμορφώσουν αυτόματα τις ρυθμίσεις ήχου, αλλά μπορείτε να δοκιμάσετε την έξοδο ως εξής:
""μπας
δοκιμή-ηχείου -t wav -c 2
«"
Εάν χρησιμοποιείτε κάρτα ήχου USB ή DAC HAT, συνήθως θα εμφανίζεται ως νέα συσκευή. Βεβαιωθείτε ότι η έξοδός σας είναι σωστή για να ακούσετε το ραδιόφωνο.
-
5. Εγκατάσταση του Internet Radio Player (MPD + MPC)
Ένας από τους πιο σταθερούς τρόπους είναι να χρησιμοποιήσετε το MPD (Music Player Daemon) για την αναπαραγωγή ήχου και το MPC ως ελεγκτή από το τερματικό.
Εγκαταστήστε το πακέτο:
""μπας
sudo apt install -y mpd mpc
«"
Βεβαιωθείτε ότι το MPD εκτελείται:
""μπας
sudo systemctl ενεργοποίηση mpd
sudo systemctl έναρξη mpd
«"
Έλεγχος κατάστασης:
""μπας
κατάσταση systemctl mpd
«"
-
6. Προσθήκη λίστας ραδιοφωνικών σταθμών
Το MPD μπορεί να αναπαράγει ροές URL. Μπορείτε να προσθέσετε ραδιοφωνικούς σταθμούς σε λίστες αναπαραγωγής MPD.
Παράδειγμα προσθήκης μίας ραδιοφωνικής ροής:
""μπας
προσθήκη mpc http://streamurl-radio-anda:8000/stream
«"
Στη συνέχεια, παίξτε:
""μπας
αναπαραγωγή mpc
«"
Για να δείτε τη λίστα:
""μπας
λίστα αναπαραγωγής mpc mpc
«"
Δημιουργήστε μια λίστα αναπαραγωγής αγαπημένου σταθμού
Μπορείτε να δημιουργήσετε ένα αρχείο λίστας αναπαραγωγής `.m3u`:
1. Δημιουργήστε έναν φάκελο λίστας αναπαραγωγής (αν δεν υπάρχει ήδη):
""μπας
mkdir -p ~/λίστες αναπαραγωγής
«"
2. Δημιουργήστε ένα αρχείο:
""μπας
nano ~/playlists/radio.m3u
«"
3. Συμπληρώστε ορισμένες διευθύνσεις URL ροής, για παράδειγμα:
«"
http://example.com/stream1
http://example.com/stream2
http://example.com/stream3
«"
Προσθέστε τα στο MPD φορτώνοντάς τα μεμονωμένα ή ρυθμίζοντας τον κατάλογο μουσικής/λίστας αναπαραγωγής MPD. Γρήγορος τρόπος: προσθέστε τα απευθείας από ένα αρχείο (προαιρετικό ανάλογα με τη διαμόρφωση MPD) ή αντιγράψτε τη λίστα αναπαραγωγής στον φάκελο λίστας αναπαραγωγής MPD (συνήθως `/var/lib/mpd/playlists/`).
-
7. Διαμόρφωση MPD για να γίνει πιο κατάλληλο για ραδιόφωνο
Επεξεργασία διαμόρφωσης MPD:
""μπας
sudo nano /etc/mpd.conf
«"
Μερικά σημαντικά μέρη:
– Βεβαιωθείτε ότι η έξοδος ήχου είναι σωστή. Συνήθη παραδείγματα:
«Συνέδριο»
έξοδος ήχου {
πληκτρολογήστε «άλσα»
όνομα «Έξοδος ALSA»
mixer_type “λογισμικό”
}
«"
– Μπορείτε να ρυθμίσετε την προσωρινή μνήμη για να κάνετε τη ροή πιο σταθερή (προαιρετικά, ανάλογα με τις συνθήκες δικτύου).
Μόλις τελειώσετε, επανεκκινήστε το MPD:
""μπας
sudo systemctl επανεκκίνηση mpd
«"
-
8. Ενεργοποιήστε αυτόματα το ραδιόφωνο κατά την εκκίνηση
Για να αναπαράγει το ραδιόφωνο το Raspberry Pi αμέσως μόλις το ενεργοποιήσετε:
1. Δημιουργήστε ένα απλό σενάριο, για παράδειγμα:
""μπας
nano ~/start-radio.sh
«"
Ίσι:
""μπας
!/bin/bash
sleep 5
mpc καθαρό
προσθήκη mpc http://streamurl-radio-anda:8000/stream
όγκος mpc 70
αναπαραγωγή mpc
«"
Αποθήκευση και στη συνέχεια δώστε άδεια εκτέλεσης:
""μπας
chmod +x ~/start-radio.sh
«"
2. Δημιουργήστε μια υπηρεσία systemd:
""μπας
sudo nano /etc/systemd/system/radio.service
«"
Ίσι:
«`ini
[Μονάδα]
Περιγραφή=Αυτόματη αναπαραγωγή ραδιοφώνου
Μετά=network-online.target mpd.service
Wants=network-online.target
[Υπηρεσία]
Χρήστης=pi
ExecStart=/home/pi/start-radio.sh
Επανεκκίνηση=σε περίπτωση αποτυχίας
[Εγκαθιστώ]
WantedBy = multi-user.target
«"
Καθιστώ ικανό:
""μπας
sudo systemctl daemon-reload
sudo systemctl ενεργοποίηση radio.service
sudo systemctl έναρξη radio.service
«"
Σημείωση: εάν το όνομα χρήστη δεν είναι `pi`, προσαρμόστε τη διαδρομή και το `User=`.
-
9. Προσθήκη στοιχείων ελέγχου (Προαιρετικό)
Για να το κάνετε να μοιάζει με πραγματικό ραδιόφωνο, μπορείτε να προσθέσετε φυσικά χειριστήρια:
– Κουμπί Επόμενο/Προηγούμενο για αλλαγή σταθμών:
– `mpc επόμενο`
– `mpc prev`
– Κουμπί αναπαραγωγής/διακοπής:
– `mpc εναλλαγή`
– `mpc stop`
– Περιστροφικός κωδικοποιητής για ένταση:
– `mpc όγκος +5`
– `mpc όγκος -5`
Για να υλοποιήσετε τα κουμπιά, μπορείτε να χρησιμοποιήσετε Python (GPIO) και να καλέσετε την εντολή `mpc`. Αυτός ο συνδυασμός είναι πολύ δημοφιλής επειδή είναι απλός και εύκολος στην ανάπτυξη.
-
10. Συμβουλές ανάπτυξης και αντιμετώπιση προβλημάτων
Μερικά συνηθισμένα προβλήματα και οι λύσεις τους:
1. Δεν υπάρχει ήχος
– Βεβαιωθείτε ότι η έξοδος ήχου είναι σωστή (συσκευή ALSA).
– Δοκιμάστε να αλλάξετε το ηχείο/κάρτα ήχου USB.
– Βεβαιωθείτε ότι η ένταση δεν είναι 0: `mpc volume 80`
2. Η ροή είναι διακοπτόμενη
– Χρησιμοποιήστε σύνδεση LAN, εάν είναι δυνατόν.
– Προσθήκη καθυστέρησης πριν από την αναπαραγωγή κατά την εκκίνηση (`sleep 5` ή `sleep 10`).
– Επιλέξτε μια ροή με χαμηλότερο ρυθμό μετάδοσης bit.
3. Το MPD δεν μπορεί να αναπαράγει URL
– Προσπαθήστε να βεβαιωθείτε ότι η διεύθυνση URL είναι σωστή και ότι μπορεί να ανοιχτεί από το ίδιο δίκτυο.
– Βεβαιωθείτε ότι τα πακέτα υποστήριξης είναι διαθέσιμα (συνήθως επαρκούν στο πιο πρόσφατο λειτουργικό σύστημα Raspberry Pi).
4. Θέλετε μια πιο «ραδιοφωνική» διεπαφή
– Εγκαταστήστε ένα frontend όπως το ncmpcpp (terminal UI) ή δημιουργήστε ένα απλό web UI.
-
Penutup
Η κατασκευή ενός ραδιοφώνου που βασίζεται στο Raspberry Pi είναι ένα διασκεδαστικό και ταυτόχρονα ικανοποιητικό έργο. Συνδυάζοντας το MPD και το MPC, μπορείτε να δημιουργήσετε ένα σταθερό διαδικτυακό ραδιόφωνο που ξεκινά αυτόματα κατά την εκκίνηση και είναι εύκολα επεκτάσιμο ώστε να περιλαμβάνει συσκευές με φυσικά κουμπιά, μια μικρή οθόνη, ακόμη και μια προσαρμοσμένη θήκη. Μόλις κατεβάσετε τη βασική έκδοση, μπορείτε να προχωρήσετε ένα βήμα παραπέρα: προσθέστε μια οθόνη OLED για να εμφανίσετε τα ονόματα των σταθμών, δημιουργήστε ένα μενού προεπιλογών ή ακόμα και προσθέστε μια μονάδα δέκτη για ραδιόφωνο FM.
Αν θέλετε, μπορώ να συνεχίσω με πιο συγκεκριμένες εκδόσεις: για παράδειγμα, μια λίστα με έτοιμους προς χρήση ινδονησιακούς ραδιοφωνικούς σταθμούς (URL), ένα παράδειγμα κώδικα Python για έναν διακόπτη GPIO ή έναν οδηγό για τη χρήση ενός DAC HAT για πολύ καλύτερη ποιότητα ήχου.