Inhoudsopgave:

PiPiano: 3 stappen (met afbeeldingen)
PiPiano: 3 stappen (met afbeeldingen)

Video: PiPiano: 3 stappen (met afbeeldingen)

Video: PiPiano: 3 stappen (met afbeeldingen)
Video: Jochem Myjer - De Bonaire-menéér (Adem in, adem uit) 2024, Juli-
Anonim
Image
Image

Stel je eigen kleine Raspberry Pi-piano samen. Gebruikt FluidSynth SoundFont-synthesizer. Beschikt over polyfonie en sustain, wat betekent dat je alle noten tegelijk kunt indrukken en de noot langer zal spelen met de knop ingedrukt.

Schema en PCB worden gedeeld op EasyEDA. Ontwerpen en python-code zijn allemaal open. Pas het op jouw manier aan!

Dit project begon als een geluidskaart voor mijn peuter, maar ik speelde er meer mee dan hij. Na verschillende revisies werd het een beetje piano dat volwassenen kunnen waarderen.

Stap 1: Plannen voor bouwen

Heeft een Raspberry PI zero nodig die een internetverbinding heeft om pakketten te installeren. Als alternatief kan men mijn minimale afbeelding gebruiken die de piano speelt zoals ik hem heb gebouwd, netwerken is ook verwijderd. Een Raspberry Pi van normale grootte zou ook kunnen werken, maar hij zou uitsteken boven de piano-PCB.

U kunt JST- of schroefaansluitingen gebruiken, afhankelijk van de luidsprekers die u gebruikt. Ik gebruikte de JST-connector met ingesloten luidsprekers.

U kunt Raspbery Pi-compatibele USB-geluidsluidsprekers of -adapter gebruiken in plaats van de Maxim-versterkerchip, waarvoor soldeerpasta nodig is om deze onder de chip te solderen. Ik heb het geprobeerd met mini-USB-luidsprekers, maar het klinkt blikkeriger dan de getoonde luidsprekers. Als u USB-geluidshardware gebruikt, heeft u geen van de audiocomponenten op de PCB nodig. Ze bevinden zich aan de linkerkant van de Raspberry Pi.

Ik heb de Raspberry Pi Zero onder de print gemonteerd, maar je kunt hem op de bovenkant plaatsen. Zorg ervoor dat de SD-kaart aan dezelfde kant is als pin 1 gemarkeerd op de PCB en zorg ervoor dat de header-pinnen op de Pi Zero zijn gesoldeerd om overeen te komen.

Dit project heeft een aangepaste PCB nodig van uw favoriete PCB-fabrikant. Ik kreeg 5 van JLCPCB voor 14 USD.

Gerber-bestand op Google Drive, kunt u de Gerber ook genereren vanuit EasyEDA.

Ik heb ook een Bill of Materials-spreadsheet verstrekt.

Stap 2: Bouwen

Ik gebruikte lage temperatuur loodvrije soldeerpasta en een heteluchtsoldeerstation op de Amp IC's. Ik concentreerde de hitte op het IC totdat ik de soldeerkraal kon zien op de connectoren die zichtbaar waren aan de zijkant van het IC. De rest van de componenten zijn doorlopende gaten of grote SMD-afmetingen die gemakkelijk met de hand kunnen worden gesoldeerd. Ik heb mijn omgebouwde broodroosteroven gebruikt om een eerdere revisie opnieuw te plaatsen, maar uiteindelijk heb ik veel ervan met de hand gerepareerd.

Stap 3: Software

Bereid SD-kaart voor met Raspbian Lite

Setup Pi-ondersteuning voor Maxim IC

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

Pakketten installeren

sudo apt-get update

sudo apt-get upgrade

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

sudo pip installeer pyfluidsynth

Projectbestanden overzetten

Gebruik WinSCP of andere SCP-software om het Python- en geluidslettertypebestand naar de Pi-thuismap te kopiëren

chmod +x piano.py

sudo nano /etc/rc.local

Scroll naar beneden en voer net voor de exit 0-regel het volgende in:

python /home/pi/piano.py &

Alleen lezen

Het is een goed idee om het bestandssysteem alleen-lezen te maken, zodat het gewoon kan worden uitgeschakeld.

De schakelaar rechtsboven maakt het mogelijk om alleen-lezen uit te schakelen, om het systeem te kunnen wijzigen.

wget

sudo bash alleen-lezen-fs.sh

Ja voor lees/schrijf-jumper GPIO = 3

Nee voor GPIO-stop

Ja voor kernel panic

Kies optie 1 voor Pi Zero W en Pi Zero 1.3 en optie 2 voor een 1.2 versie (niet W)

Download USBpiano.py en hernoem naar piano.py als u USB-geluidshardware gebruikt

Ik heb een kaartafbeelding gemaakt voor de piano, geconfigureerd zoals ik hem heb gebouwd. Al het onnodige werd uit de afbeelding verwijderd, inclusief netwerken. Gebruikt standaard wachtwoord: framboos

Aanbevolen: