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?

Exibições: 3001

Responder esta

Respostas a este tópico

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.

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:

RSS

© 2024   Criado por Marcelo Rodrigues.   Ativado por

Badges  |  Relatar um incidente  |  Termos de serviço