Boa tarde pessoal,
estou tentando montar uma bateria eletrônica usando o Arduino e cristais piezoelétricos como pad.
Acontece que estou tendo problemas para usar um HEF4067BP como multiplexador, pois parece que os canais estão se misturando.
int limite=570;
void setup() {
pinMode(2, OUTPUT);
pinMode(3, OUTPUT);
pinMode(4, OUTPUT);
pinMode(5, OUTPUT);
Serial.begin(9600);
}
void loop() {
digitalWrite(2, LOW);
digitalWrite(3, LOW);
digitalWrite(4, LOW);
digitalWrite(5, LOW);
leitura(1);
digitalWrite(2, HIGH);
digitalWrite(3, LOW);
digitalWrite(4, LOW);
digitalWrite(5, LOW);
leitura(2);
}
void leitura(int porta){
valorSensor = analogRead(A0);
if (valorSensor > limite){
Serial.print(porta);
Serial.print(":");
Serial.println(valorSensor);
}
}
Neste exemplo, quando bato no piezo 1, a saída é algo como:
1:580
1:800
1:1023
2:580
1:720
Ou seja, parece que o sinal gerado pelo piezo 1 aparece na porta do piezo 2 também.
Alguém tem a solução?
Tags:
Os piezos soltam tensao positiva e negativa. Um pulso positivo seguido de um negativo (ou vice versa...) Sera que o problema nao eh esse ?
O CI fica doido qdo recebe o negativo e afeta a referencia.
Se for tente nao ligar assim tao direto. Coloque um resistor em serie, pode ser 1K e diodos de protecao.
Pode ser no pino do integrado. 1 Diodo para GND e outro para VCC. De forma que se o sinal cair abaixo de -0,7 um diodo conduz e se for acima de vcc+0,7 o outro conduz.
Mas nunca montei um circuito desses... eh apenas um palpite.
É mais ou menos isso que iria sugerir quando dei F5 para ver se já não o haviam respondido:
"Eu nunca trabalhei com piezos nesse tipo de aplicação, mas eu acho que a tensão reversa do piezo esteja interferindo na leitura. É uma hipótese.
Tente colocar um diodo invertido ( com a faixa cinza voltada para o piezo) entre cada piezo e o terra, pode ser que resolva.
Abraço."
Agora já é quase certeza este ser o problema.
Abraço.
Aqui tem um projeto parecido: http://hacknmod.com/hack/diy-midi-drums-using-an-arduino/
Acho que isso pode ajudar:
O meu tio, ele fez uma bateria em tamanho real ( bateria eletrônica), e foi com esse mesmo esquema
Fazendo direto com as portas do Arduino, funciona perfeitamente. O problema só acontece quando uso o HEF4067BP, pois precisarei de muito mais do que 5 portas analógicas.
Tentei fazer a montagem com diodos, como sugerido, (não são zener. Retirei de uma sucata) e resistores, mas mesmo assim o negócio parece estar conduzindo em todas as portas.
Vou tentar usar outro CI para afastar a hipótese de ser ele o problema.
Acho que resolvi!!!
Segui a dica do Eduardo e do Victor de usar o diodo em cada pino do integrado, mas, o que realmente estava interferindo no circuito e causando toda aquela bagunça era a alimentação.
Eu estava usando o 5V do Arduino. Foi só passar para o pino Vin (ou o 3V) que simplesmente funcionou.
Agora fica a dúvida (ainda estou pesquisando no tio Google). Porque essa maluquice usando o 5V?
Abaixo a imagem de como ficou o esquema:
Bem-vindo a
Laboratorio de Garagem (arduino, eletrônica, robotica, hacking)
© 2024 Criado por Marcelo Rodrigues. Ativado por