Cuprins:

PiPiano: 3 pași (cu imagini)
PiPiano: 3 pași (cu imagini)

Video: PiPiano: 3 pași (cu imagini)

Video: PiPiano: 3 pași (cu imagini)
Video: sapientdream - Pastlives (lyrics) 2024, Iulie
Anonim
Image
Image

Sintetizați-vă propriul pian Raspberry Pi. Folosește sintetizatorul FluidSynth SoundFont. Dispune de polifonie și susținere, ceea ce înseamnă că puteți apăsa toate notele simultan, iar nota va juca mai mult cu butonul ținut apăsat.

Schema și PCB sunt distribuite pe EasyEDA. Modelele și codul python sunt toate deschise. Personalizați-l după cum doriți!

Acest proiect a început mai întâi ca tablou de sunet pentru copilul meu, dar am jucat cu el mai mult decât el. După mai multe revizuiri, a devenit puțin apreciat de adulții la pian.

Pasul 1: planificați construirea

Necesită un Raspberry PI zero care să aibă o conexiune la internet pentru a instala pachete. Alternativ, puteți folosi imaginea mea minimă care cântă la pian așa cum am construit-o, și rețeaua a fost eliminată. O Raspberry Pi de dimensiuni obișnuite ar putea funcționa și ea, dar ar ieși din PCB-ul pentru pian.

Puteți utiliza terminale JST sau cu șurub, în funcție de difuzoarele pe care le utilizați. Am folosit conectorul JST cu difuzoare închise.

Puteți utiliza difuzoare de sunet sau adaptor USB compatibile Raspbery Pi în locul cipului amplificator Maxim, care necesită lipire de lipit pentru a-l lipi sub cip. Am încercat-o cu difuzoare mini USB, dar sună mai tinut decât difuzoarele afișate. Dacă utilizați hardware de sunet USB, nici una dintre componentele audio de pe PCB nu va fi necesară. Sunt în stânga Raspberry Pi.

Am montat Raspberry Pi Zero sub PCB, dar puteți pune deasupra. Doar asigurați-vă că cardul SD este aceeași parte ca pinul marcat pe PCB și asigurați-vă că pinii antetului de pe Pi Zero sunt lipiți pentru a se potrivi.

Acest proiect are nevoie de un PCB personalizat de la producătorul dvs. preferat de PCB. Am primit 5 de la JLCPCB pentru 14 USD.

Fișier Gerber pe Google Drive, puteți genera și Gerber din EasyEDA.

De asemenea, am furnizat o foaie de calcul Bill of Materials.

Pasul 2: Construiți

Am folosit pastă de lipit fără plumb la temperatură scăzută și o stație de lipit cu aer fierbinte pe circuite integrate Amp. Am focalizat căldura deasupra IC-ului până când am putut vedea cordonul de lipit la conectorii vizibili pe partea laterală a IC-ului. Restul componentelor sunt găuri trecătoare sau dimensiuni mari SMD care au fost ușor lipite manual. Am folosit cuptorul meu prăjitor de pâine convertit pentru a reveni la o revizuire anterioară, dar am sfârșit cu fixarea manuală a unei părți.

Pasul 3: Software

Pregătiți cardul SD cu Raspbian Lite

Configurați suport Pi pentru Maxim IC

curl -sS https://raw.githubusercontent.com/adafruit/Raspberry-Pi-Installer-Scripts/master/i2samp.sh | bash

Instalați pachete

sudo apt-get update

sudo apt-get upgrade

sudo apt-get install fluidsynth python-numpy python-pip

sudo pip instalează pyfluidsynth

Transferați fișierele proiectului

Utilizați WinSCP sau alt software SCP pentru a copia fișierul de fonturi Python și sunet în folderul principal Pi

chmod + x piano.py

sudo nano /etc/rc.local

Derulați în jos și, chiar înainte de linia de ieșire 0, introduceți următoarele:

python /home/pi/piano.py &

Numai citire

Este o idee bună să faceți sistemul de fișiere numai în citire, astfel încât să poată fi doar oprit.

Comutatorul din dreapta sus permite oprirea numai în citire, pentru a putea modifica sistemul.

wget

sudo bash read-only-fs.sh

Da pentru jumperul de citire / scriere GPIO = 3

Nu pentru GPIO-stop

Da pentru panica miezului

Alegeți opțiunea 1 pentru Pi Zero W și Pi Zero 1.3 și opțiunea 2 pentru o versiune 1.2 (nu W)

Descărcați USBpiano.py și redenumiți-l în piano.py dacă utilizați hardware de sunet USB

Am făcut o imagine de card pentru pian, am configurat modul în care l-am construit. Tot ce nu era necesar a fost eliminat din imagine, inclusiv în rețea. Folosește parola implicită: zmeură

Recomandat: