Lámpara de noche automática usando Arduino
Lámpara nocturna automática con Arduino:código, funcionamiento y simulación
Automatización básicamente significa inventar un método que reduzca o elimine los esfuerzos humanos. En este tutorial, explicaremos cómo automatizar una lámpara de noche a través de una interfaz simple de Arduino y Relay usando el software Proteus. La automatización es la necesidad del momento, ya que la aplicación abarca desde el control de calderas con un simple termostato hasta la gestión de grandes industrias con una gran cantidad de datos de entrada y salida. La complejidad de la automatización puede variar desde un control básico de “encendido/apagado” hasta algoritmos multivariables altamente complejos como el sistema de automatización industrial. Los sistemas de control para fines de automatización pueden ser de bucle abierto o de bucle cerrado, lo que significa que puede funcionar con un solo parámetro de entrada o en respuesta a la salida alimentada como entrada, como en el caso de los sistemas de bucle cerrado.
Como en el caso de toda tecnología, la automatización también tiene sus pros y sus contras:
Ventajas
- Aumento de la productividad
- Calidad predecible (mejora de la calidad)
- Mayor solidez
- Excelente consistencia de salida
- Reducción de gastos de mano de obra humana
- Muy preciso
- Reduce los esfuerzos humanos en trabajos monótonos
Contras
- Susceptible a amenazas de seguridad
- El costo de desarrollo podría exceder la predicción
- Alto costo de instalación
- Causa del desempleo en muchos sectores
Los pros mencionados superan con creces los contras y es por eso que el mundo entero está entrando en la era de la automatización.
En este tutorial estamos tratando de hacer que una lámpara se encienda o se apague sola cuando el circuito detecta un cambio apreciable en la intensidad de la luz y para lograrlo vamos a utilizar las dos herramientas más comunes utilizadas para la automatización, es decir, Arduino y Relay, y la interfaz junto con la simulación se lograría mediante el software Proteus.
- Proyecto relacionado: Circuito de luz de emergencia LED automático
Componentes necesarios
- Arduino UNO
- Relé 5 Voltios
- LDR (resistencia dependiente de la luz)
- Resistencia 10K Ohmios
- Transistor BC547
- Suministro de CC de 5 voltios
- Suministro de CA de 220 voltios
Software necesario
- IDE de Arduino
- Proteo
Diagrama del circuito de la lámpara nocturna automática
- Publicación relacionada: Circuito de luces LED de emergencia:esquema de luces LED LED-716
Descripción del componente
Arduino UNO
Arduino es básicamente una placa de desarrollo que es de código abierto y utiliza principalmente el microcontrolador Microchip ATmega328P y es fabricado por Arduino.cc. La placa viene con un conjunto de pines de entrada/salida que comprende digital y analógico que se puede interconectar con diferentes placas de expansión y circuitos externos. La placa viene con 14 pines digitales junto con 6 pines analógicos que se utilizan o se programan con la ayuda de un IDE (entorno de desarrollo integrado). El programa se graba a través de un cable USB tipo B.
Los métodos de encendido de la placa pueden ser mediante el cable USB o mediante la conexión de un suministro de CC de 12 voltios. Desde el punto de vista del diseño y el funcionamiento, no es muy diferente de sus otros miembros de la familia, a saber, Arduino Nano y Arduino Leonardo.
STK500 sigue siendo el protocolo original para que Uno se comunique. La principal diferencia con respecto a sus predecesores es que no utiliza el FTDI (chip de controlador de USB a serie).
- Publicación relacionada: ¿Qué es Arduino y cómo programarlo?
Retransmisión
El relé es un interruptor electromagnético que se puede operar eléctricamente y se puede hacer para encender y apagar electrodomésticos de CA/CC. Se puede controlar incluso con un voltaje bajo de 5 voltios como la salida proporcionada por los pines de Arduino. Consiste en una bobina con contactos metálicos en un lado (lado de bajo voltaje) que se puede magnetizar y desmagnetizar para abrir o cerrar el circuito conectado en el otro lado (lado de alto voltaje). El lado de alta tensión consta de un conector con 3 enchufes, a saber, común (COM), normalmente cerrado (NC) y normalmente abierto (NO). El relé viene en diferentes clasificaciones como 12 V, 9 V, 5 V y 3 V.
- Publicación relacionada: ¿Cómo probar un relé? Comprobación de SSR y relés de bobina
LDR
LDR (resistencia dependiente de la luz) es un componente de resistencia variable que puede variar su valor de resistencia con el cambio en la intensidad de la luz y funciona según el principio de fotoconductividad. El valor de la resistencia disminuye con el aumento de la intensidad de la luz. Se utiliza en circuitos detectores sensibles a la luz y circuitos de conmutación activados por luz.
LDR se compone de un semiconductor de alta resistencia que tiene una resistencia en mega ohmios en ausencia de luz y varios cientos de ohmios en presencia de luz.
- Publicación relacionada: Sistema de control automático de alumbrado público mediante LDR y transistor BC 547
BC547:transistor NPN
Un transistor es básicamente un dispositivo semiconductor que se emplea para amplificar o cambiar señales electrónicas y potencia. Está hecho de material semiconductor y tiene 3 terminales para conectar con un circuito externo. En este circuito, hemos utilizado BC547, que es un transistor de unión bipolar NPN.
- Proyecto relacionado:Circuito de interruptor sensible al tacto simple con temporizador 555 y transistor BC547
Un pequeño valor de corriente en su terminal base controla un gran valor de corriente en sus terminales de emisor y colector. Se requiere un voltaje de cd fijo en las terminales del transistor para operar en la región deseada de sus curvas características. El transistor, cuando se usa con fines de amplificación, se mantiene polarizado para que esté parcialmente encendido para todas las entradas y la señal de salida amplificada se tome en el emisor. Para aplicaciones de conmutación, el transistor está polarizado para que permanezca completamente encendido si hay señal en el terminal base y se apaga completamente en ausencia de señal base.
- Publicación relacionada: Cómo comprobar un transistor con un multímetro - NPN y PNP - 4 formas
Valoraciones
- VCEO =45 Vcc
- Yoc =100mAdc
- VCBO =50 Vcc
- VEBO =6 Vcc
Descripción del software
Proteo
La suite de diseño Proteus pertenece a la categoría de software propietario que se emplea para realizar la automatización del diseño electrónico. Este software es muy útil para los ingenieros de diseño electrónico y los respectivos técnicos con el fin de crear esquemas e impresiones en formato electrónico denominado diseño de PCB. El software fue desarrollado en Yorkshire, Inglaterra por Labcenter Electronics Ltd. y viene con soporte en varios idiomas, que son inglés, francés, español y mandarín.
Se actualiza regularmente con nuevas bibliotecas que consisten en componentes avanzados a intervalos regulares y se puede agregar fácilmente a la lista existente de bibliotecas.
Este software es ampliamente utilizado debido a su capacidad para simular circuitos o microcontroladores. La simulación ayuda a comprender el funcionamiento y las pruebas del circuito diseñado sin siquiera hacer uso de los componentes físicos. Su interfaz de usuario también le da una ventaja sobre otro software que hay en el mercado. Hay más de 15 millones de componentes disponibles en la sección de biblioteca para que los usuarios no tengan que perder tiempo creando huellas o componentes.
IDE de Arduino
Arduino IDE es un software que se puede utilizar en varias plataformas. Por lo tanto, es una aplicación multiplataforma y se desarrolló utilizando el lenguaje de programación java. Tiene el propósito principal de escribir el boceto y cargarlo en placas compatibles con Arduino. Los lenguajes admitidos son C y C++, que están un poco modificados y dependen de la biblioteca que se utilice. Se proporcionan varias bibliotecas integradas en el software y otras bibliotecas se pueden descargar de proveedores externos. El IDE utiliza un programa llamado avrdude para convertir el código en un archivo con codificación hexadecimal que se carga en la placa con la ayuda de un programa de carga que viene preinstalado en el firmware de la placa.
Código del proyecto
Explicación del Código
En primer lugar, definimos dos variables globales de tipo entero. Variable entrada analógica se usa para indicar un pin analógico que recibirá el valor analógico del circuito y la segunda variable disparador denota un pin digital que suministrará una salida de disparo de voltaje suficiente.
int analogIN =A3;
int Trigger =12;
La tasa de baudios se establece en 9600 bits/s, lo que representa la tasa de transmisión de datos. La función pinMode() se usa para definir el estado del pin. Aquí configuramos el pin 12 como salida y el pin A3 como entrada. Todas estas declaraciones están escritas en la función void setup() y se ejecutarían solo una vez durante todo el período de ejecución.
anular configuración()
{
Serial.begin(9600);
pinMode(analogIN, INPUT);
pinMode(Disparador, SALIDA);
}
De acuerdo con el diagrama del circuito, tenemos que leer un dato particular que está en forma de valor analógico del pin A3. Para esta tarea específica hemos utilizado la función analogRead() Debido a que la entrada generada por el circuito es un valor analógico, esta es la razón detrás del uso de un pin analógico y una función analógica.
Ahora, obtenemos este valor analógico del pin analógico A3, luego almacenamos su valor en la variable "valor".
Esta variable contendrá un valor entero que estará en el rango de 0 a 1234 y variará según la entrada analógica. Este es el valor ADC de 10 bits ya que Arduino viene con un convertidor ADC de 10 bits.
El valor almacenado en la variable “valor” se usa para ejecutar el operador condicional (if-else). A través de este operador, configuramos el estado del disparador de pin digital como ALTO o BAJO para encender y apagar la lámpara. La principal ventaja de imprimir los datos almacenados en la variable "valor" es que podemos asociar la intensidad de la luz con un valor particular y encender la lámpara a la intensidad de luz deseada.
El código que está presente dentro de la función "void loop()" se ejecutará repetidamente hasta que se encienda el Arduino. Por lo tanto, para asegurarse de que el proyecto esté funcionando en todo momento, debe asegurarse de proporcionar una fuente de alimentación las 24 horas, los 7 días de la semana al Arduino Uno que se usa aquí.
bucle vacío() {
valor int =lecturaanalógica(entradaanalógica);
Serial.println(valor);
si (valor <692)
{
digitalWrite(Activador, ALTO);
Serial.println(“la lámpara está ENCENDIDA”);
}
más {
digitalWrite(Activador, BAJO);
Serial.println(“la lámpara está APAGADA”);
}
}
¿Cómo obtener la ubicación del código en el archivo hexadecimal?
En su IDE de Arduino, haga clic en Archivo>Preferencias y luego en "Mostrar salida detallada" verifique las opciones de compilación y carga y, una vez compilado el código en la ventana a continuación, seleccione y copie la ubicación del archivo hexadecimal y en Proteus haga doble clic en Arduino y pegue la ubicación del archivo en la opción Archivo de programa y haga clic en Aceptar. Ahora su circuito estará listo para la simulación.
- Proyecto electrónico del circuito del interruptor de aplausos con el temporizador 555
Video de simulación
Próximamente
Funcionamiento del circuito de la lámpara de noche
Ahora discutiremos el funcionamiento del circuito, aquí hemos usado un suministro de 5V CC (5V de Arduino) y conectado una resistencia de 10k ohm y un LDR en un circuito divisor de voltaje. El voltaje que se puede tomar a través de la resistencia o el LDR y se alimenta al pin analógico del Arduino, pin A3 en este caso.
Con la ayuda del código mencionado anteriormente, la placa podrá detectar la entrada analógica que se le proporciona. Este valor leído está de acuerdo con la intensidad de la luz que detecta el LDR.
Mientras que podemos verificar el valor que viene en el monitor serial para calibrar el circuito de acuerdo con la intensidad de la luz. Por lo tanto, podemos cambiar la condición en la declaración condicional provista en el código para encender y apagar la lámpara a la intensidad de luz deseada, haciéndola así dinámica.
Ahora, cuando se cumple la declaración condicional, es decir, la intensidad de la luz cae por debajo del valor proporcionado por usted (en forma equivalente a ADC), la placa generará una salida "ALTA" en el pin 12 Por "ALTO" se entiende que produce una salida de 5 V como pin 12.
En este caso, se desarrolla un voltaje suficiente en la base del transistor y el transistor comienza a conducir. Como resultado, la corriente comienza a fluir en las bobinas del relé y se enciende, lo que significa que el terminal NO cambia a un estado activo al que se ha conectado el circuito de la lámpara y, al finalizar el circuito, la lámpara se enciende. ”.
La lámpara se apaga cuando la condición else del código se vuelve verdadera, es decir, la intensidad de la luz aumenta desde el valor de umbral proporcionado por nosotros. Por lo tanto, la salida en el pin 12 se convierte en "BAJO" y, posteriormente, el relé se apaga, lo que apaga la lámpara.
- Proyecto electrónico de control de semáforos con temporizador IC 4017 y 555
Conclusión:
Todos queremos facilitar nuestro estilo de vida, y aquí lo que está haciendo la lámpara de noche automática. Ni siquiera necesita encender o apagar la lámpara de noche. Ya que se enciende y apaga automáticamente según la intensidad de las caídas de luz. Cuando es de día, la lámpara permanece apagada mientras se oscurece sobre el sensor, la lámpara se enciende. El proyecto te ayudará a diseñar el mismo, utilizando componentes electrónicos básicos. También hemos explicado el código para que no te resulte difícil empezar con Arduino.
Proyectos relacionados:
- Sistema automático de riego y riego de plantas:circuito, código e informe del proyecto
- Circuito de alarma de lluvia:proyecto de detector de nieve, agua y lluvia
- Diagrama del circuito del indicador de nivel de agua:dos proyectos simples
- Más proyectos de ingeniería eléctrica y electrónica
Tecnología Industrial
- Cómo los fabricantes utilizan la automatización para gestionar el auge del comercio electrónico
- Hacer Monitor Ambilight usando Arduino
- Voltímetro de bricolaje con Arduino y un teléfono inteligente
- Monitor de frecuencia cardíaca con IoT
- WebServerBlink usando Arduino Uno WiFi
- Juego automatizado de Dino usando arduino
- Radio FM usando Arduino y RDA8057M
- BLUE_P:Escudo de programación inalámbrico Arduino
- Luz controlada por toque usando Arduino
- Seguimiento facial con Arduino
- ¿Cómo funcionan los cambiadores automáticos de herramientas?