[Ajuda] Contador de Objetos com LDR

Desenvolvi um código de um contador onde usei um sensor LDR, um LED e um Display LCD onde funcionaria como um detector de objetos, se algo passasse entre o led e o ldr contaria o objeto e assim indo incrementando a cada vez que fosse detectado o objeto. Está funcionando mas a contagem soma o valor duas vezes e não +1
Ps: os pinos do lcd são estes pois vou usar os outros pra outra coisa…
Segue o código:

#include <LiquidCrystal.h>
LiquidCrystal lcd(22, 23, 24, 25, 26, 27);
int contador = 0;
int valorCalibrado = 236;

void setup()
{
Serial.begin(9600);
lcd.begin(16, 2);
lcd.setCursor(0,0);
lcd.print("Mecatronica");
lcd.setCursor(0,1);
lcd.print("Numb Pecas: ");

}
void loop()
{
if(analogRead(A0) >236) objeto passando entre o LDR e o LED
{
contador++;//Incrementa o contador em 1

Serial.println(contador);
while(analogRead(A0) > 236)
{
}
delay(500);//Aguarda 500 ms.
lcd.setCursor(11,1);
lcd.print(contador++);
}

}

Está incrementando o contador e imprimindo o contador já incrementado, incrementando-o.

contador++;//Incrementa o contador em 1

lcd.print(contador++);

Tira o ++ da linha do lcd.

Nos exemplos de Analog, tem um exemplo de calibration. Pode aproveitá-lo no seu código.

Espero que tenhas tido em atencão o facto que a LDR mede luz... e não radiacão numa gama específica (como fazem os IR) e que por causa disso, alterar as condicões de funcionamento podem deixar o sistema inutilizado.

Há uns anos atrás (tipo uma década) ajudei uns colegas meus num sistema baseado em câmaras que funcionava 1 hora após ser calibrado durante o dia. Quando passamos a testar à noite com luz artificial o sistema funcionava a noite toda... obviamente, era a luz que confundia as câmaras... e nem sequer era preciso variacões de luminosidade fortes.

No teu caso e sem conhecer nada sobre o sistema apenas posso deixar o aviso para teres isso em atencão.

contador++;//Incrementa o contador em 1
Quote
lcd.print(contador++);

Tira o ++ da linha do lcd.

Sim o teu erro é esse.Estas a incrementar a variável para a próxima vez e nao no momento que a imprimes nesta linha lcd.print(contador++); .
Presumo que no primeiro instante ele conte bem e depois passe a contar sempre com mais um resultando em 1,3,5,7...
Sabes porquê?
Procura por precedência de operadores em C.

Hugo, Lago. Vocês estavam certos XD Valeu!

Bubulindo Minha intenção é de fazer uma esteira transportadora que conta as peças conforme elas vão passando entre o LDR e um Laser (que irá estar ligado diretamente apontado para o LDR). Esse é só o começo do programa vocês podem ver porque ainda nem coloquei o motor nele, mas assim que der vou ver se consigo embutir um motor nele, minha intenção é que a esteira pare também quando a peça cortar a luz. ]:smiley:

Obrigado pela ajuda pessoal!

Só te avisei para um possível problema. Que em todo o caso, não será muito difícil de resolver, mas que não deixa de ser chato se acontecer. :wink:

Boa sorte com o projecto.

Bubulindo .. Como o projeto ainda está no protoboard não sei dizer o que pode acontecer, mais ficarei atento, me corrija se eu estiver errado mas eu tenho um Sensor IR aqui e coloquei somente o receptor no lugar do LDR, será que vai ser mais confiável ? Porque o funcionamento está igual.

Obrigado!!

Engro:
Bubulindo .. Como o projeto ainda está no protoboard não sei dizer o que pode acontecer, mais ficarei atento, me corrija se eu estiver errado mas eu tenho um Sensor IR aqui e coloquei somente o receptor no lugar do LDR, será que vai ser mais confiável ? Porque o funcionamento está igual.

Obrigado!!

Qualquer LED (de qualquer tipo) funciona como sensor da mesma maneira se você ligar no lugar do LDR ou do IR (nesse caso claro). Veja só o que postei no meu blog sobre o LED: http://www.realidadedaciencia.blogspot.com.br/

Ou seja, dá para gerar mas também dá para usar como sensor. Boa sorte.

Eu tenho uma dúvida, eu gostaria de trocar o display de lcd do arduino, pois não tenho condições :blush: :blush:
por 2 displays de 7 segmentos, alguem poderia me ajudar ?

E porque e que nao abriste um topico novo para colocares essa duvida??

Por favor, abre um topico novo e respondemos por la... aproveita e coloca mais informacao sobre o que pretendes e mais importantemente, sobre o que ja tens feito.

Boa noite, gostaria de saber se você poderia me ajudar no meu projeto de Automação da Produção, eu e a Fernanda estamos fazendo uma esteira contadora de objetos, mas estamos encontrando dificuldades na programação. Portanto, se puder me ajudar agradeço. Obrigada.