lunes, 30 de noviembre de 2009

Comparador de LDR

Muy buenas a todos y todas!!!

Después de hacer algunas pruebas con el microcontrolador 16f628A y los LDR, he llegado a la conclusión de que la mejor manera de hacer una comparación entre dos LDR o al menos la que me ha funcionado a mi es la siguiente configuración con la que solo con unos condensadores cerámicos extra que hacen que señal no tenga tanto "ruido":


Para probar este circuito podemos hacer un programa en PBP con el que encender y apagar led con 2 sensores LDR conectados en los puertos B1 y B2.


led    var  Portb.0 ; // Llamamos led  al puerto B2
ldr1   var  Portb.1  ; // Llamamos ldr1 al puerto B0
ldr2   var  Portb.2  ; // Llamamos ldr2 al puerto B1
b0     var BYTE          
b1     var BYTE
b2     var BYTE

Inicio:

  POT ldr1, 255, b0            
  POT ldr2, 255, b1

  if b0 = b1 then ledon ; // Si b0 es = a b1 ir a ledon
  if b0 > b1 then apaga ; // Si b0 es mayor que b1 ir a apaga
  if b1 > b0 then apaga ; // Si b1 es mayor que b0 ir a apaga

ledon:                     
  high led ;Enciende el led
  goto inicio ; // Vuelve al inicio

apaga:
  b2 = b0 - b1 ; // Compara b0 y b1 y le da el valor a b2
  b2 = b1 - b0 ; // Compara b1 y b0 y le da el valor a b2

  if b2 > 15 then ledoff ; // Si la diferencia entre b0 y b1 es decir b2 es mayo de 15 va a ledoff
  goto ledon

ledoff:
  low led ; // Apaga el puerto B2 (led apagado)
  goto inicio ; // Vuelve al inicio

end ; // Fin del programa

Bueno espero que a la gente como yo, un recién llegado a esto de los microcontroladores, esta información les pueda hacer un poco más sencilla la implementación de sensores LDR con los microcontroladores PIC!

Saludos a todos y todas!!!

Los siguientes enlaces sobre microcontroladores te pueden interesar:

No hay comentarios :

Publicar un comentario