Manufactura industrial
Internet industrial de las cosas | Materiales industriales | Mantenimiento y reparación de equipos | Programación industrial |
home  MfgRobots >> Manufactura industrial >  >> Manufacturing Technology >> Proceso de manufactura

Integración Arduino IoT Cloud y Amazon Alexa: Guía paso a paso

Componentes y suministros

Integración Arduino IoT Cloud y Amazon Alexa: Guía paso a paso
Arduino MKR WiFi 1010
× 1
Integración Arduino IoT Cloud y Amazon Alexa: Guía paso a paso
Arduino MKR ENV Shield
× 1
Integración Arduino IoT Cloud y Amazon Alexa: Guía paso a paso
Protoboard (genérica)
× 1
Integración Arduino IoT Cloud y Amazon Alexa: Guía paso a paso
LED alta luminosidad, blanco
× 1
Integración Arduino IoT Cloud y Amazon Alexa: Guía paso a paso
Cables jumper (genéricos)
× 1
LED RGB cátodo común
× 1
Integración Arduino IoT Cloud y Amazon Alexa: Guía paso a paso
Resistencia 220 ohm
× 1

Aplicaciones y servicios en línea

Integración Arduino IoT Cloud y Amazon Alexa: Guía paso a paso
Arduino Web Editor
Integración Arduino IoT Cloud y Amazon Alexa: Guía paso a paso
Arduino IoT Cloud
Integración Arduino IoT Cloud y Amazon Alexa: Guía paso a paso
Arduino Amazon Alexa Official Arduino Skill

Sobre este proyecto

Introducción: Primeros pasos

En este tutorial vamos a usar Arduino IoT Cloud. Si sois nuevos en Arduino IoT Cloud, os aconsejamos primero echar un vistazo a este proyecto introductorio, que os dará una visión general y os guiará a través del proceso de configuración de vuestra placa compatible, cosas y propiedades de IoT Cloud y os pondrá en marcha.

Parte 1: Arduino IoT Cloud

Desde la página principal de IoT Cloud, crearemos una nueva "cosa" (thing) y le asignaremos un nombre significativo. Luego seleccionaremos la placa que vamos a usar. Si no veis vuestra placa, quizás hayáis saltado el añadir un nuevo Dispositivo siguiendo el procedimiento que comienza tras hacer clic en el botón AÑADIR DISPOSITIVO, bajo la sección Dispositivos.

Una vez hecho, añadiremos tres propiedades a nuestra cosa. Las dos primeras representarán las lámparas, la última la temperatura.

El tipo ColoredLight nos permite controlar una luz RGB, permitiéndonos controlar su brillo y color. Establecedlo como Lectura y Escritura porque necesitaremos controlar su comportamiento usando Alexa.

El tipo DimmedLight es de cierta forma similar al anterior, pero solo nos permite controlar el brillo de una luz.

La última propiedad a añadir es la temperatura. Añadid esta como Solo lectura, ya que solo queremos conocer su valor, no establecerlo. Como tipo podemos usar Sensor de temperatura (Celsius), pero sentíos libres de establecerlo en ºF si os conviene mejor.

Aquí tenéis cómo debería verse la vista Dashboard de vuestra Cosa en este punto:

Integración Arduino IoT Cloud y Amazon Alexa: Guía paso a paso

Al añadir propiedades, aseguraos de usar solo tipos listados bajo la sección Smart Home, de lo contrario no funcionarán con Alexa.

Integración Arduino IoT Cloud y Amazon Alexa: Guía paso a paso

Ahora id al Web Editor haciendo clic en el botón Editar Sketch en la vista de edición de vuestra Cosa.

Parte 2: Arduino Web Editor

En el Web Editor necesitamos añadir algo de código al Sketch generado automáticamente para nosotros.

Como queremos leer algunos datos ambientales (concretamente temperatura, pero sentíos libres de añadir luz, humedad y presión si queréis), importaremos la librería Arduino_MKRENV al principio de nuestro Sketch:

#include <Arduino_MKRENV.h>

Luego definimos algunas constantes para los pines de la placa que se usarán para la luz blanca R,G,B, así el código es más legible:

#define PIN_MEETING_ROOM 5
#define PIN_LOUNGE_AREA_R 2
#define PIN_LOUNGE_AREA_B 3
#define PIN_LOUNGE_AREA_G 4

Ahora en la función setup podemos inicializar el Arduino MKR ENV Shield con:

if (!ENV.begin()) {
Serial.println("Failed to initialize MKR ENV shield!");
while (1);
}

Así, si el shield no está instalado, la ejecución del Sketch se bloqueará.

No necesitamos especificar que pinMode debe ser OUTPUT porque usaremos analogWrite() para establecer la intensidad de nuestro LED blanco o los colores individuales del RGB.

En la función loop vamos a leer la temperatura cada segundo:

temperature = ENV.readTemperature();
delay(1000);

Finalmente es hora de implementar nuestras funciones de devolución de llamada (callback): las que se ejecutarán cada vez que se extraiga un cambio en el valor de una Propiedad desde IoT Cloud.

Tenemos que implementar onMeetingRoomChange y onLoungeAreaChange:

void onMeetingRoomChange() {
uint8_t brightness = map(meetingRoom.getBrightness(), 0, 100, 0, 255);
if (meetingRoom.getSwitch()) {
Serial.println(brightness);
analogWrite(PIN_MEETING_ROOM, brightness);
} else{
analogWrite(PIN_MEETING_ROOM, LOW);
}
}

