Pages: [1]   Go Down
Author Topic: como hacer un sensor con led y fotoresistencia  (Read 938 times)
0 Members and 1 Guest are viewing this topic.
Offline Offline
Newbie
*
Karma: 0
Posts: 7
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Hola, voy comenzando con arduino, pero quiero hacer unos sensores, donde use un led junto a una fotorecistencia y cuando pase un objeto entre ellos me mande una señal para comenzar a contar tiempo y cuando vuelva a pasar por otro sensor igual deje de contar el tiempo. Espero y alguien pueda darme unos tips gracias!!
Logged

Offline Offline
Newbie
*
Karma: 0
Posts: 24
No hay un error mas grande que el de no seguir adelante
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Primero, todo depende de a que distancia quieres que esten el led de la foto-resistencia.

Supongamos que van a estar a unos 2 centimetros de separacion y que metes la foto-resistencia en un tubito a manera que solo la luz que viene del led entre en su campo de deteccion, has un divisor de voltaje, conectas una patilla de la foto-resistencia a positivo, la otra patita a la entrada analogica que quieras, por ejemplo la A0, ahora conecta una resistencia de 10K en el negativo y la otra patita de la resistencia en la misma entrada analogica que conectaste la foto-resistencia. El hardware ya esta listo.

Ahora busca el ejemplo de lectura de entradas analogicas y  ves cuando es el valor con el led encendido y cuanto es el valor con un objeto entre el led y la foto-resistencia, ahora crea una funcion que lea el valor analgico y depende si el valor esta dentro del rango que te dio cuando bloqueaste la luz, haga lo que quieras que haga.
Logged

Familiaridad,... el primer mito de la realidad: "Aquello que mas conoces es lo ultimo que observas"...

Offline Offline
Newbie
*
Karma: 0
Posts: 7
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Hola, gracias por tu respuesta, ya lo hice, y use lasers para tener mayor distancia, este es mi codigo:

Int led=13;
int valor;
float timea;
float timeb;
float timec;
float valorb;
unsigned long time;
  void setup(){
    pinMode(led,OUTPUT);
    Serial.begin(9600);
  }
 
  void loop(){
    valor=analogRead(0);
    if(valor>=511){
         digitalWrite(led,HIGH);
         
    }
   
       if(valor<=200)
        {digitalWrite(led,LOW);
         timea=millis();
     
            }
     valorb=analogRead(1);
     if(valorb<=200)
     {timeb=millis();
       timec=timeb-timea;
       timec=timec;
       Serial.print("tiempo: ");
       Serial.print(timec);
       Serial.print("\n");
     
       
 
     }
 
  }

Logged

Pages: [1]   Go Up
Jump to: