RaspPi Musikalische Tastatur
Demo/Erklärung
Ersteller/Rollen
- Andrew Darling
- Schrieb die objektorientierte Programmstruktur und Logik für den Code.
- Riley Royall
- Baute den Schaltkreis für RPBP.
- Mehmet Yilmaz
- Schrieb das GUI-Element und den Notengenerator für den Code.
Über
Das Raspberry Pi Buzzer Piano (RPBP) Projekt war ein Abschlussprojekt für Python Sensor Systems (CSCI-250), eine Bachelor-Klasse, die von der Colorado School of Mines im Herbstsemester 2019 angeboten wurde. Das Projekt war ein Gruppenprojekt, das aus Andrew Darling, Riley Royall und Mehmet Yilmaz bestand. Es wurde offiziell Ende November 2019, Anfang Dezember 2019 abgeschlossen.
Unser Projekt ist ein Raspberry Pi Buzzer Piano (RPBP). Diese RPBP-Idee ist eine musikalische Tastatur, die aus 13 Tasten besteht, wobei die Tasten einfach Tasten sind, die wie Klaviertasten fungieren können. Wenn eine Taste gedrückt wird, bewirkt dies, dass einer oder mehrere der Summer mit unterschiedlichen Frequenzen summen, abhängig davon, welche Taste gedrückt wird. Es wird auch zwei Potentiometer geben, von denen eines verwendet wird, um zwischen den 3 Modi des RPBP zu wechseln, und das zweite wird verwendet, um die Oktave(n) der Summer zu ändern. Die 3 Modi des RPBP sind: Freies Spielen, Aufnehmen und Abspielen. Freies Spielen ermöglicht es dem Benutzer, das RPBP zu spielen und einfach zu hören, welche Taste er gedrückt hat. Aufnehmen ermöglicht es dem Benutzer, das RPBP frei zu spielen und gleichzeitig in eine npy-Datei aufzunehmen sowie Noten in PDF-Form für diese Aufnahme zu erstellen. Abspielen ermöglicht es dem Benutzer, einen aufgenommenen Dateinamen einzugeben, und der Schaltkreis spielt diese aufgenommene Datei über die Summer ab. Alle Noten werden in einem Verzeichnis gespeichert, sodass der Benutzer jederzeit auf seine Noten zurückblicken kann, wenn er dies wünscht. Jede Taste hat eine LED, um dem Benutzer anzuzeigen, wann eine Taste gedrückt wurde. Dieses Projekt wurde nur auf Rasbian (Raspberry Pi OS) mit den unten aufgeführten Anforderungen erfolgreich getestet.
Anforderungen
- LilyPond
- Python3
- Raspberry Pi B 3+
- Raspberry Pi OS (ISO)
- LillyPond mit ARM (Raspberry Pi) zum Laufen bringen
- NumPy
- Bash
- Schaltkreisplatine
Informationen
- Modi:
- Freies Spielen: Ermöglicht es dem Benutzer, das RPBP einfach zu spielen.
- Aufnehmen: Ermöglicht es dem Benutzer, das, was er spielt, aufzunehmen, diese Aufnahme zu speichern und Noten für das, was er aufnimmt, zu erstellen.
- Abspielen: Ermöglicht es dem Benutzer, eine beliebige Aufnahme abzuspielen, die er heruntergeladen oder erstellt hat.
- Stummschalten: Stummschaltet alle Summer des RPBP.
- So aktualisieren Sie zwischen den Modi:
- Ändern Sie die Einstellungen/Werte im GUI und drücken Sie die Schaltfläche “Absenden”.
- Weitere Hinweise:
- Um mehr über RPBP aus dem GUI zu erfahren, drücken Sie die Schaltfläche “README”, und dieses README wird geöffnet.
Schaltkreis
- Sie können Bilder der für dieses Projekt verwendeten Schaltkreisplatine im Abschnitt Schaltkreisbilder ansehen.
- Der Pi Wedge ist über ein Flachbandkabel mit einem Raspberry Pi 3 B+ verbunden.
- Der Raspberry Pi führt den in diesem Repo bereitgestellten Code mit den in diesem README aufgeführten Treibern aus.
- Entschuldigung für das unordentliche Schaltkreislayout, leider haben wir diesen Teil nicht gut dokumentiert.
So verwenden Sie es:
- Zuerst stellen Sie sicher, dass alle Anforderungen erfüllt sind, und führen dann das Bash-Skript start.sh aus, und ein GUI erscheint.
- Zweitens wählen Sie den Modus aus, den Sie unter dem Label “Modi” verwenden möchten.
- [Diese Schritte gelten für diejenigen, die den Modus “Freies Spielen” auswählen]
- Drittens: Drücken Sie die Schaltfläche “Absenden” und beginnen Sie, auf dem RPBP zu spielen.
- [Diese Schritte gelten für diejenigen, die den Modus “Aufnehmen” auswählen]
- Drittens, schreiben Sie, welchen Namen Sie Ihrer aufgenommenen Datei unter dem Label “Aufnahme Name” geben möchten.
- Drittens, drücken Sie die Schaltfläche “Absenden”, und eine rote LED wird eingeschaltet.
- Drittens, spielen Sie auf dem RPBP, und wenn Sie fertig sind, drücken Sie die Stopptaste im GUI.
- Drittens, nachdem Sie die Stopptaste gedrückt haben, wird Ihre Aufnahme gespeichert und Ihre Noten werden generiert und als PDF geöffnet, damit Sie sie ansehen können, und sie werden im Verzeichnis SHEETS gespeichert.
- [Diese Schritte gelten für diejenigen, die den Modus “Abspielen” auswählen]
- Drittens, wählen Sie die Musikdatei aus, die Sie unter dem Label “Send It” abspielen möchten.
- Drittens, drücken Sie die Schaltfläche “Absenden” und beginnen Sie, die Musikdatei anzuhören, die Sie ausgewählt haben.
- [Diese Schritte gelten für diejenigen, die den Modus “Stummschalten” auswählen]
- Drittens, drücken Sie einfach die Schaltfläche “Absenden”, und alle Summer werden stummgeschaltet, bis Sie zu einem anderen Modus wechseln.
- Viertens, nachdem Sie mit dem RPBP fertig sind, drücken Sie die Schaltfläche “Beenden”, um das GUI und das gesamte Programm zu schließen.
Schaltkreisbilder