Plataformas IOT de gran escala
Es muy probable que conozca las marcas Amazon, Google, Microsoft y Apple, obviando esta última que tiene un ecosistema privado y sustituyéndola por IBM que es una pionera en todo lo relacionado con conectividad y computación vamos a ver cómo estas grandes compañías implementan soluciones IOT en forma de plataformas con las que intentan facilitarte el acceso y el uso de la tecnología IOT y el acceso a la escala.
AWS IOT (Amazon Web Services IOT)
El corazón de las ofertas de IoT de Amazon es AWS IoT Core, construido en torno a un servicio de suscripción de intermediario de mensajes que admite HTTP 1.1, WebSockets y MQTT versión 3.1.1 con autentificación mutua X.509, cifrado y privilegios granulares. El intermediario es front-ended por la puerta de enlace del dispositivo, la cual gestiona las conexiones de los dispositivos activos y maneja la semántica del protocolo. Amazon afirma que la puerta de enlace puede escalar automáticamente para admitir más de mil millones de dispositivos. Junto a estas características, se encuentra el Registro, que asigna una identidad única para cada dispositivo y rastrea los metadatos estos, como los atributos y cualidades, y, de manera opcional, los dispositivos virtuales (sombras del dispositivo).
Panel de AWS IOT Core
AWS IoT es independiente del hardware, por lo que AWS IoT SDK proporciona herramientas para soportar casi todos los dispositivos de punto final que desee utilizar. Hay SDK para Android, Arduino Yún, C y C ++ integrados, iOS, Java, JavaScript y Python, e incluyen bibliotecas de código abierto, guías para desarrolladores, código de muestra y guías de portabilidad. La característica final que completa AWS IoT Core es el Motor de Reglas que analiza los mensajes entrantes, los transforma según sea necesario y, en función de las reglas que defina, los envía a un servicio o dispositivo. Los servicios incluyen todos los endpoints del servicio Amazon AWS, incluyendo AWS Lambda (alojamiento de código en la nube), Amazon Kinesis (manejo y análisis de big data en tiempo real), Amazon S3 (almacenamiento de objetos a gran escala), Amazon Machine Learning, Amazon DynamoDB (un servicio de base de datos NoSQL), Amazon CloudWatch (supervisión en la nube de AWS), Amazon Elasticsearch Service con Kibana incorporada, y Amazon Simple Notification Service. Con esta colección de herramientas y servicios puede construir sistemas IoT a escala global.
Azure IOT Hub
Microsoft describe Azure IoT como "una solución totalmente gestionada de SaaS (software como servicio) que facilita la conexión, el monitoreo y la administración de sus activos de IoT a escala". Azure IoT proporciona dos tipos de bibliotecas de software (disponibles en versiones .NET, C, Java, Node.js y Python): bibliotecas de dispositivos para crear aplicaciones en dispositivos de punto final, y bibliotecas de servicios para administrar un concentrador de Azure IoT, enviar mensajes, programar trabajos y enviar actualizaciones a sus dispositivos IoT.
Arquitectura de Microsoft Azure IoT
Microsoft ha abierto el código de gran parte de su tecnología de IoT y su repositorio GitHub, la cual es una excelente forma de familiarizarse con el cómo y el porqué de Azure IoT. Desde la opción para elegir el nivel correcto de IoT Hub para su solución: Azure IoT Hub ofrece dos niveles, básico y estándar, que difieren en la cantidad de funciones que admiten. Si su solución de IoT se basa en recopilar datos de dispositivos y analizarlos centralmente, es probable que el nivel básico sea adecuado para usted. Si quiere utilizar configuraciones más avanzadas para controlar los dispositivos IoT de forma remota o distribuir algunas de sus cargas de trabajo en los dispositivos, debería considerar el nivel estándar. Cada nivel de IoT Hub está disponible en tres tamaños, en función de la cantidad de datos que pueden procesar en un día determinado. Estos tamaños se identifican numéricamente como 1, 2 y 3. Por ejemplo, cada unidad de un hub de IoT de nivel 1 puede manejar 400 mil mensajes por día, mientras que una unidad de nivel 3 puede manejar 300 millones. Conceptos importantes en Azure IoT Hub son los de Device Twins y IoT Edge Module Twins, que son documentos que describen los dispositivos finales reales y los módulos Edge. Estos gemelos viven en el IoT Hub y reportan la información del estado actual, como las capacidades y condiciones disponibles, y sincronizan el estado de los flujos de trabajo de larga ejecución entre las aplicaciones del dispositivo y las aplicaciones de backend (consulte los dispositivos y módulos gemelos en los artículos de Microsoft Azure Docs). El Protocolo de Puerta de Enlace de IoT incluye un registro de identidad que almacena toda la información sobre los dispositivos que forman parte de la configuración de IoT. Los clientes controlan su estado de activos para ver si los dispositivos están conectados o desconectados de la red, junto con la última actividad conocida de los dispositivos.
GOOGLE CLOUD
Dado el alcance global de Google, no es sorprendente que ofrezcan una solución IoT de escala empresarial. Además, dada la enorme gama de servicios en la nube de la compañía, hay prácticamente todo lo que necesita para cualquier implementación de IoT, incluidos almacenamiento, big data, análisis y aprendizaje automático. Arquitectura Cloud IoT Core de Google.IoT, Internet de las cosas, Google El intermediario de mensajes Cloud Sub/Pub que soporta conexiones MQTT y HTTP es fundamental para Cloud IoT Core de Google. Los datos recopilados a través del intermediario son agregados y enviados a los servicios de análisis de datos de Google Cloud. Los dispositivos endpoint compatibles pueden ser casi cualquier cosa que se le ocurra, y Google se ha asociado con una gran cantidad de fabricantes de dispositivos, incluidos Intel, Arm, Marvell y Allwinner, y desarrolladores de aplicaciones como Bright Wolf, Losant y Afero. Cloud IoT Core incluye el Administrador de Dispositivos que maneja la configuración del dispositivo endpoint y la autenticación del dispositivo. Puede acceder al Administrador de Dispositivos a través de su consola basada en la web o programáticamente a través de una API. Protocol Bridge proporciona la interfaz de comunicaciones del dispositivo, así como el manejo del equilibrio de carga. Las bibliotecas del cliente están disponibles para Go, Java (Android), .NET, JavaScript, Objective-C (iOS), PHP, Python y Ruby. Los servicios Downstream incluyen análisis, Google Cloud Pub/Sub, Dataflow, Bigtable, BigQuery y aprendizaje automático.
Watson IoT (IBM CLOUD)
La plataforma Watson IoT de IBM para IBM Cloud incluye aplicaciones directamente conectadas, dispositivos endpoint que admiten protocolos estándar de la industria, puertas de enlace, administración de dispositivos e integraciones de servicios externos que le dan la capacidad de recopilar y almacenar datos de IoT en tiempo real y realizar análisis a pedido. Arquitectura de Watson IoT de IBM.IoT, Internet de las cosas, IBM Watson Las aplicaciones se pueden conectar directamente a la Plataforma de Watson IoT a través de la API HTTP REST usando claves y tokens de API, o vinculando la aplicación directamente. De manera alternativa, como con los dispositivos endpoint de IoT directamente conectados, MQTT se puede usar como método de conexión. Las puertas de enlace de Watson IoT se conectan a la plataforma de IoT de Watson utilizando protocolos de mensajería MQTT o HTTP, e IBM proporciona bibliotecas de cliente compatibles para C++, C#, Embedded C, Java, Mbed C++, Node.js, Node-RED y Python. Edge Analytics traslada el proceso de activación de reglas de análisis de la nube a una puerta de enlace habilitada para análisis de vanguardia. La plataforma de Watson IoT maneja la administración de datos que incluye una función de dispositivos gemelos y otra de activos gemelos. La primera, le permite aprovechar la recopilación, transformación y normalización de diferentes formatos de datos del dispositivo en un único modelo lógico. La segunda, la de activos gemelos, le permite agrupar diferentes dispositivos para crear un Thing, que es una estructura de datos de mayor valor basada en activos, y las cuales puede agrupar para crear nuevas. Una aplicación puede interactuar con el modelo lógico, independientemente del formato de datos que utilizan los dispositivos individuales o Things. La plataforma de Watson IoT le permite agregar datos de IoT seleccionados a una blockchain segura y privada para que pueda compartir datos con los socios comerciales específicos involucrados en una transacción. Watson IoT filtra los eventos del dispositivo y envía solo los datos requeridos al contrato de blockchain, y puede traducir los datos existentes del dispositivo de uno o más tipos de dispositivos al formato que necesitan las APIs de contrato de blockchain.