Muzyczna klawiatura RaspPi
Demo/Wyjaśnienie
Twórcy/Role
- Andrew Darling
- Napisał strukturę i logikę obiektowo zorientowaną dla kodu.
- Riley Royall
- Zbudował obwód dla RPBP.
- Mehmet Yilmaz
- Napisał element GUI i generator nut dla kodu.
O projekcie
Projekt Raspberry Pi Buzzer Piano (RPBP) był projektem końcowym do przedmiotu Python Sensor Systems (CSCI-250), zajęć licencjackich oferowanych przez Colorado School of Mines, podczas semestru jesiennego 2019. Projekt był projektem grupowym składającym się z Andrew Darlinga, Riley Royalla i Mehmeta Yilmaza. Został oficjalnie ukończony pod koniec listopada 2019 roku, na początku grudnia 2019 roku.
Nasz projekt to Raspberry Pi Buzzer Piano (RPBP). Ten pomysł RPBP to muzyczna klawiatura, która miałaby zestaw 13 klawiszy, gdzie klawisze są po prostu przyciskami, które mogą działać jak klawisze pianina. Gdy zostanie naciśnięty klawisz, spowoduje to, że jeden lub więcej brzęczyków zabrzęczy na różnych częstotliwościach w zależności od tego, który przycisk został naciśnięty. Będą też dwa potencjometry, z których jeden będzie używany do przełączania między 3 trybami RPBP, a drugi do zmiany oktawy brzęczyków. 3 tryby w RPBP to: Free-Play, Record i Play-Back. Free-Play pozwala użytkownikowi grać na RPBP i po prostu słyszeć, jaki klawisz nacisnął. Record pozwala użytkownikowi grać na RPBP w trybie Free-Play, a jednocześnie nagrywać to do pliku npy, a także tworzyć nuty w formacie PDF dla tego nagrania. Play-Back pozwala użytkownikowi wprowadzić nazwę zapisanego pliku, a układ będzie odtwarzał ten zapisany plik przez brzęczyki. Wszystkie nuty będą zapisywane w jednym katalogu, więc użytkownik zawsze może wrócić do swoich nut, jeśli będzie tego chciał. Każdy przycisk/klawisz ma LED, aby pokazywać użytkownikowi, kiedy przycisk/klawisz został naciśnięty. Ten projekt został sprawdzony jako działający tylko na Rasbian (Raspberry Pi OS) z wymaganiami pokazanymi poniżej, poprawnie skonfigurowanymi.
Wymagania
- LilyPond
- Python3
- Raspberry Pi B 3+
- Raspberry Pi OS (ISO)
- Make LillyPond Work With ARM (Raspberry Pi)
- NumPy
- Bash
- Płytka obwodu
Informacje
- Tryby:
- Free-play: Pozwala użytkownikowi po prostu grać na RPBP.
- Record: Pozwala użytkownikowi nagrywać to, co gra, zapisać to nagranie i utworzyć nuty dla tego, co nagra.
- Play-Back: Pozwala użytkownikowi odtwarzać dowolne nagranie, które pobrał lub utworzył.
- Mute: wycisza wszystkie brzęczyki na RPBP.
- Jak przełączać między trybami:
- Zmień ustawienia/wartości w GUI i naciśnij przycisk Submit.
- Inne uwagi:
- Aby dowiedzieć się więcej o RPBP z poziomu GUI, naciśnij przycisk README, a ten README się otworzy.
Układ elektryczny
- Możesz zobaczyć obrazy płytki obwodu używanej do tego projektu w sekcji Circuit Pictures.
- Pi Wedge jest podłączony do Raspberry Pi 3 B+ za pomocą kabla taśmowego.
- Raspberry Pi uruchamia kod dostarczony w tym repozytorium z sterownikami wymienionymi w tym README.
- Przepraszamy za tak chaotyczny układ obwodu, niestety nie udokumentowaliśmy tej części zbyt dobrze.
Jak używać:
- Najpierw upewnij się, że wszystkie wymagania są spełnione, a następnie wykonaj skrypt bash start.sh i pojawi się GUI.
- Po drugie, wybierz, jakiego trybu chcesz użyć pod etykietą “Modes”.
- [ te kroki są dla tych, którzy wybiorą tryb “Free-Play” ]
- Third_10: Naciśnij przycisk Submit i zacznij grać na RPBP
- [ te kroki są dla tych, którzy wybiorą tryb “Record” ]
- Third_20, Wpisz nazwę, jaką chcesz nadać swojemu nagranemu plikowi, pod etykietą “Record Name”.
- Third_21, Naciśnij przycisk o nazwie Submit, a czerwona dioda LED zostanie włączona.
- Third_22, Graj na RPBP, a gdy skończysz, naciśnij przycisk Stop w GUI.
- Third_23, Po naciśnięciu przycisku Stop twoje nagranie zostanie zapisane, a nuty zostaną wygenerowane i otwarte jako plik PDF do podglądu, a także zostaną zapisane w katalogu SHEETS.
- [ te kroki są dla tych, którzy wybiorą tryb “Play-Back” ]
- Third_30, Wybierz, jaki plik utworu chcesz odtworzyć, pod etykietą “Send It”
- Third_31, Naciśnij przycisk submit i zacznij słuchać wybranego pliku utworu.
- [ te kroki są dla tych, którzy wybiorą tryb “Mute” ]
- Third_40, Po prostu naciśnij przycisk Submit, a wszystkie brzęczyki będą wyciszone, dopóki nie przełączysz się na inny tryb
- Po czwarte, gdy skończysz korzystać z RPBP, naciśnij przycisk Exit, aby zamknąć GUI i cały program
Zdjęcia układu elektrycznego