Índice:

Piano de frutas rápido com MIDI: 6 etapas (com imagens)
Piano de frutas rápido com MIDI: 6 etapas (com imagens)

Vídeo: Piano de frutas rápido com MIDI: 6 etapas (com imagens)

Vídeo: Piano de frutas rápido com MIDI: 6 etapas (com imagens)
Vídeo: 😂❤️ #PaollaOliveira #DiogoNogueira 2024, Novembro
Anonim
Image
Image
Piano de frutas rápido com MIDI
Piano de frutas rápido com MIDI

Este é um piano de toque capacitivo realmente simples. Toque em frutas, latas de refrigerante, garrafas de água, tiras de papel alumínio, etc., e você obterá música de piano polifônica em seu computador. Agora que o software está escrito, o projeto não deve levar mais de 10 minutos para ser montado com a versão do Arduino.

Você precisa:

  • um Arduino (Mega para 8 teclas, Uno para 6 teclas) ou uma placa STM32F103C8 de comprimido preto (US $ 2 no Aliexpress) mais um conversor UART para USB (por exemplo, um Arduino ou um CH340)
  • cabo USB
  • alguma folha de alumínio
  • teste clipes idealmente, mas jumpers e clipes de papel servirão (ideia para isso a partir daqui)
  • fruta, massa de brincar ou pedaços de papel com áreas coloridas a lápis
  • computador.

Não são necessários componentes adicionais, pois usa o código da brilhante biblioteca ADCTouch de martin2250 e o Arduino envia comandos MIDI via serial para o computador. A reprodução de áudio do Arduino é por meio de um script python incluído no computador ou midiserial sem cabelo.

Se você usar a placa de desenvolvimento STM32F103C8, é ainda melhor: o piano se torna um verdadeiro controlador MIDI USB, sem a necessidade de midiserial sem pelos.

Observação: para evitar danos ao Arduino / STM32F1 causados por eletricidade estática, especialmente em um dia seco ou no carpete, sugiro não tocar na folha de alumínio ou nos clipes de teste quando o dispositivo estiver funcionando. Em vez disso, toque na fruta, massa de brinquedo, etc., cuja resistência deve fornecer alguma proteção ESD

Etapa 1: Bibliotecas Arduino

Bibliotecas Arduino
Bibliotecas Arduino

No IDE do Arduino, escolha Sketch | Incluir Biblioteca | Gerente de biblioteca. Procure meu ADCTouchSensor. Instale a biblioteca.

Em seguida, escolha Arquivo | Exemplos | ADCTouchSensor | CapacitivePiano.

Se você tiver um Arduino, conecte-o à porta USB do seu computador e carregue o esboço CapacitivePiano para o seu Uno ou Mega. O sketch enviará dados para o computador via serial USB como para qual dos 8 (Mega) ou 6 (Uno) sensores capacitivos foi acionado.

Se você tiver um STM32F103C8, primeiro instale o bootloader e configure o IDE do Arduino para ele (com meu branch do branch addMidiHID) seguindo as três primeiras etapas aqui. Em seguida, volte para o Gerenciador de Biblioteca e procure minha biblioteca USBHID_stm32f1. Instale-o.

Etapa 2: anexar leads às teclas de piano

Anexar leads às teclas de piano
Anexar leads às teclas de piano
Anexar leads às teclas de piano
Anexar leads às teclas de piano

Passe os fios dos pinos A0-A7 (A0-A5 no Uno) em seu Arduino ou STM32F103C8 para o que deseja que funcione como teclas de piano. Por exemplo, usei jumpers com pinças de crocodilo ou clipes de teste indo para pedaços de papel alumínio em cada um dos quais coloquei uma lata de refrigerante ou uma laranja como chave. A folha de alumínio pode ser usada diretamente como chave. Ou pode-se enfiar um arame em um pedaço de fruta, verdura ou massa de brinquedo.

Etapa 3: instalar o software: Opção A: Arduino e MIDI sem cabelo para a ponte serial

Você pode baixar e instalar o Hairless MIDI no Serial Bridge (Win / OSX / Linux) para conectar a saída serial USB do Arduino com o software de sintetizador do seu computador.

Se você tem o Windows 7 ou mais recente, pode usar o Microsoft Wavetable GS Synth integrado, portanto, tudo o que você precisa para instalar é o Hairless. Algum outro software de reprodução exigirá loopMIDI.

Em outros sistemas, você pode precisar de um sintetizador MIDI como VirtualMidiSynth ou Garageband. Você também pode usar o VirtualMidiSynth no Windows, se desejar.

Etapa 4: instalar o software: Opção B: Arduino e Python

Instale o software: Opção B: Arduino e Python
Instale o software: Opção B: Arduino e Python

Você também pode usar um script Python simples incluído que reproduz notas MIDI.

Certifique-se de ter o Python instalado em seu computador. 2.7 ou 3.x são suficientes.

Certifique-se de ter o pacote Pygame Python instalado. Caso contrário, execute a partir da linha de comando:

python -m pip install pygame

Descubra qual é o endereço da porta serial do seu Arduino. Seu Arduino IDE terá as portas seriais listadas em Ferramentas | Porta.

No pacote CapacitivePiano que você baixou, você encontrará o script music.py que é o lado PC do projeto.

Etapa 5: Instale o software: Opção C: STM32F103C e software de sintetizador MIDI

Instale o software: Opção C: STM32F103C e software de sintetizador MIDI
Instale o software: Opção C: STM32F103C e software de sintetizador MIDI

Se você tiver o STM32F103C, poderá usar qualquer software que funcione com um controlador de teclado MIDI.

Em um computador, eu uso o teclado de piano virtual MIDI (VMPK). Com o STM32F103C conectado, escolha Editar | Conexões MIDI | Insira a conexão MIDI e escolha Maple MIDI ou Diro Synth.

Em um dispositivo Android, usei com sucesso (com um cabo USB OTG) o Common Analog Synthesizer e o Synth DX7 Piano.

Etapa 6: Jogue

Toque!
Toque!
Toque!
Toque!
Toque!
Toque!

Conecte o Arduino com o esboço CapacitivePiano no computador. Não toque em nenhum dos "botões" até que apenas o LED de energia seja acionado, para permitir que os botões capacitivos sejam calibrados.

Para a opção Hairless, execute a ponte MIDI Hairless, escolha a porta serial na lista suspensa. Em seguida, escolha um sintetizador. No Windows, se você escolher o Microsoft Wavetable GS Synth, tudo deve funcionar.

Se você quiser usar o script Python em vez disso, certifique-se de estar no diretório onde tem piano.py e execute:

python piano.py serialport

onde porta serial é a porta serial do Arduino IDE (por exemplo, COMx no Windows).

Se você usa o STM32F103C8, use seu software de sintetizador MIDI favorito em um computador ou dispositivo móvel.

Agora pressione seus "botões" e divirta-se!

Ideias educacionais para as crianças experimentarem:

  • Experimente diferentes itens na folha de alumínio e veja quais funcionam e quais não - e então fale sobre por que eles funcionam e outros não.
  • A massa funciona muito bem (e então você nem precisa de papel alumínio e clipes - você pode apenas prender fios na massa, embora reconheça que pareça uma bomba!).
  • Você pode até pegar um pedaço de papel e sombrear em áreas com um lápis (não precisa ser superescuro, mas hachurado é bom) e prendê-los.
  • Você pode anexar uma pinça de crocodilo a um item de metal realmente grande, como a borda de um quadro branco, e fazer chaves gigantes.
  • Uma experiência para tentar é fazer com que uma pessoa menor segure uma pinça de crocodilo presa a um dos fios e, em seguida, peça a uma pessoa maior para apertar a mão ou dar um tapinha na pessoa menor e ver se isso registra. Em seguida, tente novamente com uma pessoa maior segurando-o e uma menor tocando-os.

Apenas certifique-se de que, após cada alteração do que está anexado ao Arduino, você reinicie o Arduino, seja pressionando o botão "reset" ou reconectando a conexão USB (e, em seguida, execute novamente o código python, pois provavelmente irá travar), para recalibrar os sensores.

Pode-se discutir a capacidade elétrica e a detecção capacitiva.

Recomendado: