Πίνακας περιεχομένων:
- Βήμα 1: Απαιτείται υλικό
- Βήμα 2: Τα κουμπιά
- Βήμα 3: Η θήκη των κουμπιών
- Βήμα 4: Το Raspberry Pi
- Βήμα 5: Προγραμματισμός
- Βήμα 6: Εκτελέστε το Python Script σε κάθε εκκίνηση
- Βήμα 7: Τέλος σημείωσης
Βίντεο: Εγγραφή αναπαραγωγής με Raspberry Pi: 7 βήματα (με εικόνες)
2024 Συγγραφέας: John Day | [email protected]. Τελευταία τροποποίηση: 2024-01-30 08:38
Γεια σε όλους, Σε αυτό το εκπαιδευτικό εξηγώ πώς έφτιαξα ένα πρόγραμμα εγγραφής αναπαραγωγής χρησιμοποιώντας το Raspberry Pi. Η συσκευή είναι Raspberry Pi μοντέλο B+, με 7 κουμπιά στο επάνω μέρος, ηχείο συνδεδεμένο σε μία από τις θύρες USB του Pi και μικρόφωνο συνδεδεμένο σε άλλη θύρα usb. Κάθε κουμπί σχετίζεται με έναν ήχο, ώστε να μπορεί να αναπαράγει 7 διαφορετικούς ήχους. Οι ήχοι αναπαράγονται μετά από ένα σύντομο πάτημα του κουμπιού. Για να ηχογραφήσετε έναν νέο ήχο, απλώς πατήστε το κουμπί για περισσότερο από 1 δευτερόλεπτο, ηχογραφήστε μετά το μπιπ και αφήστε το κουμπί στο τέλος της εγγραφής. Δεν γίνεται πιο απλό από αυτό!
Βήμα 1: Απαιτείται υλικό
Για αυτό το έργο χρειάστηκα:
- Ένα Raspberry Pi μοντέλο B + και κάρτα micro SD - 29,95 $ + 9,95 $
- Πλαστική θήκη Raspberry Pi - 7,95 $
- Ηχεία USB - 12,50 $
- Ένα μικρόφωνο USB - 5,95 $
- Ένας μισός μεγέθους πίνακας perma-proto-4,50 $
- 7 στιγμιαία κουμπιά - 2,50 $
Χρειαζόμουν επίσης:
- Λίγο ηλεκτρικό καλώδιο
- Γυναικείες κεφαλίδες ορθής γωνίας
- Λίγο ξύλο, μαύρο χρώμα και κόλλα για τη θήκη με κουμπιά
- Συγκολλητικό σίδερο και συγκόλληση
Βήμα 2: Τα κουμπιά
Τα κουμπιά που χρησιμοποιούνται είναι αρκετά ψηλά (6mm) έτσι ώστε να μπορούν να περάσουν από το πάχος της θήκης.
Τοποθέτησα τα 7 κουμπιά μου σε έναν πίνακα perma-proto, ο οποίος είναι σαν ένα breadboard, εκτός από τα στοιχεία που συγκολλούνται σε αυτό. Αυτό είναι πιο στιβαρό από ένα breadboard και φθηνότερο από την εκτύπωση ενός pcb. Κάθε κουμπί συνδέεται με το GPIO στο Raspberry Pi. Δεν έχω αντιστάσεις εδώ, καθώς το Pi έχει ήδη εσωτερικές αντιστάσεις έλξης/κάτω που θα ρυθμιστούν στο πρόγραμμα. Σε αυτήν την περίπτωση, τα έχω ρυθμίσει σε pull-up (δείτε παρακάτω πρόγραμμα).
Τα κουμπιά τοποθετούνται κάθε 4 σειρές ή κάθε 0,4 ίντσες.
Βήμα 3: Η θήκη των κουμπιών
Έφτιαξα μια πολύ απλή θήκη για τα κουμπιά, με φύλλα από κόντρα πλακέ και ξύλινο τετράγωνο πείρο. Το μέγεθος του πείρου πρέπει να είναι αρκετά μεγάλο για να περιέχει τη βάση και την σανίδα του κουμπιού, αλλά αρκετά μικρό για να αφήνει το κουμπί να βγαίνει από τη θήκη. Χρησιμοποίησα ένα 1/4 σε x 1/4 στον πείρο.
Αφού βεβαιωθείτε ότι ο πίνακας ταιριάζει στη θήκη, οι πείροι είναι κολλημένοι στο φύλλο βάσης. Στη συνέχεια ανοίγονται τρύπες στο επάνω φύλλο (ο πίνακας μπορεί να χρησιμοποιηθεί για να κάνει ακριβώς σημάδια κάθε 0,4 ίντσες). Όλα τα ξύλινα μέρη είναι βαμμένα, η σανίδα τοποθετημένη στη θήκη και το πάνω φύλλο κολλημένο πάνω της.
Βήμα 4: Το Raspberry Pi
Δεν ήθελα να κολλήσω τα καλώδια απευθείας στο Pi, σε περίπτωση που θέλω να χρησιμοποιήσω το Pi για κάτι άλλο στο μέλλον. Συνεπώς, κόλλησα τα καλώδια σε γυναικείες κεφαλίδες ορθής γωνίας και συνδέσα τις κεφαλίδες στο Pi.
Οι GPIO που χρησιμοποιούνται είναι 21, 26, 20, 19, 13, 6 και 5. Χρησιμοποιείται επίσης ο πείρος γείωσης.
Το μικρόφωνο και το ηχείο είναι απλά συνδεδεμένα σε 2 από τις 4 θύρες USB.
Το Pi τροφοδοτείται μέσω της πρίζας micro-usb
Βήμα 5: Προγραμματισμός
Για να προγραμματίσω το Pi, το σύνδεσα στο διαδίκτυο χρησιμοποιώντας ένα καλώδιο ethernet και το έλεγξα από έναν απομακρυσμένο υπολογιστή χρησιμοποιώντας το πρόγραμμα προβολής VNC. Ωστόσο, δεν μπορείτε να χρησιμοποιήσετε αυτήν τη ρύθμιση την πρώτη φορά που συνδέεστε στο Pi, επειδή το λειτουργικό σύστημα δεν είναι ακόμα εγκατεστημένο και το SSH δεν είναι ανενεργό. Έτσι, θα χρειαστεί να συνδέσετε οθόνη, πληκτρολόγιο και ποντίκι, τουλάχιστον την πρώτη φορά.
Wasταν αρκετά ταλαιπωρημένο να βρεις τις εντολές για την εγγραφή και την αναπαραγωγή ενός ήχου στη σωστή κάρτα ήχου. Αυτές είναι οι εντολές που λειτούργησαν για μένα:
-
aplay -D plughw: CARD = Device_1, DEV = 0 0.wav
Παίζει 0.wav
-
arecord 0.wav -D sysdefault: CARD = 1 -f cd -d 20
Καταγράφει για μέγιστο 20 δευτερόλεπτα στο αρχείο 0.wav, με ποιότητα cd
Τα αρχεία ήχου βρίσκονται στον προεπιλεγμένο κατάλογο (/home/pi). Ένα αρχείο ήχου για το μπιπ είναι επίσης απαραίτητο, τοποθετημένο στον προεπιλεγμένο κατάλογο και ονομάζεται beep.wav.
Ο ίδιος ο κώδικας python είναι ο ακόλουθος:
κώδικας python για συσκευή εγγραφής αναπαραγωγής Raspberry Pi
εισαγωγή RPi. GPIO ως GPIO |
χρόνο εισαγωγής |
εισαγωγή os |
#μεταβλητές: |
butPressed = [True, True, True, True, True, True, True] #if εάν πατηθεί το κουμπί i, τότε το butPressed είναι False |
pin = [26, 19, 13, 6, 5, 21, 20] #GPIO ακίδες κάθε κουμπιού |
recordBool = Λάθος#Σωστό εάν μια εγγραφή βρίσκεται σε εξέλιξη |
GPIO.setmode (GPIO. BCM) |
για i στο εύρος (0, 7): |
GPIO.setup (pin , GPIO. IN, pull_up_down = GPIO. PUD_UP)#ορίζει τις εσωτερικές αντιστάσεις του Pi σε αναδίπλωση |
ενώ True: |
για i στο εύρος (0, 7): |
butPressed = GPIO.input (pin )#ελέγχει αν πατηθεί ένα κουμπί |
αν butPressed == Λάθος:#εάν πατηθεί ένα κουμπί |
previousTime = time.time () |
while butPressed == False and recordBool == False: |
butPressed = GPIO.input (pin ) |
εάν time.time () - previousTime> 1.0:#αν πατηθεί το κουμπί για περισσότερο από ένα δευτερόλεπτο, τότε recordBool είναι True |
recordBool = True |
εάν recordBool == True: #if recordBool είναι True, αναπαράγει έναν ήχο μπιπ και στη συνέχεια ηχογραφεί |
os.system ("aplay -D plughw: CARD = Device_1, DEV = 0 beep.wav") |
os.system ("arecord %d.wav -D sysdefault: CARD = 1 -f cd -d 20 &" %i)#εγγραφές για μέγιστο 20 δευτερόλεπτα στο αρχείο i.wav, με ποιότητα cd |
while butPressed == Λάθος: |
butPressed = GPIO.input (pin ) |
os.system ("pkill -9 arecord")#η εγγραφή σταματά όταν αφήνεται το κουμπί ή μετά από 20 δευτερόλεπτα |
recordBool = Λάθος |
else: #if recordBool is False, παίζει ήχο i.wav |
os.system ("aplay -D plughw: CARD = Device_1, DEV = 0 %d.wav" %i) |
ώρα. ύπνος (0,1) |
προβολή rawPlayback recorder που φιλοξενείται με ❤ από το GitHub
Βήμα 6: Εκτελέστε το Python Script σε κάθε εκκίνηση
Για να εκτελέσετε το σενάριο python κατά την εκκίνηση κάθε Pi, οι ακόλουθες γραμμές τοποθετούνται σε ένα αρχείο που ονομάζεται playback.desktop στο φάκελο /home/pi/.config/autostart/
τρέχει το playback.py κατά την εκκίνηση του Raspberry Pi
[Καταχώριση επιφάνειας εργασίας] |
Κωδικοποίηση = UTF-8 |
Τύπος = Εφαρμογή |
Όνομα = Αναπαραγωγή |
Σχόλιο = Αυτή είναι μια εφαρμογή αναπαραγωγής |
Exec = python /home/pi/playback.py |
StartupNotify = false |
Τερματικό = αλήθεια |
Κρυφό = ψευδές |
προβολή rawplayback.desktop που φιλοξενείται με ❤ από το GitHub
Βήμα 7: Τέλος σημείωσης
Παρακαλώ πείτε μου τι πιστεύετε για αυτό το έργο στην ενότητα σχολίων, ενημερώστε με για τις προτάσεις σας και ψηφίστε με στον διαγωνισμό Raspberry Pi αν σας άρεσε.
Ανυπομονώ να σας διαβάσω!
Συνιστάται:
Ξύλινη συσκευή αναπαραγωγής δίσκων: 20 βήματα (με εικόνες)
Ξύλινος δίσκος αναπαραγωγής: wantedθελα να δείξω πώς λειτουργούν οι συσκευές αποθήκευσης πληροφοριών κατασκευάζοντας μια μηχανή αναπαραγωγής δίσκων μεγάλης κλίμακας. Αντί να βασίζεται σε παρεμβολές φωτός όπως οι συσκευές αναπαραγωγής CD, η συσκευή που έφτιαξα παίζει ξύλινους δίσκους με τρύπες και " μη οπές " (όπως και
Υπέρυθρες ελεγχόμενες συσκευές αναπαραγωγής MP3: 6 βήματα (με εικόνες)
Υπέρυθρο ελεγχόμενο MP3 Player: Δημιουργήστε ένα υπέρυθρο τηλεχειριστήριο MP3 player για περίπου $ 10 (usd). Έχει τα συνηθισμένα χαρακτηριστικά: αναπαραγωγή, παύση, αναπαραγωγή επόμενου ή προηγούμενου, αναπαραγωγή ενός μόνο τραγουδιού ή όλων των τραγουδιών. Διαθέτει επίσης παραλλαγές ισοσταθμιστή και έλεγχο έντασης. Όλα μπορούν να ελεγχθούν μέσω μιας
Παρακολούθηση και εγγραφή θερμοκρασίας με Bluetooth LE και RaspberryPi: 9 βήματα (με εικόνες)
Παρακολούθηση και καταγραφή θερμοκρασίας με Bluetooth LE και RaspberryPi: Αυτό το διδακτικό είναι πώς να συνδυάσετε ένα σύστημα παρακολούθησης θερμοκρασίας πολλαπλών κόμβων με σφάλμα αισθητήρα Bluetooth LE από Blue Radios (BLEHome) και RaspberryPi 3B Χάρη στην ανάπτυξη του προτύπου Bluetooth LE, υπάρχει τώρα άμεσα διαθέσιμο
Διακόπτης τηλεχειριζόμενου φωτός Bluetooth - Μετασκευή. Διακόπτης φωτός ακόμα λειτουργεί, χωρίς επιπλέον εγγραφή .: 9 βήματα (με εικόνες)
Διακόπτης τηλεχειριζόμενου φωτός Bluetooth - Μετασκευή. Ο διακόπτης φωτός εξακολουθεί να λειτουργεί, χωρίς επιπλέον εγγραφή .: Ενημέρωση 25 Νοεμβρίου 2017 - Για έκδοση υψηλής ισχύος αυτού του έργου που μπορεί να ελέγξει κιλοβάτ φορτίου, ανατρέξτε στην ενότητα Επαναπροσαρμογή ελέγχου BLE σε φορτία υψηλής ισχύος - Δεν απαιτείται επιπλέον παροχή Ενημέρωση 15 Νοεμβρίου 2017 - Ορισμένες πλακέτες BLE / στοίβες λογισμικού με
ΜΙΚΡΟΦΩΝΙΚΟ ΚΑΠΕΛΟ-Εγγραφή χωρίς χέρια: 8 βήματα (με εικόνες)
ΜΙΚΡΟΦΩΝΙΚΟ ΚΑΠΕΛΟ-Εγγραφή χωρίς χέρια: Οι ψηφιακές συσκευές εγγραφής υπαγόρευσης είναι αρκετά φθηνές. Έχουν άθλια ηχεία, αλλά πολύ καλά μικρόφωνα και μπορούν να κατεβάσουν τα αρχεία τους σε υπολογιστή για επεξεργασία. Έχω ενδιαφέρον για τη μουσική και την ηχογράφηση. Θέλω να αναπτύξω τη φωνή μου και επίσης να ηχογραφήσω το