Con el código anterior primero leemos el valor de brillo desde la nube y lo mapeamos a un valor usable, luego verificamos si el interruptor de la luz está encendido, si lo está podemos encender la luz, usando el brillo leído antes. De lo contrario, apagamos la luz.

El principio de funcionamiento es el mismo para la otra devolución de llamada:

void onLoungeAreaChange() {
uint8_t r, g, b;
loungeArea.getValue().getRGB(r, g, b);
if (loungeArea.getSwitch()) {
Serial.println("R:"+String(r)+" G:"+String(g)+ " B:"+String(b));
analogWrite(PIN_LOUNGE_AREA_R, r);
analogWrite(PIN_LOUNGE_AREA_B, b);
analogWrite(PIN_LOUNGE_AREA_G, g);
} else{
Serial.println("Lamp Off");
analogWrite(PIN_LOUNGE_AREA_R, 0);
analogWrite(PIN_LOUNGE_AREA_B, 0);
analogWrite(PIN_LOUNGE_AREA_G, 0);
}
}

La única diferencia notable es el hecho de que en lugar de solo el brillo, tenemos tres componentes diferentes: son la representación del color RGB de la luz. Por supuesto, podemos definir colores personalizados por nombre en la app de Alexa para no tener que decir manualmente qué cantidades de Rojo, Verde o Azul queremos establecer.

Parte 3: Configuración de la Skill de Amazon Alexa

Ahora necesitaremos la app de Amazon Alexa que se puede descargar desde la Apple App Store o Google Play Store. Una vez instalada, inicia sesión con vuestra cuenta existente o cread una nueva.

Vamos a pasar por los pasos necesarios para instalar la Skill de Arduino Alexa. Seguiremos la secuencia de imágenes a continuación para ver todos los pasos requeridos.

Integración Arduino IoT Cloud y Amazon Alexa: Guía paso a paso
Integración Arduino IoT Cloud y Amazon Alexa: Guía paso a paso
Integración Arduino IoT Cloud y Amazon Alexa: Guía paso a paso
Integración Arduino IoT Cloud y Amazon Alexa: Guía paso a paso
Integración Arduino IoT Cloud y Amazon Alexa: Guía paso a paso
Integración Arduino IoT Cloud y Amazon Alexa: Guía paso a paso
Integración Arduino IoT Cloud y Amazon Alexa: Guía paso a paso
Integración Arduino IoT Cloud y Amazon Alexa: Guía paso a paso
Integración Arduino IoT Cloud y Amazon Alexa: Guía paso a paso

Parte 4: Configuración de dispositivos de Amazon Alexa

Después de esperar un poco, deberíais ver que se han encontrado algunos dispositivos.

Integración Arduino IoT Cloud y Amazon Alexa: Guía paso a paso

Tras pulsar en Elegir dispositivo se os presentará la página de configuración listando todos los dispositivos disponibles (Se nombrarán según cómo nombramos nuestras propiedades en Arduino IoT Cloud).

Integración Arduino IoT Cloud y Amazon Alexa: Guía paso a paso

Elijamos un dispositivo y pulsemos Configurar Dispositivo. Si queréis también podéis añadirlo a un grupo (Así podéis controlar y organizar vuestros dispositivos más fácilmente), de lo contrario saltad esta parte.

Integración Arduino IoT Cloud y Amazon Alexa: Guía paso a paso

Repetid el proceso de Configuración para cada dispositivo que queráis controlar.

Finalmente la vista de dispositivos debería verse así:

Integración Arduino IoT Cloud y Amazon Alexa: Guía paso a paso

¡Ya podemos empezar a preguntar cosas como "Alexa, ¿cuál es la temperatura en la oficina?" o "Alexa, enciende la luz en la sala de reuniones."!

Integración Arduino IoT Cloud y Amazon Alexa: Guía paso a paso

¡Diversión jugando con Alexa e IoT Cloud! Si tenéis preguntas o construís este proyecto, decidnos en los comentarios abajo.

El Equipo Arduino

Código

Arduino

Esquemáticos

Integración Arduino IoT Cloud y Amazon Alexa: Guía paso a paso

Proceso de manufactura

  1. Aprovechando el poder de la nube para IoT: Desbloqueando conectividad fluida e insights de datos
  2. Controla tu Chromecast con Amazon Alexa usando Raspberry Pi y Python
  3. Controla tu Ventilador de Techo con Alexa: Guía Paso a Paso
  4. Monitor de Frecuencia Cardíaca IoT en Tiempo Real con Arduino y MAX30100
  5. Control Remoto IoT de Brazo Robótico Personalizado con Arduino MKR1000 y ThingSpeak
  6. Controla LEDs con Alexa mediante Raspberry Pi – Guía paso a paso fácil
  7. Construye una Torre de Sensores con Arduino Cloud: Temperatura, Movimiento y Gas
  8. Controla tu TV con Alexa mediante Arduino IoT Cloud: Guía Paso a Paso
  9. Sistema de Control de Piscina con Azure IoT: Sensores Inteligentes y Monitorización Remota
  10. Infineon nombrado Advanced Technology Partner por Amazon Web Services
  11. Fog vs. Cloud: Optimizando despliegues IoT para velocidad y escala