Tabla de contenido:

Lámpara DIY IoT para automatización del hogar -- Tutorial ESP8266: 13 pasos (con imágenes)
Lámpara DIY IoT para automatización del hogar -- Tutorial ESP8266: 13 pasos (con imágenes)

Video: Lámpara DIY IoT para automatización del hogar -- Tutorial ESP8266: 13 pasos (con imágenes)

Video: Lámpara DIY IoT para automatización del hogar -- Tutorial ESP8266: 13 pasos (con imágenes)
Video: ¿Cómo automatizar tu habitación con arduino? | Parte final | iOS y Android | Domótica y IoT 2024, Noviembre
Anonim
Image
Image
Lámpara DIY IoT para automatización del hogar || Tutorial ESP8266
Lámpara DIY IoT para automatización del hogar || Tutorial ESP8266

En este tutorial vamos a hacer una lámpara inteligente conectada a Internet. ¡Esto profundizará en Internet de las cosas y abrirá un mundo de automatización del hogar!

La lámpara está conectada a WiFi y construida para tener un protocolo de mensaje abierto. ¡Esto significa que puede seleccionar el modo de control que desee! Se puede controlar a través de un navegador web, aplicaciones de automatización del hogar, asistentes inteligentes como Alexa o Google Assistant, ¡y mucho más!

Como beneficio adicional, esta lámpara va junto con una aplicación para controlar el proyecto. Aquí puede seleccionar diferentes modos de color, fundir entre colores RGB y configurar temporizadores.

La lámpara consta de una placa LED y una placa de control. La placa de LED utiliza tres tipos diferentes de LED para un total de cinco canales de LED. Esto es RGB junto con blanco cálido y frío. Debido a que todos estos canales se pueden configurar individualmente, ¡tiene un total de 112,3 combinaciones de peta!

¡Empecemos!

[Reproduce el video]

Paso 1: Piezas y herramientas

Piezas y herramientas
Piezas y herramientas

Partes

  • Wemos D1 Mini
  • 15 x LED 5050 blanco cálido
  • 15 x LED 5050 blanco frío
  • 18 x LED RGB 5050
  • 6 resistencias 1206 de 300 ohmios
  • 42 x 150 ohmios 1206 resistencias
  • 5 resistencias de 1k ohmios
  • 5 x NTR4501NT1G

    MOSFET

  • Regulador de voltaje lineal, 5V
  • tarjeta de circuito impreso

    Descargue los archivos gerber en el paso del circuito para hacer sus propios PCB

  • Fuente de alimentación 12V 2A

Instrumentos

  • Soldador

    • Estaño para soldar
    • Flujo de soldadura líquido
  • Cinta adhesiva
  • Cinta de dos lados
  • impresora 3d
  • Pelacables

Paso 2: el plan

El plan
El plan

El proyecto completo consta de cuatro partes principales:

  1. Circuito

    El circuito se realiza en una placa de circuito impreso. El circuito completo constará de más de 100 componentes individuales. ¡Es un gran alivio no cablear todos a mano en una placa perfilada

  2. Código Arduino

    Estoy usando el Wemos D1 Mini que usa un ESP8266 como microcontrolador conectado a WiFi. El código iniciará un servidor en el D1. Cuando visite la dirección de este servidor, el D1 interpretará esto como comandos diferentes. El microcontrolador luego actúa sobre este comando para configurar las luces en consecuencia

  3. Control remoto

    • Hice una aplicación solo para este proyecto para que sea lo más fácil posible controlar la lámpara a tu gusto
    • La lámpara inteligente realmente puede ser controlada por cualquier cosa capaz de enviar una solicitud http GET. Esto significa que la lámpara acepta comandos de casi una variedad ilimitada de dispositivos.
  4. Impresión 3d

    Esta lámpara inteligente merece un estuche atractivo. Y como tantos proyectos en los que necesitas un estuche genial, ¡la impresión 3D viene al rescate

Paso 3: circuito

Circuito
Circuito
Circuito
Circuito
Circuito
Circuito

Pedí mis PCB en jlcpcb.com. Tiempo completo de divulgación: también patrocinaron este proyecto.

El PCB consta de dos partes. Tiene la placa LED y la placa de control. La PCB se puede separar para luego conectar estas dos partes mediante un cable flexible. Esto es necesario tanto para mantener delgada la lámpara impresa en 3D como para inclinar la placa LED para distribuir la luz de manera uniforme a través de la habitación del agujero.

La placa de control alberga el microcontrolador D1 junto con cinco MOSFET para atenuar los LED y un regulador de voltaje para darle al microcontrolador un suave 5V.

La placa de LED tiene cinco canales de LED en tres tipos diferentes de LED. Debido a que utilizamos una fuente de alimentación de 12 V, los LED se configuran como tres LED en serie con una resistencia y luego se repiten 16 veces en paralelo.

Un LED blanco normal generalmente dibuja 3.3 V. En un segmento de la placa, tres de estos LED están en serie, lo que significa que la caída de voltaje se agrega al circuito. Tres LED que consumen 3,3 V cada uno significa que un segmento de LED consume 9,9 V. El circuito se alimenta con 12 V, por lo que deja 2,1 V.

Si el segmento solo consistiera en los tres LED, obtendrían más voltaje del que disipan. Esto no es bueno para los LED y puede dañarlos rápidamente. Es por eso que cada segmento también tiene una resistencia en serie con los tres LED. Esta resistencia está ahí para dejar caer los 2.1 V restantes en la unión en serie.

Entonces, si cada segmento representa 12 V, eso significa que cada uno de los segmentos está conectado entre sí en paralelo. Cuando los circuitos están conectados en paralelo, todos obtienen el mismo voltaje y la corriente se agrega. La corriente en una conexión en serie es siempre la misma.

Un LED normal consume 20 mA de corriente. Esto significa que un segmento, que consta de tres LED y una resistencia en serie, seguirá consumiendo 20 mA. Cuando conectamos varios segmentos en paralelo, sumamos la corriente. Si corta seis LED de la tira, tiene dos de estos segmentos en paralelo. Lo que significa que su circuito total todavía consume 12 V, pero consumen 40 mA de corriente.

Paso 4: LED de soldadura

LED de soldadura
LED de soldadura
LED de soldadura
LED de soldadura
LED de soldadura
LED de soldadura

Después de probar algunas cosas, descubrí que la cinta de enmascarar simple es la más efectiva y flexible para evitar que la PCB se mueva.

Para piezas con múltiples pines, como los 6 pines en un LED 5050, empiezo colocando soldadura en una de las almohadillas de PCB. Entonces solo es cuestión de mantener esta soldadura fundida con el soldador mientras desliza el componente en su lugar con un par de pinzas.

Ahora las otras almohadillas se pueden unir fácilmente con un poco de soldadura. Sin embargo, para acelerar este trabajo, sugiero que recoja un poco de fundente de soldadura líquida. Realmente no puedo recomendar estas cosas lo suficiente.

Aplica un poco del fundente a las almohadillas de soldadura, luego derrite un poco de soldadura en la punta de tu soldador. Ahora es solo cuestión de llevar la soldadura fundida a las almohadillas y todo fluye en su lugar. Agradable y sencillo.

Cuando se trata de resistencias y otros componentes de dos almohadillas, realmente no se necesita flujo de soldadura. Aplique soldadura a una de las almohadillas y coloque la resistencia en su lugar. Ahora simplemente derrita un poco de soldadura en la almohadilla número dos. Pan comido.

Eche un vistazo a la quinta imagen de este paso. Preste atención a la orientación de los LED. Los LED de color blanco cálido y frío tienen su muesca orientada en la esquina superior derecha. Los LED RGB tienen su muesca en la esquina inferior izquierda. Este es un error de diseño de mi parte, porque no pude encontrar la hoja de datos de los LED RGB utilizados en este proyecto. ¡Oh bien, vive y aprende y todo eso!

Paso 5: tablero de control de soldadura

Tablero de control de soldadura
Tablero de control de soldadura
Tablero de control de soldadura
Tablero de control de soldadura
Tablero de control de soldadura
Tablero de control de soldadura
Tablero de control de soldadura
Tablero de control de soldadura

Después de terminar el maratón de la placa LED, la placa de control es muy fácil de soldar. Coloqué los cinco MOSFET y las resistencias de fuente de puerta correspondientes, antes de pasar al regulador de voltaje.

El regulador de voltaje tiene espacios opcionales para suavizar los condensadores. Mientras los soldaba en esta imagen terminé quitándolos porque en realidad no eran necesarios.

El truco para obtener un tablero de control delgado es colocar los encabezados de los pines que sobresalen de la parte superior a la inferior. Una vez que los pasadores estén en su lugar, la longitud no utilizada se puede cortar desde la parte posterior junto con el plástico negro. Esto hace que el lado inferior sea completamente liso.

Con todos los componentes en su lugar, es hora de unir las dos placas. Simplemente corté y pele seis cables pequeños de 2,5 pulgadas (7 cm) y conecté los dos PCB.

Paso 6: Configuración de WiFi

Configuración de WiFi
Configuración de WiFi
Configuración de WiFi
Configuración de WiFi

