Tu primer proyecto IoT Cloud (I): Tutorial para solución E2E con ESP32 y AWS IoTIsmael Rihawi 11 septiembre, 2020 En un anterior post a comienzos de verano exploramos en profundidad el catálogo de servicios disponibles en Amazon Web Services para la implementación de soluciones profesionales que permitan unir recursos de dispositivos inteligentes con capacidades de múltiple propósito de la nube. Sentadas las bases teóricas, es turno de pasar a la acción: he aquí un tutorial paso a paso para la creación desde cero de un proyecto IoT basado en la conexión e interacción entre un microcontrolador ESP32 y el Hub de componentes asociados en la nube de AWS IoT. Con la intención de facilitar la comprensión didáctica, el proyecto tendrá por finalidad simbólica el registro estadístico de profesionales a un evento tecnológico de vanguardia, discerniendo si cada persona de a pie acude en calidad de asistente regular, patrocinador o ponente. Lo prometido es deuda, ¡manos a la obra! Visión global técnica de la solución La propuesta plantea abordar todos los pasos necesarios para una comunicación bidireccional entre componente IoT físico y AWS IoT: registro del thing, incluyendo gestión de certificados y políticas, programación de lógica de publicación y suscripción básica a topics para mensajería segura a través del protocolo MQTT. Posteriormente llevaremos a cabo el despliegue de una plantilla predefinida existente en AWS Serverless Application Repository (SAR), añadiendo dicha conexión e interacción entre entidad local e infraestructura Cloud. El flujo de trabajo completo que incorpora la aplicación SAR incluye: Configuración de AWS IoT Rule para el reenvío o suscripción de los mensajes emitidos por el microcontrolador a una función AWS Lambda que permita actualizar una tabla en el servicio autogestionado de bases de datos NoSQL Amazon DynamoDB.Endpoint REST que acepta peticiones de servicio POST mediante Amazon API Gateway, invocando una función AWS Lambda que publique mensajes personalizados en la propia pantalla del dispositivo. Figura 1. Herramientas y tecnologías implicadas en solución IoT Cloud ¿Qué se requiere para la Prueba de Concepto? De cara a la realización de la PoC, asegúrate de contar con lo siguiente: Cuenta de AWS, resultando más que suficiente para nuestras pretensiones de proyecto la capa de 12 meses de uso gratuito (Free Tier) de los servicios involucrados, no esperando sobrepasar las limitaciones de uso de los mismos. Puede hacer uso del siguiente enlace para proceder a un nuevo registro, así como entrar al detalle de las condiciones de uso de los servicios de la capa gratuita de AWS desde este otro link.Una conexión WiFi estable.Descarga e instalación de la versión más reciente del entorno de programación Arduino IDE, necesario para programar microcontroladores que nos permitan recoger datos de la sensórica integrada para su envío, persistencia y procesamiento en la nube.Disponer de un módulo de la familia ESP32 compatible con Arduino, atendiendo a este listado oficial de placas admitidas. ESP32 ESP32 es la denominación de familia de chips SoC («System on Chip«) que salió al mercado en 2016 de la mano de Espressif (de ahí su nombre) y TSMC. Evolución natural del SoC ESP8266, representan un diseño ideal para soluciones IoT al integrar un procesador de doble núcleo de 32 bits (ampliable a 240 MHz), conectividad WiFi y Bluetooth 4.0, encriptación por hardware, múltiples sensores ambientales, táctiles y posicionales, y una enorme comunidad a sus espaldas desarrollando firmwares, herramientas y documentación para popularizar su uso. En nuestro caso, recurriremos para la prueba de concepto al kit de desarrollo integrado M5Stack Fire, el cual incluye: SoC ESP32, pantalla LCD a color, botones frontales programables, altavoz integrado, zócalo para tarjetas micro SD y capacidad de expansión de múltiples módulos funcionales magnéticamente. Video 1. Spot promocional oficial del kit de desarrollo y prototipado ESP32 M5Stack Hitos para alcanzar la cima Con el fin de establecer una composición de lugar para orientarnos en caso de pérdida, nuestra solución comprenderá los siguientes objetivos: Registro de nuevo tipo de dispositivo virtual AWS IoT («thing«), certificados y políticas de seguridad; definición de plantillas de cosas o thing types, thing groups y billing groups (opcional).Instalación y configuración de placa ESP32 y librerías de soporte de protocolo de comunidad M2M MQTT y serialización de mensajes en formato JSON en Arduino IDE.Inclusión de certificados, implementación y flashing de código en SoC ESP32 para registro de paridad y operabilidad sobre AWS IoT Core y resto de servicios Cloud.Despliegue personalizado de aplicación AWS SAR para creación de Backend Serverless de envío, recepción y procesamiento en streaming de topics.Validación de workflow de solución IoT Cloud. Este artículo es el primero de una serie de 3 capítulos, cuyo enfoque se centrará en completar los tres primeros pasos descritos anteriormente, reservando los dos últimos para la tercera parte de la función. La misión es clara: aportar un valor diferencial a partir de la captura de información del entorno que requiere de suplir carencias y aprovechar oportunidades gracias al Internet de las Cosas. ¿Te animas? Just do IoT! Todos los post de esta serie: Tu primer proyecto IoT Cloud (I): Tutorial para solución E2E con ESP32 y AWS IoT Tu primer proyecto IoT Cloud (II): Registro en AWS IoT y puesta a punto de M5Stack Tu primer proyecto IoT Cloud (III y fin): Procesamiento en streaming y validación final Para mantenerte al día con el área de Internet of Things de Telefónica visita nuestra página web o síguenos en Twitter, LinkedIn y YouTube. La flota de vehículos de recogida de residuos se suma a la “RevolucIOTn”Cloud computing: una tecnología de almacenamiento con tendencia al crecimiento
Marina Salmerón Uribes AI of Things en el deporte Hace unas semanas, Carolina Marín, la joven deportista española se convirtió, por sexta vez consecutiva en campeona europea de bádminton. Título que suma a su grandísimo palmarés tras ser...
Víctor Vallejo Carballo AI of Things (V): Recomendación y optimización de contenido publicitario en pantallas inteligentes Conoce los beneficios que tecnologías como las pantallas inteligentes y el Big Data ofrecen al sector de la publicidad exterior
Santiago Morante La Inteligencia Artificial en las películas de ciencia ficción: un patrón recurrente de fascinación y terror Así retrata Hollywood los avances en Inteligencia Artificial: descubre qué es el "patrón R.U.R" y por qué lo aplican muchas películas de ciencia ficción
Paloma Recuero de los Santos Cómo interpretar la matriz de confusión: ejemplo práctico La matriz de confusión es una herramienta muy útil para valorar cómo de bueno es un modelo clasificación basado en aprendizaje automático. En particular, sirve para mostrar de forma...
Paloma Recuero de los Santos Tipos de aprendizaje en Machine Learning: supervisado y no supervisado El machine Learning o aprendizaje automático consiste básicamente en automatizar, mediante distintos algoritmos, la identificación de patrones o tendencias que se “esconden” en los datos. Por ello, resulta muy...
AI of Things GOOD TECH TIMES: Reinventando el turismo. Claves para acelerar la recuperación. FORMATO: Charla de 30 minutos + Q&A de 10 minutosCUÁNDO: 16 de junio, 16:00 h (CET)CÓMO: Inscripción gratuita en eventbrite SOBRE QUÉ: La digitalización es una pieza clave en el plan...