Olá galera to querendo construir uma bateria eletrônica mais só que com piezo elétrico e Arduíno, para que o computador receba o sinal midi para que eu possa utilizar o programa ableton live.
Programa que converte o sinal do Arduíno em midi.
http://projectgus.github.io/hairless-midiserial/

O MEU PROBLEMA É:
o código do Arduíno para que possa enviar sinal midi para esse programa  ou qualquer outro sinal para que ele entenda com os piezos, e o circuito de como monta o piezo com os resistores etc... caso alguém possa me da essa grande ajuda ficarei muito grato mesmo!

To querendo utilizar 6 piezos, para fazer 6 pad's.

Lembrando meu Arduíno eh o mega 2560 com 15 entradas analógicas.  

vi no lab de garagem esse comentário aqui com um cara fez eh mais ou menos isso que quero fazer

O circuito que fiz foi esse aqui mais só que eu to me batendo para criar o código midi que o programa reconheça alguém poderia disponibilizar esse código????????

Exibições: 4088

As respostas para este tópico estão encerradas.

Respostas a este tópico

Bom dia Matheus!

Fui eu quem fez o teste acima citado. Funciona!! Estava um pouco parado nesse projeto mas estou voltando agora para completar minha bateria!

Vou encontrar aqui esse fonte e te mando!!

Olá amigo iae encontrou alguma coisa sobre midi esse esquema ae. 

eu conseguir aqui um código mais só que quando eu bato no piezo ele tem horas que da notas diferentes notas midi's de cada maneira que eu bato nele ele envia uma nota diferente queria que ele me desse notas uniforme

sim amigo o caso eh que nao achei ainda um código pois muita gente ja postou que consegui fazer eu queria saber se alguém poderia disponibilizar esse código.

Caro, acho que o caminho é o seguinte

Montar um cabo para conectar o Arduino a seu instrumento e fazer o teste de envio de mensagens, isso você encontra aqui:

http://www.instructables.com/id/Send-and-Receive-MIDI-with-Arduino/...

Pelas telas que colocou vai conectar o Arduino na porta serial  ao seu computador, No caso o proprio Arduino se comunica via USB ja que a bilbioteca MIDI envia as mensagens via serial.

Faça essa etapa primeiro. Depois faça a aquisição dos sinais analógicos. E condicione o nível lido a uma mensagem.

Se puder me informar o programa que está usando, posso tentar fazer os testes e lhe enviar mais orientações e códigos.

Veja também:

http://playground.arduino.cc/Main/MIDILibrary 

GALERA TO TENDO UM GRANDE PROBLEMA AQUI POIS QUANDO EU BATO NO NO PIEZO DE UMA MANEIRA ELE TOCA UMA NOTA E QUANDO EU BATO DE OUTRA MANEIRA ELE TOCA OUTRA DIFERENTE QUERIA QUE ELE SEMPRE TOCASSE DA MESMA FORMA A NOTA MIDI :/ ALGUEM ME AJUDA ????

É que o que vc quer sai fora do padrão do que os outros estão fazendo.

Leia o link abaixo:

https://pt.wikipedia.org/wiki/Piezoeletricidade

O que o Marco falou acima está certo. Explicando bem claramente, basicamente o piezo funciona assim: quando ele sofre uma deformação (batida) gera energia, o mesmo ocorre ao inverso, se for aplicada determinada tensão ele sofre um deformação, razão pela qual o que você está utilizando serve tanto como “microfone” quanto como “alto-falante”.

Ou seja, você está querendo uma leitura do toque e não de intensidade e você está lendo a intensidade da deformação. O correto é esse mesmo ler a intensidade da deformação que vai gerar uma tensão diferente de acordo com a batida que você der. Quando você utiliza um tambor o som será diferente se bater com força ou com menos força.

Mas o que você está querendo é apenas ler a batida e não a intensidade então deve mudar ou o circuito porque não sei como o seu está e/ou o programa para que ele não leia a intensidade e sim a simples batida gerando um toque pré-determinado. Seria como saber que uma chave de pressão foi acionada. Bem simples.

Faça o programa para ler como se fosse uma chave liga desliga (on off) que vai funcionar de acordo com o que quer.

eu alterei aqui o codigo do programa coloquei algum If's para que lesse cada condição ta funcional agora o peoblema eh o computador interpreta a condição tipo em cada condição ele digitar uma letra no teclado executa esse comando=mapear minha duvida agora eh só esse aqui  http://labdegaragem.com/forum/topics/comando-que-execute-uma-letra-...

a linha de codigo do novo projete eh essa aqui 


const int firstSensor = 0; // declara que cada sensor é ligado ao analógico pinos 0-4 
const int secondSensor = 1;
const int thirdSensor = 2;
const int fourthSensor = 3;
const int fifthSensor = 4;

int sensorReading1 = 0; // primeira leitura do sensor analógico 
int sensorReading2 = 0; // segunda leitura do sensor analógico 
int sensorReading3 = 0; // e assim por diante ...
int sensorReading4 = 0;
int sensorReading5 = 0;
int inByte = 0; // byte de série entrada

const int threshold = 600; // limite constante dos sensores de detonação

void setup()
{
// Inicia porta serial a 9600 bps:
Serial.begin(9600);
}

void loop()
{
// Obtém o byte de entrada:
inByte = Serial.read();

sensorReading1 = analogRead(firstSensor); // lê o sensor 
if (sensorReading1 >= threshold) // se a leitura for maior que o limite

Serial.println("k"); // print letra designada
}

sensorReading2 = analogRead(secondSensor);
if (sensorReading2 >= threshold) 
{
Serial.println("b");
}

sensorReading3 = analogRead(thirdSensor); 
if (sensorReading3 >= threshold) 
{
Serial.println("s");
}

sensorReading4 = analogRead(fourthSensor); 
if (sensorReading4 >= threshold) 
{
Serial.println("c");
}

sensorReading5 = analogRead(fifthSensor); 
if (sensorReading5 >= threshold)
{
Serial.println("h");
}
}

RSS

© 2024   Criado por Marcelo Rodrigues.   Ativado por

Badges  |  Relatar um incidente  |  Termos de serviço