Go Down

Topic: Que tipos de datos devuelte El transitor LDR (sensor de luz) [RESUELTO] (Read 1 time) previous topic - next topic

carlos_novel_arduino

May 04, 2012, 01:49 pm Last Edit: May 08, 2012, 05:29 pm by carlos_novel_arduino Reason: 1
Hola he visto este proyecto en arduino

http://arduino.cc/es_old/Processing/SensorDeLuzLDR

y es sobre el sensor de luz que tipos de datos devuelve el LDR
lo necesito para poner los " if  " porque al no saber los datos que
me devuelve no puedo declarar las funciones
gracias.

josemanu

Una LDR es un sensor de tipo resistivo (es una resistencia cuyo valor varia en función de la cantidad de luz que incide sobre ella).

Al conectarla a una entrada analógica Arduino capturara valores que variaran entre 0 y 1023.

Aquí tienes un tuto que despejara tus dudas. Si no lo hace dimelo y lo ampliare.

Un saludo.

carlos_novel_arduino


Una LDR es un sensor de tipo resistivo (es una resistencia cuyo valor varia en función de la cantidad de luz que incide sobre ella).

Al conectarla a una entrada analógica Arduino capturara valores que variaran entre 0 y 1023.

Aquí tienes un tuto que despejara tus dudas. Si no lo hace dimelo y lo ampliare.

Un saludo.


Ok gracias lo mirare parece muy completa la informacion de la pagina que me pusiste
respecto a los valores que devuelve 0 - 1023

esto me funcionaria:


void loop(){
if ("Pinsensoranalogico" == 1023 ){
digitalWrite(luzled,HIGH);
}
}

es una parte del codigo fuente...

ionhs

No hay como probarlo por ti mismo para ver si funciona. Encima si pones solo un trozo de código es difícil saber si funcionará bien o no. Lo que he visto es:

Porque le pones comillas a esta variable ? "Pinsensoranalogico"

Si vas a usar un LDR yo primero suelo leer el valor que mide con la luz que hay y lo envio al monitor mediante serial. Una vez que veo el valor uso ese valor para meterlo en el programa. En frio me resulta difícil que te de el 1023 clavado. Por lo que se suele tener que dar un margen por ejemplo :

If (Pinsensoranalogico>1000)

o sino también

If (Pinsensoranalogico>500 && Pinsensoranalogico<700)

nayma

En los ejemplos de arduino, hay alguno para leer los datos analógicos. Piensa que no todos los ldr ofrecen la misma resistencia.

carlos_novel_arduino


No hay como probarlo por ti mismo para ver si funciona. Encima si pones solo un trozo de código es difícil saber si funcionará bien o no. Lo que he visto es:

Porque le pones comillas a esta variable ? "Pinsensoranalogico"

Si vas a usar un LDR yo primero suelo leer el valor que mide con la luz que hay y lo envio al monitor mediante serial. Una vez que veo el valor uso ese valor para meterlo en el programa. En frio me resulta difícil que te de el 1023 clavado. Por lo que se suele tener que dar un margen por ejemplo :

If (Pinsensoranalogico>1000)

o sino también

If (Pinsensoranalogico>500 && Pinsensoranalogico<700)


HOla gracias x las respuestas me estan siendo de mucha utilidad
como puedo hacer esto que dices ?? "  Si vas a usar un LDR yo primero suelo leer el valor que mide con la luz que hay y lo envio al monitor mediante serial  "

ionhs

#6
May 06, 2012, 07:39 pm Last Edit: May 06, 2012, 07:42 pm by ionhs Reason: 1
¿Has mirado y hecho comprendiendo los ejemplos de los tutoriales de Arduino ? http://arduino.cc/es/Tutorial/HomePage

Para hacer el programa que quieres tienes que aprender 2 cosas de Arduino

- Leer las entradas analógicas
- Usar la comunicación serie para enviar datos al PC

Si miras los tutoriales creo que lo comprenderás pero puede que necesites ayuda con el montaje de hardware del LDR. Yo lo suelo colocar junto con otra resistencia para leer la diferencia de tensión. El esquema sería:

5v-------R1=10K ohm-------------------LDR(10K ohm)-------------GND
                                    I
                                    I
                Entrada analógica de arduino

No se exactamente donde tienes el problema o si incluso has empezado a montar y a programar. A groso modo empieza a leer el valor del LDR y envialo por serie al pc. Cuando veas entre que valores anda con luz y sin luz podrás programar las condiciones usando los valores que te han salido por la comunicación serie. Salu2

nayma

habre el entorno de arduino, en ejemplos si  no  me acuerdo mal en analógico debe de haber un ejemplo para leer el sensor analógicamente y mostrartelo por la pantalla.

carlos_novel_arduino

OK alfinal si he logrado leer los datos


void setup(){

Serialbegin(9600);

}

printld(valorldr);

gracias a todos he logrado solucionar el problema  XD

Go Up