Arduino RGB Night Light
Probablemente todos en la infancia tuvieron un sueño (y no uno). Incluso puedes tratar de recordar el sentimiento que abruma el alma de un niño al cumplir sus sueños o ese brillo distante y familiar en sus ojos ... Cuando era niño, soñaba con tener mi luz nocturna.Ahora estoy estudiando en el cuarto año de BSUIR y cuando nos informaron que el proyecto del curso sobre diseño de circuitos no se puede hacer en papel sino en una pieza de hierro, me di cuenta: la lámpara de noche, que tanto deseaba en la infancia, se puede hacer sola. Y para hacer no solo un objeto que ilumine la habitación en la oscuridad, sino un dispositivo que se pueda controlar fácilmente para cualquier estado de ánimo. Por que no Decidí agregar la capacidad de cambiar los colores usando mis manos: cuanto más se acerca la mano a la luz nocturna, más brillante se ilumina uno de los colores (RGB). Y también me gustaría controlar la luz nocturna usando el control remoto.Admito de inmediato que vi la idea en cxem.net . En resumen, este ejemplo utilizaba una matriz RGB que se controlaba mediante registros de desplazamiento y sensores de distancia ultrasónicos. Pero pensé que la matriz brilla exclusivamente en una dirección, pero quería que la luz nocturna brillara en ambos lados.Sustanciación de los elementos del circuito.
Dirigí mi atención a los microcontroladores Arduino. UNO es una opción bastante adecuada para mi idea, en primer lugar porque es la plataforma más popular y el número de pines no es demasiado grande, a diferencia de Mega, y en segundo lugar, puede conectarle una fuente de alimentación externa, en mi caso es de 12V, a diferencia de Nano tercero ... bueno, creo que puedes concentrarte en estos dos puntos. La plataforma es muy popular en todo el mundo debido a la conveniencia y simplicidad del lenguaje de programación, así como a su arquitectura abierta y código de programa.Se puede encontrar fácilmente más información sobre este foro en Internet, por lo que no sobrecargaré el artículo.Entonces, los requisitos básicos para el sistema. Requerido:- sensores que rastrearán la distancia a la barrera para controlar el sistema;- un sensor para leer señales del control remoto;- LED, que proporcionarán la funcionalidad de iluminación necesaria;- una unidad de control que controlará todo el sistema.
Se requieren sensores de alcance como sensores de distancia para el proyecto, cada uno de los cuales corresponderá a un color específico: rojo, verde, azul. Los sensores de distancia controlarán la distancia de la mano a la lámpara de noche y cuanto más se acerque la mano a un sensor específico, más se quemará el color correspondiente a este telémetro. Por el contrario, cuanto más lejos está la mano, menos voltaje se aplica al color correspondiente al sensor.Los telémetros más populares en este momento son Sharp GP2Y0A21YK y HC-SR04. Sharp GP2Y0A21YK es un telémetro infrarrojo. Está equipado con un emisor de infrarrojos y un receptor de infrarrojos: el primero sirve como fuente del haz, cuyo reflejo atrapa al segundo. Al mismo tiempo, los rayos infrarrojos del sensor para el ojo humano son invisibles e inofensivos a esta intensidad.En comparación con el sensor ultrasónico HC-SR04, este sensor tiene ventajas y desventajas. Las ventajas incluyen neutralidad e inocuidad. Y las desventajas son un rango más corto y la dependencia del ruido externo, incluidos algunos tipos de iluminación.
Los telémetros ultrasónicos HC-SR04 se utilizaron como sensores de distancia para el proyecto.El principio de acción de HC-SR04 se basa en el conocido fenómeno de la ecolocalización. Al usarlo, el emisor genera una señal acústica que, reflejada por el obstáculo, regresa al sensor y es registrada por el receptor. Conociendo la velocidad de propagación del ultrasonido en el aire (aproximadamente 340 m / s) y el tiempo de retraso entre la señal emitida y recibida, es fácil calcular la distancia a la barrera acústica.La entrada TRIG está conectada a cualquier pin del microcontrolador. Esta salida requiere una señal digital pulsada con una duración de 10 μs. La señal en el sensor TRIG de entrada envía un paquete de pulsos ultrasónicos. Después de recibir la señal reflejada, el sensor genera una señal de pulso en la salida ECHO, cuya duración es proporcional a la distancia al obstáculo.
Sensor IR Por supuesto, la señal requerida para el control remoto será leída y decodificada desde este sensor. TSOP18 difiere solo en frecuencia. El sensor VS1838B TSOP1838 fue seleccionado para el proyecto.El proyecto se basó en la idea de iluminar la habitación con cualquier color, esto sugiere que se necesitarán 3 colores primarios de los que se obtendrá iluminación: rojo, verde, azul. Por lo tanto, se eligió el modelo SMD 5050RGB LED, que se adaptará perfectamente a la tarea.Dependiendo de la cantidad de voltaje suministrado a cada LED, cambiarán la intensidad de esta iluminación. El LED debe estar conectado a través de una resistencia, de lo contrario corremos el riesgo de estropearlo no solo, sino también Arduino. Se necesita una resistencia para limitar la corriente en el LED a un valor aceptable. El hecho es que la resistencia interna del LED es muy baja y, si no usa una resistencia, pasará una corriente a través del LED que simplemente quemará tanto el LED como el controlador.
Las tiras con LED que se utilizan en el proyecto funcionan con 12V.Debido al hecho de que el voltaje en los LED en el estado "apagado" es de 6V y es necesario regular la fuente de alimentación que excede los 5V, es necesario agregar transistores al circuito en el modo clave. Mi elección recayó en el BC547c.Considere brevemente, para aquellos que lo han olvidado, el principio de funcionamiento del transistor npn. Si no aplica voltaje en absoluto, sino que simplemente toma y cierra las conclusiones de la base y el emisor, incluso si no es corto, pero a través de una resistencia de varios ohmios, resulta que el voltaje del emisor de base es cero. En consecuencia, no hay corriente base. El transistor está cerrado, la corriente del colector es insignificante, solo la misma corriente inicial. En este caso, se dice que el transistor está en un estado de corte. El estado opuesto se llama saturación: cuando el transistor está completamente abierto, de modo que no hay ningún lugar para abrir más. Con tal grado de apertura, la resistencia de la sección del colector-emisor es tan pequeña que es simplemente imposible encender el transistor sin carga en el circuito del colector, se quemará instantáneamente. En este caso, el voltaje residual en el colector puede ser solo 0.3 ... 0.5V.Estos dos estados, saturación y corte, se usan cuando el transistor está en modo clave como un contacto de relé normal. El punto principal de este modo es que una corriente base pequeña controla una corriente de colector grande, que es varias decenas de veces mayor que la corriente base. Se obtiene una gran corriente de colector debido a una fuente de energía externa, pero de todos modos, la ganancia de corriente, como dicen, es obvia. En nuestro caso, el microcircuito, cuyo voltaje de operación es de 5V, incluye 3 tiras con LED que funcionan desde 12V.Calculamos el modo de operación de la cascada de claves. Se requiere calcular el valor de la resistencia en el circuito base para que los LED se enciendan a plena potencia. Una condición necesaria en el cálculo es que la ganancia de corriente es mayor o igual al cociente de dividir la corriente máxima posible del colector por la corriente base mínima posible: por lo
tanto, las tiras pueden tener un voltaje de operación de 220 V y el circuito base puede controlarse desde un microcircuito de 5 V. Si el transistor está diseñado para funcionar con tal voltaje en el colector, los LED se encenderán sin problemas.La caída de voltaje en la unión base-emisor es 0.77V, siempre que la corriente base sea 5mA y la corriente del colector sea 0.1A.El voltaje en la resistencia base será:
De acuerdo con la Ley de Ohm:
De la serie estándar de resistencias, elegimos una resistencia de 8.2 kOhm. El cálculo ya está completo.Quiero llamar su atención sobre un problema que encontré. Al usar la biblioteca IRremote, el Arduino se bloqueó al ajustar el color azul. Después de una búsqueda larga y exhaustiva en Internet, resultó que esta biblioteca usa el temporizador predeterminado 2 para este modelo Arduino. Los temporizadores se utilizan para controlar las salidas PWM.Temporizador 0 (hora del sistema, PWM 5 y 6);Temporizador 1 (PWM 9 y 10);Temporizador 2 (PWM 3 y 11).Inicialmente, usé PWM 11 para ajustar el color azul. Por lo tanto, tenga cuidado al trabajar con PWM, temporizadores y bibliotecas de terceros que puedan usarlos. Es extraño que no se haya dicho nada sobre este matiz en la página principal del github. Si lo desea, puede descomentar la línea con el temporizador 1 y comentar 2.Los elementos de conexión en el tablero se ven así:
Después de probar en el tablero, comenzaron las fases "Colocación de elementos en el tablero" y "Trabajar con un soldador". Después de la primera prueba del tablero terminado, el pensamiento se me viene a la cabeza: algo salió mal. Y luego comienza la fase familiar de "Trabajar con el probador". Sin embargo, los fallos de funcionamiento (varios contactos vecinos se soldaron accidentalmente) se solucionaron rápidamente y aquí está la esperada luz traviesa de los LED.
Además, era solo el caso. Por esta razón, se cortó madera contrachapada con agujeros para nuestros sensores. La cubierta posterior se hizo especialmente extraíble para que pueda disfrutar de la vista desde el interior y, si lo desea, para terminar o rehacer algo. También tiene 2 agujeros para reprogramar el tablero y la alimentación.El cuerpo estaba pegado sobre un adhesivo epoxi de dos componentes. Vale la pena señalar la peculiaridad de este pegamento, para aquellos que no se han encontrado antes. Este compañero se entrega en dos contenedores separados, cuando los contenidos de los cuales se mezclan, se produce una reacción química instantánea. Después de mezclar, debe actuar rápidamente, dentro de 3-4 minutos. Para un uso posterior, debe mezclar una nueva porción. Entonces, si está tratando de repetir esto, mi consejo es que mezcle en pequeñas porciones y actúe muy rápido, no habrá mucho tiempo para pensar. Por lo tanto, vale la pena considerar de antemano cómo y dónde pegar el caso. Y en una sesión esto no funcionará.Para fijar las tiras con LED, se insertó un tubo en la cubierta superior a través del cual todos los cables pasaron perfectamente.
Cuando surgió la pregunta con una pantalla de lámpara, recordé cómo en la infancia hice manualidades con hilo simple, pegamento y un globo, que sirvieron de base. El principio para la pantalla de la lámpara es el mismo, pero envolver un poliedro era más difícil que una pelota. Debido a la presión ejercida por los hilos sobre la estructura, comenzó a disminuir hacia arriba y los hilos comenzaron a caer. Emergencia, con las manos en pegamento, se decidió fortalecer la estructura desde arriba. Y luego el CD vino al rescate. Como resultado, obtuvimos tal luz nocturna:
¿Qué quieres decir como resultado?
¿Qué debo cambiar en el proyecto? Para señalar sensores de distancia TRIG, se puede usar una salida Arduino en lugar de tres. También habría proporcionado un agujero para el sensor de infrarrojos (que olvidé), que, por desgracia, está oculto en el caso de que, por supuesto, no pueda leer las señales del control remoto. Sin embargo, ¿quién dijo que no puede soldar ni perforar nada?
Me gustaría señalar que fue un semestre interesante y una gran oportunidad para intentar hacer algo que no esté en papel, para poder poner otra marca de verificación junto al elemento "sueño de la infancia". Y si le parece que probar algo nuevo es difícil, y no sabe qué hacer primero, no se preocupe. El pensamiento vuela por la mente de muchos: ¿por dónde empezar y cómo se puede hacer esto? En la vida, hay muchas tareas con las que puede confundirse, pero si solo lo intenta, notará que con un brillo en los ojos puede convertir montañas, incluso si tiene que intentar un poco para eso.Enlace al código fuente .Autor del artículo: Anastasia KovshSource: https://habr.com/ru/post/es388573/
All Articles