Tabla de contenido:

Hogar inteligente de bricolaje con el Asistente de Google y Arduino: 6 pasos
Hogar inteligente de bricolaje con el Asistente de Google y Arduino: 6 pasos

Video: Hogar inteligente de bricolaje con el Asistente de Google y Arduino: 6 pasos

Video: Hogar inteligente de bricolaje con el Asistente de Google y Arduino: 6 pasos
Video: ¿Cómo automatizar tu habitación con arduino? | IoT Esp8266 + Control por voz con Google Assistant 2024, Mes de julio
Anonim
Image
Image
Hogar inteligente de bricolaje con el Asistente de Google y Arduino
Hogar inteligente de bricolaje con el Asistente de Google y Arduino

¿Quién no quiere una casa inteligente? Una de las mejores cosas que puede hacer es encender las luces u otros electrodomésticos de su casa mediante el control por voz. Con la ayuda de la aplicación Google Home y el asistente de Google, esto es realmente pan comido ……

No necesita muchas piezas y es un buen experimento construir este control de voz usted mismo con un altavoz inteligente, una mini computadora Arduino y algunos relés de conmutación. También puede comprar muchas luces inteligentes y enchufes de conexión muy baratos, pero hacerlo usted mismo es mucho más divertido. Describiré paso a paso cómo puedes hacer esto. Necesitará los siguientes componentes:

Suministros

1 Un altavoz inteligente, por ejemplo, un Google Nest Mini.

2 Una computadora Arduino MKR1000 para convertir los comandos de voz en comandos de conmutación.

3 Uno o más relés de conmutación de 5 voltios, uno para cada lámpara que desee controlar.

4 Una fuente de alimentación USB para el Arduino MKR1000 con conector micro-USB.

5 Cableado principal (1,5 mm2) y enchufes para una conexión segura de las luces y otros aparatos.

6 Un teléfono inteligente Android para la aplicación Google Home.

Paso 1: el proceso de comando a través de Internet

El proceso de comando a través de Internet
El proceso de comando a través de Internet

En esta imagen puedes ver paso a paso cómo funciona todo el proceso.

El encendido y apagado a través de los comandos de voz se realiza completamente a través de Internet. Se requieren tres (!) Servicios en la nube para hacer esto … Tienes que crear una cuenta para cada servicio en la nube … ¡Es un poco engorroso pero funciona!

Primero necesitará la aplicación Google Home. Descárguelo de Playstore en su teléfono Android e instale la aplicación. Comprender sus propios comandos de voz con Google Home solo funciona con el idioma inglés. Así que configure el idioma en inglés a través de configuración / más configuraciones / asistente / idiomas y luego elija inglés (Estados Unidos).

El Google Nest Mini escucha el comando de voz, por ejemplo, "Ok Google, enciende la luz número uno". Esta señal de audio analógica se digitaliza y se envía a la nube del Asistente de Google. Luego se reenvía a la nube IFTTT donde se realiza la respuesta. IFTTT (If This Than That o “si haces una cosa pasa otra cosa”) es una especie de estación intermedia que analiza el comando, da la respuesta y reenvía las acciones a la siguiente nube, Adafruit IO. Si el comando se comprende completamente, la respuesta de IFTTT se devolverá digitalmente al Google Nest Mini y allí se convertirá en una señal de audio. Si no se entiende el comando, el Asistente de Google devolverá otra respuesta para dejar en claro que no seguirá ninguna acción de cambio. IFTTT enviará un comando bien entendido al sitio web de Adafruit. Adafruit es un proveedor de productos electrónicos que mantiene un sitio web para almacenar datos de conmutación inteligente. Lo llaman "Feed". IFTTT envía el código asociado con el comando (en nuestro caso "one_on") a este feed. El Arduino MKR1000 está programado para consultar este sitio web con regularidad, leer los datos en la alimentación y luego enciende o apaga el relé de conmutación correspondiente. El feed de Adafruit está protegido por razones de seguridad con un nombre de cuenta y una IOKEY de Adafruit única que solo conoce el propietario de la cuenta.

Paso 2: Programación del Arduino MKR1000

Programando el Arduino MKR1000
Programando el Arduino MKR1000
Programando el Arduino MKR1000
Programando el Arduino MKR1000

Utilice el IDE estándar del sitio web de Arduino. Coloque las siguientes bibliotecas en el IDE (a través de: herramientas / administrar bibliotecas): ArduinoJson y WiFi101.

Si no ha programado previamente el MKR1000, primero debe hacer que esta placa sea accesible en el IDE. Descargue el archivo de placa "Placas Arduino SAMD" a través de las herramientas de menú / placa / administrador de placa, después de lo cual puede seleccionar la placa MKR1000.

El boceto también usa un archivo adicional, arduino_secrets.h.

Este es un archivo de texto que puede crear con el bloc de notas. Este archivo contiene los códigos de acceso utilizados para la red Wi-Fi (SSID de red y contraseña) y los códigos de inicio de sesión de la página web Adafruit IO (nombre de cuenta y código IOKEY). Guarde este archivo en el directorio de la biblioteca arduino en su PC con el nombre arduino_secrets.h en un directorio separado. Antes de guardar, reemplace todo "xxx" con su propia red y datos de Adafruit. Esto debería estar en el archivo arduino_secrets.h:

#define SECRET_SSID “xxx”

#define SECRET_PASS “xxx”

#define IO_USERNAME "xxx"

#define IO_KEY "xxx"

Copie el boceto de Arduino a continuación y cárguelo en el MKR1000 a través del programa IDE de Arduino.

Paso 3: La alimentación de Adafruit

La alimentación de Adafruit
La alimentación de Adafruit

Cree una cuenta en www.io.adafruit.com. Adafruit es un proveedor de productos electrónicos que mantiene un sitio web para almacenar datos de conmutación inteligente.

Cree una fuente ON_OFF en la que los comandos se guardarán más tarde. Adafruit tiene un tutorial extenso que le muestra cómo hacer esto:

learn.adafruit.com/adafruit-io-basics-feeds/creating-a-feed

Es mejor configurar la "alimentación" en el historial de alimentación en APAGADO, no es necesario recordar los comandos de conmutación. (la configuración está en el lado derecho de la página).

Paso 4: la configuración de IFTTT

La configuración de IFTTT
La configuración de IFTTT
La configuración de IFTTT
La configuración de IFTTT
La configuración de IFTTT
La configuración de IFTTT
La configuración de IFTTT
La configuración de IFTTT

Cree una cuenta en www. IFTTT.com. Vaya a "explorar" (arriba a la derecha) y luego elija "hacer sus propios applets desde cero". Haga clic en "ESTO" y busque google. Elija asistente de Google. Luego elija la primera opción "decir una frase simple". Luego ingrese la descripción del comando deseado y la respuesta que se dará.

(En nuestro caso "enciende todas las luces" y "OK. Encenderé todas las luces. ¡Cuidado!"). Luego presione “crear disparador” y en la siguiente pantalla presione “ESO”. Luego elija Adafruit y haga clic en "enviar datos a adafruit IO". La alimentación ON-OFF aparece en el primer campo y luego ingrese el código deseado en el segundo campo (aquí como un ejemplo "todo encendido").

Finalmente, haga clic en "crear acción" y luego en "finalizar".

También puede recibir un mensaje en su teléfono para verificar cada vez que un subprograma ha estado activo, lo cual es útil para solucionar problemas, pero cuando todo está funcionando, puede apagarlo.

Si desea controlar varias luces u otros electrodomésticos, debe crear un subprograma IFTTT para cada comando, y los códigos almacenados en la alimentación de Adafruit deben corresponder a los códigos en el boceto de Arduino.

Paso 5: pruebe las conexiones y el software

Pruebe las conexiones y el software
Pruebe las conexiones y el software

Para probar el sistema, puede realizar una configuración de prueba con LED en lugar de relés:

Paso 6: Conexión de electrodomésticos

Conexión de electrodomésticos
Conexión de electrodomésticos
Conexión de electrodomésticos
Conexión de electrodomésticos

Para cambiar electrodomésticos, debe conectar relés de conmutación a los puertos del Arduino MKR1000 en lugar de a los LED de prueba. Utilice un cableado de 1,5 mm2 en el lado de la alimentación de tensión principal para conectar los aparatos y los contactos del relé de forma segura.

Recomendado: