Taula de continguts:
- Pas 1: les coses de l'ordinador
- Pas 2: el piano
- Pas 3: Muntatge
- Pas 4: reptes tècnics i consideracions futures
Vídeo: Piano de sinestèsia: 4 passos
2024 Autora: John Day | [email protected]. Última modificació: 2024-01-30 08:11
Aquest piano reproductor reprodueix música amb una roda de colors i una càmera. Les imatges són capturades per la càmera, processades i interpretades com a notes musicals. Ara mateix està programat per reproduir rimes infantils que es poden canviar carregant un nou esbós d’arduino que especifica quines notes s’han de reproduir (quins colors s’han de mostrar a la càmera).
El PC Linux integrat inicia un servei en arrencar que pren una fotografia amb una càmera, calcula una funció dels valors RGB de la imatge i emet un so basat en el valor de retorn de la funció. Abans de reproduir el so, envia un senyal indicant a un Arduino que giri un servo, presentant el color corresponent a la següent nota que es reproduirà. A continuació, el bucle torna a començar, es fa una fotografia, es gira la roda de colors i es reprodueix un so infinit.
Aquest projecte és una manera divertida d’integrar música, programació moderna de sistemes Linux, programació de microcontroladors, doodling d’inscape, tall per làser i re-proposar algunes caixes de cartró brossa.
Tots els SVG de codi i inkscape estan disponibles a github a:
github.com/melvyniandrag/pyMusic
Materials utilitzats:
- Etiquetes blanques en blanc
- Caixa de cartró
- Càmera web
- Llapis de colors
- Arduino
- Beagleboard-xM
- Filferros
- Cable de sèrie
- Coneixements bàsics de processament d’imatges i música
Pas 1: les coses de l'ordinador
A bord necessitareu un petit equip compatible amb Linux, com ara un Raspberry Pi. Vaig fer servir un vell BeagleBoard-xM perquè, de vegades, el posava i ja tenia un sistema operatiu a la targeta SD. Podeu utilitzar qualsevol cosa, sempre que pugui gestionar una càmera web, pugui executar OpenCV (la biblioteca de visió per ordinador que s’utilitza per fer i processar imatges de la roda de colors) i que tingui un connector de sortida d’àudio.
He configurat el sistema operatiu per executar el codi python que captura imatges en arrencar seguint un tutorial de systemd. Per executar l'script, haureu de fer sudo apt-get install python-pyaudio python-opencv per obtenir les biblioteques indicades. També haureu d’instal·lar pip numys pyserial per obtenir aquestes biblioteques. pyaudio s'utilitza per reproduir sons, opencv s'utilitza per a la presa i processament d'imatges, numpy també s'utilitza per al processament d'imatges i es necessita pyserial per comunicar-se amb l'Arduino.
L'Arduino s'utilitza per fer girar el servomotor sobre el qual està muntada la roda de colors. Si teníeu un Raspberry Pi, podríeu fer servir els pins GPIO allà i deixar fora l’Arduino, però hauríeu de modificar el codi Python.
A les imatges es poden veure les tripes tecnològiques de l'operació i un parell de fragments de codi.
Pas 2: el piano
Vaig fer el piano de cartró amb algunes caixes velles que tenia. Tinc la sort de viure a prop d’un espai creador que té un tallador làser. Durant tot un any m’he preguntat per a què diables voldria un tallador làser i resulta que finalment en vaig trobar un ús.
Vaig mesurar l’ordinador, l’arduino i el servo, de manera que sabia l’espai que necessitaria, vaig dibuixar les parts del piano en un paisatge d’inks i les vaig retallar al tallador làser. (Edició: em vaig quedar sense cartró per fer que el gabinet contenia l'ordinador i l'arduino i, per tant, no els vaig posar. Estan a la part exterior de la caixa. No importa, podria haver obtingut una altra caixa d'algun lloc, però no al final no importa.)
Les peces es van ajuntar amb epoxi.
Pas 3: Muntatge
Aquí teniu algunes imatges del piano que s’està muntant i acolorint. La impressora estava sense tinta, de manera que no vaig poder imprimir els colors a les etiquetes blanques tal com tenia previst. Vaig fer servir els llapis de colors de la meva filla. I no vaig poder trobar un ganivet xacto per tallar l’etiqueta a la forma del cartró, així que vaig fer servir un ganivet de filet i vaig posar alguna cosa protectora al taulell de la cuina. Utilitzeu el que teniu!
Pas 4: reptes tècnics i consideracions futures
Una part desafiant d’aquest projecte consistia a aconseguir que la càmera llegís els valors RGB adequats. La càmera web que tinc té uns LEDs increïblement brillants que no sé com apagar a Linux. Crec que hi ha un controlador de Windows que us permet activar i desactivar. Vaig experimentar amb gravar els LED amb cinta elèctrica i deixar-los encesos. També he provat la robustesa del programari, no només mostrant-li paper de colors, sinó també escrivint un petit lloc web que mostra colors.
Els sons produïts per l'ordinador de vegades presenten esclats i cruixits, i això prové del fet que tinc molt poca experiència en programació d'àudio Linux. La biblioteca pyaudio expulsa tota una sèrie de queixes pel fet que JACK no s’instal·la al PC, però per defecte JACK no vol córrer sense cap (sense un escriptori gui i un monitor). Es tracta d’una tasca de programació que em va semblar un refinament, però que no era necessària per expressar l’essència del piano que tenia al cap.
M’havia plantejat utilitzar una manovella manual per canviar els colors i potser tenir-los en un corró, però això introdueix les seves pròpies complicacions. El servo és una mica sorollós, però de moment funciona bé.
Actualment, el piano del reproductor només està programat per tocar 4 notes. Això es deu al fet que el servo només es mou 180 graus, la majoria de rimes es poden tocar amb només 3-4 notes i no volia que la roda de colors estigués desordenada amb regions de color, cosa que podria confondre la càmera. Així, a través d’una combinació de sort musical i restriccions tècniques, 4 notes estan bé.
Recomanat:
Piano Arduino Piezo Buzzer: 5 passos
Arduino Piezo Buzzer Piano: aquí farem un piano Arduino que utilitzi un buzzer piezoelèctric com a altaveu. Aquest projecte és fàcilment escalable i pot funcionar amb més o menys notes, segons vosaltres. El construirem amb només quatre botons / tecles per simplificar. Això és divertit i fàcil de projectar
Feu un piano làser: 9 passos
Feu un piano làser: Hola, sóc estudiant Multimèdia i amp; Tecnologia creativa a Howest Belgium. Sempre heu volgut tocar música però no com tothom? Aleshores això pot ser alguna cosa per a vosaltres! He creat un piano amb Làsers. Només cal posar els dits a sobre
Piano Arduino simple: 8 passos
Piano Arduino simple: Avui crearem un piano Arduino simple d’una octava, que pot ser un gran punt de partida per a altres projectes. Aquest projecte introduirà components bàsics d’Arduino i programació a nivell de batxillerat. Tot i que el codi està format per individus pre
Piano Arduino amb manual i 7 cançons predefinides: 7 passos
Piano Arduino amb cançons predeterminades manuals i 7: la interfície del teclat Arduino Piano amb pantalla LCD té mode 2. El mode manual & El mode de presets. He fet servir 7 polsadors per a un simple piano de 7 tecles i 1 botó per configurar el mode per canviar a 7 cançons predefinides. Cançons en mode predefinit: feu clic al botó del mode de configuració fi
Piano d'aigua fet amb pot de vidre: 3 passos
Piano d’aigua fet amb pot de vidre: aquest és un projecte senzill i senzill per a tothom. No he fet servir un microcontrolador ni cap CI. Aquest piano d’aigua utilitza pots petits. Aquest és realment un projecte bàsic. Per fer aquest projecte, seguiu els instructius. REQUISITS: pots de qualsevol mida, com a mínim de 4 a màxim