Teclado Musical RaspPi
Demonstração/Explicação
Criadores/Papéis
- Andrew Darling
- Escreveu a estrutura e a lógica de Programação Orientada a Objetos para o código.
- Riley Royall
- Construiu o circuito para o RPBP.
- Mehmet Yilmaz
- Escreveu o elemento GUI e o gerador de partituras para o código.
Sobre
O projeto Piano Buzzer Raspberry Pi (RPBP) foi um projeto final para Sistemas de Sensores em Python (CSCI-250), uma aula de graduação oferecida pela Colorado School of Mines, durante o semestre de outono de 2019. O projeto foi um projeto em grupo composto por Andrew Darling, Riley Royall e Mehmet Yilmaz. Foi oficialmente concluído por volta do final de novembro de 2019, início de dezembro de 2019.
Nosso projeto é um Piano Buzzer Raspberry Pi (RPBP). Esta ideia de RPBP é um teclado musical que teria um conjunto de 13 teclas, onde as teclas são apenas botões, que podem agir como teclas de piano. Quando uma tecla é pressionada, isso faria com que um ou mais dos buzzers vibrassem em diferentes frequências, dependendo de qual botão é pressionado. Também haverá dois potenciômetros, onde um deles será usado para alternar entre os 3 modos do RPBP e o segundo é usado para mudar a(s) oitava(s) dos buzzers. Os 3 modos do RPBP são: Livre-Jogar, Gravar e Reproduzir. O Livre-Jogar permite que o usuário toque o RPBP e apenas ouça qual tecla ele pressionou. O Gravar permite que o usuário toque livremente o RPBP enquanto grava em um arquivo npy, além de criar partituras, em formato PDF, para essa gravação. O Reproduzir permite que o usuário insira um nome de arquivo gravado e o circuito reproduzirá esse arquivo gravado através dos buzzers. Todas as partituras serão salvas em um diretório, para que o usuário possa sempre consultar suas partituras, se desejar. Cada botão/tecla tem um LED para mostrar ao usuário quando um botão/tecla foi pressionado. Este projeto só foi comprovado para funcionar no Rasbian (Raspberry Pi OS) com os requisitos, mostrados abaixo, configurados corretamente.
Requisitos
- LilyPond
- Python3
- Raspberry Pi B 3+
- Raspberry Pi OS (ISO)
- Fazer o LillyPond Funcionar com ARM (Raspberry Pi)
- NumPy
- Bash
- Placa de Circuito
Informações
- Modos:
- Livre-jogar: Permite que o usuário apenas toque o RPBP.
- Gravar: Permite que o usuário grave o que toca, salve essa gravação e crie partituras para o que grava.
- Reproduzir: Permite que o usuário reproduza qualquer gravação que tenha baixado ou feito.
- Mudo: silencia todos os buzzers no RPBP.
- Como Atualizar Entre Modos:
- Altere as configurações/valores na GUI e pressione o botão Enviar.
- Outras Notas:
- Para saber mais sobre o RPBP a partir da GUI, pressione o botão README e este README será aberto.
Circuito
- Você pode ver imagens da placa de circuito usada para este projeto na seção Imagens do Circuito.
- O Pi Wedge está conectado a um Raspberry Pi 3 B+ através de um cabo flat.
- O Raspberry Pi executa o código fornecido neste repositório com os drivers listados neste README.
- Desculpe pela disposição do circuito estar tão bagunçada, infelizmente não documentamos essa parte muito bem.
Como Usar:
- Primeiro, certifique-se de que todos os requisitos sejam atendidos e, em seguida, execute o script bash start.sh e uma GUI aparecerá.
- Em segundo lugar, selecione qual Modo você deseja usar sob o rótulo “Modos”.
- [ estes passos são para aqueles que selecionam o modo “Livre-Jogar” ]
- Terceiro_10: Pressione o botão Enviar e comece a tocar no RPBP
- [ estes passos são para aqueles que selecionam o modo “Gravar” ]
- Terceiro_20, Escreva qual nome você deseja dar ao seu arquivo gravado sob o rótulo “Nome da Gravação”.
- Terceiro_21, Pressione o botão chamado Enviar e um LED Vermelho será aceso.
- Terceiro_22, Toque no RPBP e, quando terminar, pressione o botão Parar na GUI.
- Terceiro_23, Depois de pressionar o botão Parar, sua gravação será salva e sua partitura será gerada e aberta como um PDF para você visualizar e será salva no diretório SHEETS.
- [ estes passos são para aqueles que selecionam o “Reproduzir” ]
- Terceiro_30, Selecione qual arquivo de música você deseja tocar sob o rótulo “Enviar”
- Terceiro_31, Pressione o botão enviar e comece a ouvir o arquivo de música que você selecionou.
- [ estes passos são para aqueles que selecionam o modo “Mudo” ]
- Terceiro_40, Basta pressionar o botão Enviar e todos os Buzzers serão silenciados até que você mude para um modo diferente
- Quarto, depois de terminar com o RPBP, pressione o botão Sair para fechar a GUI e o programa geral
Imagens do Circuito