Como regla general, podemos definir una plataforma como un conjunto de herramientas que permite construir sistemas más complejos. Las plataformas IoT facilitan el desarrollo y la implementación de sistemas IoT, lo que permite a los usuarios finales centrarse en lo que es más importante para ellos: operar su negocio.
Cuando nos referimos a una plataforma, sería algo así como un montón de piezas de Lego, cada una con una forma y un color diferentes, que podemos ensamblar según necesitemos para crear cualquier modelo (virtual).
El principio que subyace a la noción de plataforma es el habitual «no reinventar la rueda» y, en cambio, confiar en la experiencia de otros que ya han construido sistemas similares al que estamos a punto de crear. Este enfoque acelera el tiempo de implementación, evita los errores típicos y, lo que es más importante, permite al usuario/a la empresa centrarse en lo que mejor sabe hacer: su lógica de negocio.
Las plataformas están de moda en muchas áreas, pero en particular, en el mundo del IoT. Según Gartner, estas capas de abstracción, que protegen a los desarrolladores de la complejidad del sistema subyacente, fomentan la adopción generalizada de IoT y Edge Computing, especialmente a medida que las funcionalidades se vuelven más sofisticadas. Por lo tanto, estas plataformas llenan el vacío que ha creado la falta de estándares para la implementación y orquestación de aplicaciones de IoT. Pero, ¿qué piezas necesitamos para nuestro sistema? O, dicho de otro modo, ¿cuáles son los componentes típicos de una plataforma IoT?
El alcance del IoT es muy amplio y abarca entornos tan diversos como los wearables, las ciudades inteligentes y la Industria 4.0. En este artículo nos centraremos en las aplicaciones industriales, donde reside nuestra experiencia, aunque muchos de los elementos que se presentan a continuación también son extensibles a otros entornos como los hogares inteligentes o las ciudades inteligentes.
Cualquier aplicación de IoT podría resumirse como la conexión de activos en campo con aquellos activos en la nube. Los dispositivos en el campo – los nodos de IoT – generalmente son responsables de recopilar los datos necesarios y los activos en la nube son responsables de almacenarlos y facilitar su análisis. La conectividad IoT es la columna vertebral de cualquier aplicación IoT. Recientemente hemos visto cómo la toma de decisiones se está moviendo hacia el Edge, hacia nodos IoT o nodos Edge. Pero a pesar de esto, el cordón umbilical que conecta el Edge con los sistemas centrales sigue siendo primordial para que la aplicación funcione correctamente.
En el nivel jerárquico más bajo de la aplicación tenemos los dispositivos IoT, nodos IoT o nodos Edge, como queramos llamarlos. Estos dispositivos suelen estar conectados a otros dispositivos en el campo, como sensores, actuadores o equipos industriales. Estos equipos industriales proceden de diferentes proveedores, cada uno con su propio hardware y firmware, y hablan protocolos muy diferentes, que pueden ir desde estándares industriales generalizados como Modbus, hasta protocolos más específicos o incluso propietarios. El papel de los conectores para permitir que los nodos entiendan estos protocolos también es clave a la hora de recopilar datos de los equipos.
A medida que las implementaciones de IoT crecen en número y también se dispersan geográficamente, la necesidad de un sistema de gestión centralizado se hace evidente. Esta gestión suele ser manejada por un módulo de gestión de flotas, que proporciona información básica del estado de los dispositivos mostrados y permite realizar actualizaciones de software de forma remota.
Los datos recogidos (a través de los conectores de protocolo mencionados anteriormente) y enviados a la Nube (utilizando la conectividad IoT) suelen ser realizados por una aplicación desplegada en los dispositivos. En Edge Computing, esta aplicación también realizará un procesamiento más complejo dentro de los nodos, es decir, contendrá parte de la lógica de negocio. En cualquier caso, muchas plataformas ya incluyen un entorno integrado para el desarrollo y la depuración de aplicaciones. E incorporan funcionalidades low-code, lo que permite a los usuarios implementar sus sistemas utilizando sencillas interfaces gráficas y arrastrando y soltando elementos, conectándolos entre sí o simplemente seleccionando las opciones de los menús desplegables.
Las aplicaciones que se ejecutan dentro de los dispositivos deben desplegarse de forma remota y segura. Todas las plataformas IoT incluyen un módulo de orquestación de aplicaciones dirigido a enviar aplicaciones a los dispositivos, actualizarlos, obtener información sobre su estado, etc.
En los últimos años hemos visto un cambio hacia un mayor análisis y toma de decisiones en el lado del dispositivo, también conocido como – Edge Computing-, pero a pesar de esto, las bases de datos siguen siendo un elemento central en cualquier aplicación. Podemos tener bases de datos centralizadas en la nube (con sus redundancias) o bases de datos parciales en cada dispositivo que idealmente se sincronizan con las bases de datos centrales.
Los datos brutos tienen una utilidad limitada y no es hasta que los analizamos en detalle que podemos extraer valor de ellos. La mayoría de las plataformas incluyen herramientas de procesamiento y visualización o facilitan la integración con herramientas de terceros. El análisis de datos abarca desde el simple procesamiento de datos hasta los modelos más complejos de inteligencia artificial.
Una vez que los datos han sido procesados, aplicando nuestra propia lógica de negocio para tomar decisiones, necesitamos que esas decisiones se conviertan en acciones. En otras palabras, deben transmitirse aguas abajo, para que los dispositivos participen activamente en la gestión del negocio. Esto no siempre es deseable, pero a veces es interesante que los nodos IoT actúen sobre su entorno, en cuyo caso las plataformas incluyen un módulo que permite enviar estos comandos a los dispositivos.
Cualquier plataforma IoT debe ser robusta operativamente pero, en particular, debe ser robusta en términos de ciberseguridad. Especialmente en el mundo industrial. De hecho, la seguridad es una de las barreras más importantes para la adopción de tecnologías de la información por parte de empresas establecidas con una fuerte herencia de tecnología operativa (OT). Estas características de seguridad incluyen: cifrado de datos, cancelación de puertos, limitación de servicios de red, aplicación de autenticación, etc.
Hay muchos tipos de plataformas y el desglose anterior sólo pretende presentar algunos de los servicios que estas plataformas pueden ofrecer. Al seleccionar una plataforma IoT, es útil distinguir entre plataformas genéricas y productos más específicos.
Las plataformas genéricas son las de proveedores como Azure, AWS o Google, que ofrecen un ecosistema completo de herramientas. Las opciones en estas plataformas son prácticamente infinitas, pero tienden a tener una curva de aprendizaje considerable y no se adaptan a las necesidades específicas de ciertos segmentos de clientes.
En el otro extremo del espectro, podemos encontrar plataformas más específicas, como la plataforma Edge Industrial de Barbara, con capacidades más limitadas, pero adaptadas a verticales específicos, en nuestro caso a sectores como el sector eléctrico, la gestión del agua y los ferrocarriles. Estas plataformas tienden a proporcionar una mejor asistencia al usuario y unos tiempos de desarrollo y despliegue mucho más cortos.
Si está interesado en este artículo y quiere saber más sobre cómo empezar con un proyecto de IoT, póngase en contacto con nosotros.