Hay seis líneas simples en el código que necesita cambiar.

  1. ssid, línea 3

    El nombre de su enrutador. Asegúrese de que el caso de la letra sea correcto al escribir esto

  2. wifiPass, línea 4

    La contraseña de su enrutador. Nuevamente, ¡preste atención a la carcasa

  3. ip, línea 8

    La dirección IP estática de su lámpara inteligente. Elegí una dirección IP aleatoria en mi red e intenté hacer ping en la ventana de comandos. Si no hay respuesta de la dirección, puede asumir que está disponible

  4. puerta de enlace, línea 9

    Esta será la puerta de enlace de su enrutador. Abra una ventana de comandos y escriba "ipconfig". La puerta de enlace y la subred están rodeadas con un círculo rojo en la imagen

  5. subred, línea 10

    Al igual que con la puerta de enlace, esta información está encerrada en un círculo en la imagen para este paso

  6. timeZone, línea 15

    La zona horaria en la que se encuentra. Cámbielo si desea utilizar las funciones de temporizador integradas para encender y apagar las luces en momentos específicos. La variable es un simple más o menos GMT

Paso 7: Código del microcontrolador

Código del microcontrolador
Código del microcontrolador
Código del microcontrolador
Código del microcontrolador
Código del microcontrolador
Código del microcontrolador
Código del microcontrolador
Código del microcontrolador

Después de cambiar todas las configuraciones relevantes en el paso anterior, ¡finalmente es hora de cargar el código en el Wemos D1 Mini!

El código arduino requiere algunas bibliotecas y dependencias. Primero siga esta guía de sparkfun si nunca ha cargado código desde arduino IDE a un ESP8266.

Ahora descargue la biblioteca Time y la biblioteca TimeAlarms. Descomprímalos y cópielos en la carpeta de la biblioteca arduino en su computadora. Al igual que instalar cualquier otra biblioteca arduino.

Preste atención a la configuración de carga en la imagen de este paso. Seleccione la misma configuración, excepto el puerto com. Este será cualquier puerto com al que tenga su microcontrolador conectado en su computadora.

Cuando se cargue el código, abra el terminal en serie y verá un mensaje de, con suerte, ¡conexión exitosa! Ahora puede abrir su navegador y visitar la dirección IP estática que guardó en el microcontrolador. ¡Felicitaciones, acaba de crear su propio servidor y está alojando una página web en él!

Paso 8: Protocolo de mensaje abierto

Protocolo de mensaje abierto
Protocolo de mensaje abierto
Protocolo de mensaje abierto
Protocolo de mensaje abierto
Protocolo de mensaje abierto
Protocolo de mensaje abierto
Protocolo de mensaje abierto
Protocolo de mensaje abierto

Cuando controle la lámpara inteligente con la aplicación, todos los mensajes se manejarán automáticamente. Aquí hay una lista de los mensajes que acepta la lámpara, si desea construir su propio control remoto. He usado una dirección IP de ejemplo para ilustrar cómo usar los comandos.

  • 192.168.0.200/&&R=1023G=0512B=0034C=0500W=0500

    • Establece las luces rojas en el valor máximo, las luces verdes en la mitad del valor y las luces azules en 34. Las luces blancas fría y cálida apenas se encienden
    • Al ingresar valores, puede elegir entre 0 y 1023. Escriba siempre los valores de luz como cuatro dígitos en la URL
  • 192.168.0.200/&&B=0800

    Establece las luces azules en el valor 800 mientras apaga simultáneamente todas las demás luces

  • 192.168.0.200/LED=OFF

    Apaga todas las luces completamente

  • 192.168.0.200/LED=FADE

    Comienza a desvanecerse lentamente entre todos los colores RGB posibles. ¡Perfecto para el ambiente

  • 192.168.0.200/NOTIFYR=1023-G=0512-B=0000

    Parpadea el color dado dos veces para indicar una notificación entrante. Perfecto si desea, por ejemplo, crear un programa en su computadora para que la lámpara parpadee en rojo cada vez que reciba un nuevo correo electrónico

  • 192.168.0.200/DST=1

    • Ajusta el reloj al horario de verano. Agrega una hora al reloj
    • / DST = 0 use esto para retroceder desde el horario de verano, elimina una hora del reloj si el horario de verano está activo
  • 192.168.0.200/TIMER1H=06M=30R=1023G=0512B=0034C=0000W=0000

    Guarda el estado del temporizador 1. Este temporizador activará los valores RGB dados a las 06:30 de la mañana

  • 192.168.0.200/TIMER1H=99

    Configure la hora del temporizador en 99 para desactivar el temporizador. Los valores RGB aún se almacenan, pero el temporizador no enciende las luces cuando la hora está configurada en 99

  • La lámpara tiene cuatro temporizadores individuales. Cambie "TIMER1" por "TIMER2", "TIMER3" o "TIMER4" para ajustar uno de los otros temporizadores incorporados.

