Teclado Musical RaspPi

Repositorio de GitHub del Proyecto

Demostración/Explicación

Creadores/Roles

  • Andrew Darling
    • Escribió la estructura y lógica de Programación Orientada a Objetos para el código.
  • Riley Royall
    • Construyó el circuito para el RPBP.
  • Mehmet Yilmaz
    • Escribió el elemento de la GUI y el generador de partituras para el código.

Acerca de

El proyecto Piano Zumbador Raspberry Pi (RPBP) fue un proyecto final para Sistemas de Sensores en Python (CSCI-250), una clase de pregrado ofrecida por la Escuela de Minas de Colorado, durante el semestre de Otoño de 2019. El proyecto fue un proyecto grupal que consistió en Andrew Darling, Riley Royall y Mehmet Yilmaz. Se completó oficialmente alrededor de finales de noviembre de 2019, principios de diciembre de 2019.

Nuestro proyecto es un Piano Zumbador Raspberry Pi (RPBP). Esta idea de RPBP es un teclado musical que tendría un conjunto de 13 teclas, donde las teclas son solo botones, que pueden actuar como teclas de piano. Cuando se presiona una tecla, haría que uno o más de los zumbadores sonaran a diferentes frecuencias dependiendo de qué botón se presiona. También habrá dos potenciómetros, donde uno de ellos se utilizará para cambiar entre los 3 modos del RPBP y el segundo se utiliza para cambiar la(s) octava(s) de los zumbadores. Los 3 modos en el RPBP son: Juego Libre, Grabación y Reproducción. Juego Libre permite al usuario tocar el RPBP y simplemente escuchar qué tecla presionó. Grabación permite al usuario tocar libremente el RPBP mientras graba en un archivo npy, así como crear partituras, en formato PDF, para esa grabación. Reproducción permite al usuario ingresar un nombre de archivo grabado y el circuito reproducirá ese archivo grabado a través de los zumbadores. Todas las partituras se guardarán en un directorio, para que el usuario siempre pueda volver a ver sus partituras si así lo desea. Cada botón/tecla tiene un LED para mostrar al usuario cuándo se ha presionado un botón/tecla. Este proyecto solo se ha demostrado que funciona en Rasbian (Raspberry Pi OS) con los requisitos, que se muestran a continuación, configurados correctamente.

Requisitos

Información

  • Modos:
    • Juego libre: Permite al usuario simplemente tocar el RPBP.
    • Grabación: Permite al usuario grabar lo que toca, guardar esa grabación y crear partituras para lo que graba.
    • Reproducción: Permite al usuario reproducir cualquier grabación que haya descargado o hecho.
    • Silencio: silencia todos los zumbadores en el RPBP.
  • Cómo actualizar entre modos:
    • Cambia los ajustes/valores en la GUI y presiona el botón Enviar.
  • Otras Notas:
    • Para aprender más sobre el RPBP desde la GUI, presiona el botón README y se abrirá este README.

Circuito

  • Puedes ver imágenes de la placa de circuito utilizada para este proyecto en la sección Imágenes del Circuito.
  • El Pi Wedge está conectado a una Raspberry Pi 3 B+ a través de un cable plano.
  • La Raspberry Pi ejecuta el código proporcionado en este repositorio con los controladores listados en este README.
  • Lamentamos que el diseño del circuito esté tan desordenado, desafortunadamente no documentamos esta parte muy bien.

Cómo Usar:

  • Primero, asegúrate de que se cumplan todos los requisitos y luego ejecuta el script bash start.sh y aparecerá una GUI.
  • Segundo, selecciona qué modo deseas usar bajo la etiqueta “Modos”.
  • [ estos pasos son para aquellos que seleccionan el modo “Juego Libre” ]
    • Tercero_10: Presiona el botón Enviar y comienza a tocar en el RPBP
  • [ estos pasos son para aquellos que seleccionan el modo “Grabación” ]
    • Tercero_20, Escribe qué nombre deseas darle a tu archivo grabado bajo la etiqueta “Nombre de Grabación”.
    • Tercero_21, Presiona el botón llamado Enviar y se encenderá un LED rojo.
    • Tercero_22, Toca en el RPBP y cuando termines, presiona el botón Detener en la GUI.
    • Tercero_23, Después de presionar el botón Detener, tu grabación se guardará y tu partitura se generará y abrirá como un PDF para que la veas y se guardará en el directorio SHEETS.
  • [ estos pasos son para aquellos que seleccionan la “Reproducción” ]
    • Tercero_30, Selecciona qué archivo de canción deseas reproducir bajo la etiqueta “Envíalo”
    • Tercero_31, Presiona el botón enviar y comienza a escuchar el archivo de canción que seleccionaste.
  • [ estos pasos son para aquellos que seleccionan el modo “Silencio” ]
    • Tercero_40, Simplemente presiona el botón Enviar y todos los Zumbadores estarán en silencio hasta que cambies a un modo diferente
  • Cuarto, después de que hayas terminado con el RPBP, presiona el botón Salir para cerrar la GUI y el programa en general

Imágenes del Circuito

GUI_image
GUI_image
GUI_image