Índice:
- Etapa 1: Sensores
- Etapa 2: montagem pull-up
- Etapa 3: codificar o Arduino
- Etapa 4: comunicação serial com o Arduino Raspberry
- Etapa 5: Patch PureData recebido
- Etapa 6: Desenvolvimento PureData
Vídeo: Interface digital musical: 6 etapas (com imagens)
2024 Autor: John Day | [email protected]. Última modificação: 2024-01-30 11:39
Sejam bem vindos, Eu gostaria de mostrar a vocês minha própria Interface Digital Musical. Eu fiz isso durante a minha graduação em som técnico, estes são os meus trabalhos de pesquisa. Para começar, perguntei-me como posso compor música sem DAW, com materiais reciclados e possibilidade de tocar sozinho.
Neste instrutível, vou ensiná-lo a usar a comunicação serial para enviar / receber informações de sensores (analógicos e digitais) do Arduino para o Raspberry pi para o software puredata para acionar um som.
Os materiais necessários são:
x1 framboesa PI3
x1 Boîter de proteção PI3
x1 Micro SD (32G)
x1 Arduino UNO
x1 Sensor IR Sharp GP2Y0E02B
x1 breadbord
Medidor de teste de placa x1 (0,2)
x28 Resistência 10MΩ
Resistência x2 1,8kΩ
x1 Resistência 10kΩ
Terminal x20 macho / fêmea
Porta-solda x1
x1 bobina de estanho (1 metro)
Ferro de solda x1
x25 Flexibles Straps Macho / Macho
Etapa 1: Sensores
Usei 4 piezoelétricos vindos do controle remoto "Guitar Hero" Harmonix XBOX 360. Usei um botão liga / desliga porque o interruptor magnético do pedal jam pedal guitar hero remoto estava desligado.
Usei um sensor infravermelho Sharp GP2Y0E02B. Para todos esses sensores, fiz a montagem pull-up para uma operação eficaz …
Assim, empiricamente encontrei o valor de resistência para sensor de botão e sensor de IR. Porém testei o piezoelétrico para saber a escala completa deste, e fixei o valor da resistência necessária e aplicada para os 4 sensores analógicos.
Etapa 2: montagem pull-up
Depois de testar o piezoelétrico com gerador de tensão, fixei o valor da resistência em 7MΩ.
O pull-up do conjunto de resistência do botão foi de 10 kΩ.
Para o sensor IR, usei duas resistências de 1, 8kΩ entre, respectivamente, a tensão de alimentação e SDA (dados) e SCL (relógio).
Tenha cuidado porque esses valores de resistência são para RTX Arduino UNO; algo para saber sobre a entrada de impedância do Arduino: 10MΩ.
Você pode ver a montagem pull-up na última imagem desta etapa; Fixei alças piezoelétricas em 0 1 2 3 pinos no UNO, alça de botão em 2 pinos digitais mas comunico o valor em 6 pinos em UNO e alça de sensor IR em 4 5 pinos em UNO, todas entradas analógicas do Arduino Uno.
Etapa 3: codificar o Arduino
Para garantir que a operação fosse eficaz, testei enviar / receber informações dos sensores para o Arduino.
Eu coloquei os arquivos na descrição, mas você pode encontrá-los na seção de exemplos da programação do Arduino Genuino, exceto o sensor IR porque não está completo, alterei algumas informações na seção "definir" como "deslocamento" e alterei o cálculo de medição para regular em variações de distância. Você provavelmente já viu "Wire" no código do sensor IR. Na verdade usei o protocolo I2C para me comunicar. Convido você a conhecer o protocolo I2C, muito interessante, você pode usar este para transmitir em tempo real todos os sensores digitais que quiser.
Etapa 4: comunicação serial com o Arduino Raspberry
Sim: D
Como você pode ver na primeira foto, o link Arduino-Raspberry é um plug USB.
Encontrei uma maneira de receber informações dos sensores diretamente pelo PureData Extented que está instalado no Raspberry PI. Por que PureData Extended? Porque a versão Vanilla não usa a mesma biblioteca que um aplicativo no ambiente Raspbian.
Portanto, inicie o StandardFirmata no Arduino Genuino para corrigir as variações de E / S e de valor da maneira certa!
Para recuperar as informações dos valores no Raspberry PI, existem 2 protocolos: Firmata e Msg.
Escolhi o Firmata por um motivo, era mais simples obter informações no PureData via patch Pduino, um ambiente.
Convido você a descobrir Msg se você usar o protocolo OSC.
Etapa 5: Patch PureData recebido
De fato, depois de semanas codificando no Genuino, consegui receber todas as informações do meu sensor em uma página, o que permitiu ver variações em tempo real graças ao Pduino, um patch no Puredata, seção librairies extra.
A partir desta etapa, não tocamos mais no código do Arduino. As informações do valor são legíveis.
Como observei no passo 3, recebi informações do botão digital em 6 pinos analógicos, foi simples de ver o efetivo funcionamento da comunicação. Tudo em uma linha.
Etapa 6: Desenvolvimento PureData
PureData é uma linguagem específica e você deve gastar seu tempo livre para ter sucesso fazendo um belo patchwork.
Parte do patch PureData estará disponível no GitHub.
Espero que o que escrevi aqui o tenha ajudado a começar seu próprio projeto próximo ao meu.
Recomendado:
Introdução à interface do sensor I2C ?? - Interface do seu MMA8451 usando ESP32s: 8 etapas
Introdução à interface do sensor I2C ?? - Faça a interface do seu MMA8451 usando ESP32s: neste tutorial, você aprenderá tudo sobre como iniciar, conectar e fazer com que o dispositivo I2C (acelerômetro) funcione com o controlador (Arduino, ESP32, ESP8266, ESP12 NodeMCU)
Botão de interface de interface - Noções básicas do Arduino: 3 etapas
Botão de interface - Arduino Básico: O botão de pressão é um componente que conecta dois pontos em um circuito quando você o pressiona. Quando o botão de pressão está aberto (não pressionado), não há conexão entre as duas pernas do botão de pressão, então o pino é conectado a 5 volts (através do pull-up resi
Gesture Hawk: robô controlado por gestos manuais usando interface baseada em processamento de imagens: 13 etapas (com imagens)
Gesture Hawk: Robô controlado por gestos manuais usando uma interface baseada em processamento de imagem: Gesture Hawk foi apresentado no TechEvince 4.0 como uma interface homem-máquina baseada em processamento de imagem simples. Sua utilidade reside no fato de que nenhum sensor adicional ou vestível, exceto uma luva, é necessário para controlar o carro robótico que funciona em diferentes
Espectro musical com relógio digital e temperatura: 9 etapas (com imagens)
Espectro musical com relógio digital e temperatura: Estamos aqui novamente com um projeto de que você vai gostar. Se você gosta de ouvir música e curtir a visualidade, este projeto é para você. CLOCK DIGITAL MUSIC SPECTRUM KIT ELETRÔNICO COM INDICADOR DE TEMPERATURA. Este é um kit eletrônico. Quando você completar o pr
Interface musical de botão fácil: 5 etapas (com imagens)
Interface musical de botão fácil: Este projeto modifica um botão fácil de grampos de US $ 5 e um teclado USB barato para que possam ser usados como um dispositivo de entrada para apresentações musicais ao vivo (ou qualquer outra coisa que requeira um botão ou pedal). Permite a criação de botões baratos