Estos son los comandos integrados actualmente. ¡Deje un comentario si tiene alguna idea interesante para crear nuevos comandos en el código arduino o en la aplicación remota!

Paso 9: control remoto

Control remoto
Control remoto
Control remoto
Control remoto
Control remoto
Control remoto
Control remoto
Control remoto

Haga clic aquí para descargar la aplicación. La configuración es muy fácil, solo ingrese la dirección IP de su lámpara inteligente y seleccione si desea controlar solo los LED RGB o RGB + LED blancos cálidos y fríos.

Como se explicó en el paso anterior, ahora sabe qué protocolo de mensajes está usando la aplicación. Está enviando una solicitud http GET con las URL. Esto significa que también puede crear su propio circuito de microcontrolador y seguir utilizando esta aplicación para controlar las funciones que desarrolla por su cuenta.

Debido a que realmente hemos investigado en profundidad el protocolo de mensajes, también puede controlar la lámpara inteligente mediante cualquier dispositivo capaz de enviar una solicitud http GET. Esto significa cualquier navegador en un teléfono o computadora, o dispositivos domésticos inteligentes o asistentes como Alexa o el Asistente de Google.

Tasker es una aplicación que básicamente te permite crear condiciones para controlar casi cualquier cosa. Lo usé para encender la lámpara inteligente con el color de una notificación cuando la recibo en mi teléfono. También configuré Tasker para que encienda las luces en blanco completo, cuando el teléfono se conecte al WiFi de mi casa después de las 16:00 en un día laborable. Eso significa que las luces se encienden automáticamente cuando llego a casa de la escuela. ¡Es genial volver a casa con las luces encendidas automáticamente!

Paso 10: Impresión 3D

Impresión 3d
Impresión 3d

La carcasa de la lámpara en sí se puede imprimir casi por completo sin soportes. Las únicas partes que realmente necesitan soporte son las clavijas diseñadas para acoplarse con la PCB. Por lo tanto, hice que el stl estuviera disponible con y sin una pequeña estructura de soporte solo para estas clavijas. La ventaja de utilizar este soporte personalizado es que la impresión es mucho más rápida. Y solo obtenemos soporte de impresión en las partes que realmente lo necesitan.

Puede descargar los archivos.stl aquí

Paso 11: júntelo todo

Reunirlo todo
Reunirlo todo
Reunirlo todo
Reunirlo todo
Reunirlo todo
Reunirlo todo

Después de la impresión 3D, comience quitando el soporte de impresión. Los cables de alimentación entran en canales separados y se unen. Este nudo creará un alivio de tensión evitando que los cables se rompan de la PCB. Suelde los cables de alimentación en la parte posterior de la PCB y asegúrese de obtener la polaridad correcta.

La PCB de control se fija luego con un trozo de cinta para mantenerla alineada dentro de la caja. La PCB LED se puede colocar simplemente en su lugar, donde queda plana contra la carcasa por sí sola.

Paso 12: colgar la lámpara

Colgando la Lámpara
Colgando la Lámpara
Colgando la Lámpara
Colgando la Lámpara
Colgando la Lámpara
Colgando la Lámpara

Hay muchas opciones para colgar esta lámpara en la pared. Debido a que podría actualizar continuamente el código para mejorar la lámpara, quería una forma de quitar la lámpara de vez en cuando. Puedes usar pegamento termofusible, pero te recomiendo un poco de cinta adhesiva de doble cara. Es mejor usar la cinta de doble cara gruesa y espumosa, ya que sostiene la lámpara mejor contra una pared con textura.

Paso 13: terminado

Finalizado
Finalizado
Finalizado
Finalizado
Finalizado
Finalizado

Con la lámpara en la pared y lista para aceptar órdenes, ¡eso significa que ha terminado!

El panel LED tiene un ángulo que dispersa la luz de manera uniforme en la habitación. Es una buena adición a cualquier espacio de trabajo y la capacidad de integración con la automatización del hogar es una gran ventaja. Me gusta mucho la posibilidad de establecer colores RGB, así como ajustar los balances de blancos entre luz fría y cálida. Se ve elegante y es una gran ayuda para configurar las luces ambientales o de trabajo, para adaptarse a cualquier necesidad de iluminación que tenga en este momento.

¡Felicitaciones, ahora ha dado un gran salto en el mundo de la IoT y la automatización del hogar!