Tutorial Arduino : Relé y LDR
En este tutorial vamos a ver como podemos usar un relé con la electrónica necesaria para controlarlo. Ademas veremos el funcionamiento de una resistencia dependiente de la luz, fotoresisténcia o LDR. Finalmente veremos un posible uso en aplicaciones domóticas.
En nuestro caso usaremos el rele G5SB de OMRON que permite accionar la bobina con 5v. Con el podemos controlar cargas de hasta 5A es decir un poco más de 1000 W.
En nuestro caso usaremos el rele G5SB de OMRON que permite accionar la bobina con 5v. Con el podemos controlar cargas de hasta 5A es decir un poco más de 1000 W.

omron_g5sb_5v.pdf | |
File Size: | 52 kb |
File Type: |
Para poder accionar la bobina del relé necesitamos algún tipo de electrónica que nos amplifique la señal de los pines de Arduino ya que no pueden proporcionar la corriente suficiente sin dañarse. Lo mas usual es usar un transistor aunque también venden integrados como el ULN2003 que nos proporciona un array de transistores, en total 7 cargas de hasta 500 mA cada una, con un maximo de 50V.

uln2003a.pdf | |
File Size: | 1251 kb |
File Type: |
El ULN2003 es un array de transistores en configuración open-collector, esto quiere decir que solo fuerzan el 0 es decir la masa, por lo que cuando la entrada sea 0 la salida del integrado no forzara ninguna tensión. De este modo podemos controlar diversas cargas con tensiones diferentes, ya que cada una de ellas conectara la parte de masa a la salida del ULN2003.
El pin de E lo conectamos a Masa. El pin de COM se usa en caso de tener cargas inductivas como Reles o motores, el integrado incluye un diodo de recirculación por lo que si le conectamos la alimentación a COM tendremos nuestro circuito protegido.
El pin de E lo conectamos a Masa. El pin de COM se usa en caso de tener cargas inductivas como Reles o motores, el integrado incluye un diodo de recirculación por lo que si le conectamos la alimentación a COM tendremos nuestro circuito protegido.
Ahora vamos a realizar la conexión del circuito en la protoboard. La bobina del relé la conectamos una parte a 5V y otra a una salida de ULN2003. Por parte del Arduino conectamos el pin E a GND y el pin 11 del Arduino a la entrada que corresponda del rele. Por ejemplo la 1B.
Para accionar el rele simplemente activamos el pin 11 con digitalWrite(1,HIGH). En la imagen el rele no se corresponde con el usado en tanto a pines. Pero simplemente conectamos la parte de Arduino a la de la bobina y la parte de Alterna es la que tiene tres pines. Se recomienda comprobar con un tester la conectividad.
LDR
Ahora vamos a ver el funcionamiento de una fotoresistencia. La que usaremos es la típica que hay en las tiendas de electrónica, que tiene el siguiente datasheet.
![]()
|
Se puede ver en el datasheet como la resistencia se reduce con la luz. Para ello usaremos un divisor de tensión, entre una resistencia fija y la LDR. La resistencia con luz es aproximadamente 3k y en la oscuridad de 15 k. Si queréis comprobarlo lo mejor es que midais la resistencia con un tester con oscuridad y con luz, así elegiremos nuestro valor umbral.
En total oscuridad la resistencia presenta un valor de casi 100 K. Para nuestro circuito usaremos una resistencia de 100K para poder medir bien los cambios de luz de la resistencia. El divisor de tensión de las dos resistencias lo conectaremos al pin analogico 0 de Arduino. En mi caso he usado un potenciometro asi puedo ajustar el valor limite girando el potenciometro. También puedes usar una resistencia fija de 10 k o mas. En realidad como el cambio que mediremos sera muy grande podremos diferenciar perfectamente los cambios de tensión.
Ahora vamos a leer el canal 0 del ADC para ver que tensión es lo que nosotros consideramos luz y lo que consideramos oscuridad. Vemos que cuando esta totalmente a oscuras el valor se satura. Elegiremos como umbral 800.
Control Inteligente de Luz
Ahora con el relé y el sensor de luz vamos a controlar la lampara de forma que cuando se oscurezca la luz se encienda automáticamente y cuando haya suficiente luz se apague automáticamente Para eso usaremos el valor anterior medido para distinguir la frontera entre luz y oscuridad.Además crearemos una histéresis de 200 para evitar que en caso de estar en la frontera umbral se ponga a oscilar y este apagándose y encendiéndose. Esto implica que depende de si venimos de encendido o apagado el valor umbral cambiara. Esto se consigue con un if no excluyente, done hay una zona, la de 600 a 800 que conserva el valor que tiene y no cambia.

rele_ldr.ino | |
File Size: | 0 kb |
File Type: | ino |
A continuación vamos a ver un vídeo de como funciona el código anterior. Veremos que la luz se enciende al apagarse la luz y se apaga al encenderse la luz. Es importante no poner el sensor de luz debajo de la lampara ya que puede darse el caso de que cuando la encendamos nos detecte luz y se apague y así entre en un bucle.