Pages: [1]   Go Down
Author Topic: Sobre entradas analógicas de Arduino  (Read 904 times)
0 Members and 1 Guest are viewing this topic.
0
Offline Offline
Newbie
*
Karma: 0
Posts: 4
I love Linux
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Un saludo a todos. Por fin esta semana he tenido un ratito para experimentar y me ha dado por hacer una pequeña aplicación que leyese el valor devuelto por una célula LDR (Un sensor de luminosidad cuya resistencia varía en función de la luminosidad que detecte) He conectado el sensor a la placa de arduino y las lecturas que obtengo son super erráticas, es decir, sin cambiar la orientación del sensor ni la luminosidad de la sala en la que estoy obtengo valores de 1024 hasta 0.
En principio pensé que a lo mejor los conversores analógicos digitales del atmega tendrían un periodo de latencia así que puse un delay entre lecturas de 100 milisegundos. Aún así los valores siguen cambiando mucho.
También se me ocurrió mostrar valores medios así que lo que hice fue tomar 4 lecturas consecutivas, hallar su media y mostrar el resultado aproximadamente cada segundos. Y nada.

Uff qué parrafada, jejeje. Bueno mi duda es la siguiente, ¿este comportamiento es normal en este tipo de sensores? ¿hay que inicializar las entradas analógicas de arduino de alguna manera o tienen una cierta latencia?
Logged

Estamos hechos del material de nuestros sueños.

0
Offline Offline
Full Member
***
Karma: 0
Posts: 134
panta rei resist the resistors!
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

hola,
como lo has connectado a Arduino?
has metido un resistor que te haga de "voltage divider"?
el comportamento que descrives parece muy parecido a un setup en el cual metes directamente

5v---> light resistor ---> analog pin de arduino


en vez necesitas meter un resistor que connecte el segundo pie de tu light resistor con Ground (0V)
y tener arduino que mida etre los dos
mas o menos asì

         5v
          |
light resistor ---> analog pin de arduino
                     \---> resistor (10K) --> Ground(0V)

la variacion de valor de esta resistencia cambiarà los valores detectados por tu light resistor.

al principio yo tambien no tenia clarisimo porque esto sucede, tambien a mi me parecia logico detectar una variacion de V a traves de la resistencia...pero no es asì...
son consequencias de la ley de ohm...

una consequencia es que
V (que atraviesa una resistencia) = V_tot * (Resistencia / Resistencia_tot)

esto quiere decir que si tienes una sola resistencia en tu circuito el V que detectarà tu arduino es igual identica a la Vtot (5v) que le pones en el input

pero si ya pones otra resistencia que conduzca a 0V el valor de "Resistencia_tot" serà mas grande y los Volts detectados por Arduino cambiaran

hay que construirse un Voltage divider asì para todos los analogs in...es lo que hace un potenciometro si lo piensas...el potenciometro tiene 3 pies (uno conectado a tu fuente 5V, otro a tierra, y un tercero que te da la variacion de V en entre los otros dos)

pero como no soy un electronico, pero solo un designer smiley-wink
esperamos confirmacion de un experto electronico smiley

bueno espero que esto te ayude...

b.




« Last Edit: March 04, 2006, 08:45:33 pm by beltran » Logged

Forum Administrator
MMX
Offline Offline
Edison Member
*****
Karma: 37
Posts: 1139
hallo kompis
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Hola,

la explicacion de Beltran es muy buena. Debemos de tener siempre a Ohm presente en nuestras oraciones ;-)

Un saludo,

David
Logged

0
Offline Offline
Newbie
*
Karma: 0
Posts: 4
I love Linux
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Ya había tenido en cuenta eso pero aún así sigo obteniendo los valores raros, he cambiado el sensor y no he conseguido lecturas más estables.

Muchas gracias de todos modos  smiley-wink ya les contaré si me entero de qué pasó. jejeje

Un saludo
Goyo.
Logged

Estamos hechos del material de nuestros sueños.

Pages: [1]   Go Up
Jump to: