Introducción
Como principiante de la electrónica, seguramente te has preguntado como activar un dispositivo que se conecte a la red eléctrica, sea un motor, una máquina o cualquier cosa que necesite ser conectada a 110 o 220 VAC. Para eso es necesario trabajar con un relé. Un relé es un interruptor que podemos activar mediante una señal eléctrica. En su versión más simple es un pequeño electro-imán que cuando lo excitamos mueve la posición de un contacto eléctrico de conectado a desconectado o viceversa. De esta manera, permite el paso de la corriente a lo que deseamos encender. En este caso trabajaremos con nuestra tarjeta 4 Relay Shield, que consta de 4 relés como salidas y 4 entradas opto acopladas, es decir, que con este shield puedes utilizar como señal de entrada un voltaje más alto (0 a 30VDC) de los que soporta tu tarjeta PICARO directamente (0 a 5VDC), evitando que algunas partes de tu circuito se vean afectadas por corrientes o voltajes excesivos.
Puedes acceder a la información del shield en este link, verás que es muy útil y de gran ayuda. Para probar nuestra tarjeta 4-Relay Shield, vamos a imaginar la entrada de nuestro hogar donde la luz de la fachada de la casa se encienda al detectar que es de noche, de igual manera podemos encenderla o apagar mediante un interruptor. También tendremos un botón que activará el sistema de seguridad de la casa, es decir, si se abre la puerta después de accionar el sistema de seguridad se activará una alarma, para avisar que alguien entro a nuestro hogar. Debes tener cuidado al activar la sirena, ya que al conectarla a los 12VDC produce un sonido muy fuerte que puede lastimar tus oídos, procura probarla estando alejada de ti o con un voltaje menor.
Cuando el relé 1 se activa, da continuidad la ampolleta que se alimenta con 220v, cuando se activa el relé 3 suena la sirena indicando que se infringió el sistema de seguridad.
Pasos a seguir:
Código:
// Optoacopladores en las entradas digitales D4, D5, D6 y D7 int Opto4 = 7; int Opto3 = 6; int Opto2 = 5; int Opto1 = 4; // Las entradas análogas se comportan como salidas digitales A0, A1, A2 y A3 int Relay1 = A0; int Relay2 = A1; int Relay3 = A2; int Relay4 = A3; //Estado de la lectura de los optoacopladores int estado1; int estado2; int estado3; int estado4; int dia; //Variables para comparar int estadoBoton = 0; // Si es 0: Encendido ; Si es 1: Apagado int estadoAnterior = LOW; //almacena el estado anterior del interruptor de luz int botonSeguridad = LOW; // Activa seguridad de casa int puerta = HIGH ; //Sensor magnetico puerta int auxSensor; int auxBoton; int sensorActual; void setup() { // configurando los pines como salidas digitales pinMode(Relay1, OUTPUT); pinMode(Relay2, OUTPUT); pinMode(Relay3, OUTPUT); pinMode(Relay4, OUTPUT); // configurando los pines como entradas digitales pinMode(Opto1, INPUT); pinMode(Opto2, INPUT); pinMode(Opto3, INPUT); pinMode(Opto4, INPUT); pinMode(A5, INPUT); Serial.begin(9600); // Primera Lectura estadoBoton = digitalRead(Opto4); estadoAnterior = estadoBoton; estado3 = analogRead(A5); chequearSensor(estado3); } void loop(){ // Lectura de los optoacopladores estado1 = digitalRead(Opto1); estado2 = digitalRead(Opto2); estado3 = analogRead(A5); estado4 = digitalRead(Opto4); SistemaSeguridad(); //Se llama la funcion de seguridad // lee el valor del estado del boton estadoBoton = digitalRead(Opto4); // lee el estado del interruptor de luz Serial.println(estado3); //Salida del sensor de luz (Solo con proposito para visualizar) chequearSensor(estado3); // Llama a la funcion chequeando el LDR chequearInterruptor(); //Llama a la funcion para chequear el interruptor } void chequearSensor(int x){ if((x <= 350) && (auxSensor == 1)){ // Como el LDR tiene salida analogica, se debe selecciona un ragon para comparar, en este caso es 350 Serial.println("Es de noche"); delay(600); sensorActual = 0; // Se utiliza para saber cuando es de dia o de noche auxSensor = sensorActual; digitalWrite(Relay1, HIGH); // Enciende la LUZ } else if ((x > 350) && (auxSensor == 0)) { Serial.println("Es de dia"); delay(600); sensorActual = 1; // Es de Día auxSensor = sensorActual; digitalWrite(Relay1, LOW); // apaga la LUZ } } void chequearInterruptor(){ if ((estadoBoton == 1) && (auxBoton == 0)) { // Se compara con el estado anterior Serial.println("Apagar"); delay(600); auxBoton = estadoBoton; digitalWrite(Relay1, LOW); // Interruptor Apagado }else if((estadoBoton == 0) && (auxBoton == 1)){ // Se compara con el estado anterior Serial.println("Encender"); delay(600); auxBoton = estadoBoton; digitalWrite(Relay1, HIGH); // Interruptor Encendido } } void SistemaSeguridad(){ botonSeguridad= digitalRead(Opto1); puerta= digitalRead(Opto2); if (botonSeguridad == 1){ // Se desactiva el boton de seguridad Serial.println("Sin Seguridad"); digitalWrite(Relay2, LOW); digitalWrite(3, LOW); digitalWrite(2, HIGH); } if ((botonSeguridad ==0) && (puerta == HIGH)){ // Si el boton de seguridad esta activo y la puerta esta abierta digitalWrite(Relay2, HIGH); // Activa la alarma Serial.println("Puerta abierta"); digitalWrite(3, HIGH); digitalWrite(2, LOW); } else if ((botonSeguridad ==0) && (puerta == LOW)) { digitalWrite(Relay2, LOW); Serial.println("Puerta cerrada"); digitalWrite(3, HIGH); digitalWrite(2, LOW); } }
Demostración
Acá tenemos un vídeo donde podremos observar el funcionamiento de nuestro circuito, como se explicó anteriormente, tenemos un sistema de iluminación automático, que se activa al percibir que es de noche (ausencia de luz). De igual manera, tenemos un interruptor que puede encender o apagar la ampolleta cuando sea presionado y por último, tenemos un sistema de seguridad, que se activa por medio de otro interruptor. Si el sistema está activo y se abre la puerta se activará una Sirena indicando que se infringió el sistema.
¿En busca del Kit PICARO?
Con el PICARO Starter Kit podrás realizar estos ejemplos ¡y mucho más!
Producto Chileno. Encuéntralo en MCI Electronics.
Contacto

Direccion Luis Thayer Ojeda 0115 Of. 1105, Providencia, Santiago, Chile.
Phone: +56 2 2333 9579 / +56 2 2231 9268
Horario Lunes a Viernes de 8:00 a 18:00
Nosotros
En MCI Electronics, estamos aquí para mantener la industria en movimiento. Nuestro objetivo es difundir y hacer accesible el uso de la electrónica a todo aquel que tenga el interés. Para ello nos esforzamos para traer los mejores componentes y módulos de manera que puedas aprender desarrollando tus propios proyectos.
Somos tu aliado en electrónica.