Aplicabilidad e Importancia de los Digital Twins en el ámbito Smart Cities

Orígenes del concepto

La idea del Digital Twin (gemelo digital) no es nueva.

Ya en 2002, se comenzó a hablar de crear representaciones digitales de sistemas físicos que tuvieran entidad por sí mismas.

Actualmente, en Industria 4.0, el concepto de Digital Twin ya forma parte de la estrategia de empresas dedicadas a la innovación y diseño de productos.

Digital Twin como tendencia Digital

Si hacemos caso a Gartner, el Digital Twin es una de las 10 tendencias tecnológicas para 2018.

En G2 Digital Trends también consideran que los Digital Twins es una tendencia, ya fuera del ámbito industrial:

Otros son algo más precavidos, como Atos, que en su Look Out 2020+ Tech Trends Radar, considera que la tecnología está en un estadio adolescente aún aunque también la consideran transformacional:

En cualquier caso, todos coinciden en que el concepto de Digital Twin no se circunscribe al ámbito industrial (como si lo hacía hace unos años) y que es una tecnología transformacional a tener en cuenta.

Siendo conscientes de esto, veremos como la onesait Platform ofrece un soporte completo del concepto de Digital Twin, permitiendo el modelado, despliegue, simulación y orquestación de una forma sencilla y potente.

Definición de Digital Twin

Hay muchas definiciones de Digital Twin,

"Un digital twin es una representación digital de una entidad o sistema del mundo real. En el contexto de IoT, los digital twins están vinculados a objetos del mundo real y ofrecen información sobre el estado de sus contrapartidas, responden a cambios, mejoran operaciones y agregan valor. Con una estimación de 21.000.000.000 de sensores y puntos finales conectados para 2020, habrá digital twins para miles de millones de cosas en un futuro cercano. Potencialmente miles de millones de dólares de ahorro en mantenimiento, reparación y operación (MRO) y rendimiento optimizado de activos de IoT están sobre la mesa.”

"Un digital twin es simplemente una réplica digital de un activo, proceso, sistema o servicio físico a lo largo de su ciclo de vida. Esta representación virtual del mundo físico es, en esencia, una simulación muy similar a las representaciones 3D de los modelos, modelos de activos y simulaciones de procesos con diseño asistido por computadora (CAD), que los ingenieros han estado utilizando durante décadas. Utiliza datos en tiempo real para promover la comprensión, identificar problemas, desarrollar nuevas oportunidades y planificar para el futuro".

"Un digital twin es una réplica digital exacta de un producto, proceso o servicio. Este modelo vivo crea un hilo entre el mundo físico y el digital. Los objetos conectados a Internet de las cosas  (IoT) se replican digitalmente, lo que permite simulaciones, pruebas, modelos y monitoreo basado en los datos recopilados por los sensores de IoT. Como todo en el ámbito de IoT, los datos son el principal impulsor y el resultado más valioso de los digital twins. El intercambio y el análisis de datos de digital twins permite a las empresas tomar decisiones que impactan directamente en sus indicadores clave de rendimiento (KPIs).”

Podríamos simplificar diciendo:

Un Digital Twin es una representación digital de una entidad o sistema del mundo real que no actúa como un reemplazo del objeto físico del sistema que representa, sino como una replica de éste, permitiendo la comunicación (pruebas, monitorización, mando) de este dispositivo físico sin tener que estar pegado a él.

Nuestra Visión

Creemos que el concepto de Digital Twin tiene sentido tanto dentro del IoT donde estos “gemelos digitales” están vinculados a objetos del mundo real y ofrecen información sobre el estado de la Thing, responden a los cambios, etc., como fuera de IotT, donde existe un gran potencial para vincularlos a entidades que no son simplemente "cosas", de modo que en el futuro las representaciones digitales de todos los aspectos de nuestro mundo estarán conectadas dinámicamente y usando capacidades basadas en inteligencia artificial permitirán simulación avanzada, operación y análisis ".

Uso de Digital Twins en una Smart City

Un tema clave y aún por resolver en el ámbito Smart City trata de romper los silos y construir puentes:

Una ciudad inteligente sostenible y que funciona bien requiere una orquestación de personas, procesos, departamentos municipales, organizaciones públicas y privadas, políticas y tecnologías que trabajan juntas en todo el ecosistema de la ciudad inteligente.

¿Y qué tal si todos estos entes se representasen como Digital Twins? ¿Y si la plataforma de Ciudad permitiese orquestar estos Digital Twins independientemente de cómo funcione su representación física. 

Esa es nuestra visión!

A nivel práctico usar la plataforma de ciudad para modelar y orquestar Digital Twins tiene numerosas ventajas, entre ellas:

  • Proporciona una abstracción de alto nivel sobre el comportamiento de un sistema real, permitiendo conocer su estado (cómo está funcionando actualmente), cómo interactúa con su entorno (eventos que genera de forma autónoma) y cómo su entono la afecta (acciones que el entorno puede solicitar al sistema).

  • Permite tratar de forma homogénea a cada solución en un entorno heterogéneo de aplicaciones verticales.

  • Permite aglutinar y dar sentido a la información (estado, acciones, eventos, …) de los diferentes Digital Twins (sistemas verticales), mediante el análisis conjunto de la información que generan por separado.

  • Orquesta diferentes sistemas: Disponer en una plataforma de la representación en tiempo real de los distintos verticales, permite componer reglas que, agregando información de diferentes orígenes, permitan desencadenar acciones en los distintos sistemas verticales afectados.

  • Simular escenarios: No es necesario disponer del sistema físico subyacente a uno o varios Digital Twins, para comprobar el comportamiento general bajo ciertas circunstancias. Si uno o varios sistemas se simulan respetando en su Digital Twin la interfaz que tiene el sistema físico real, se puede comprobar cómo responde integrado con el resto de sistemas de la ciudad.

  • Implantación incremental de sistemas verticales: La integración de verticales es una tarea compleja tanto en la fase de desarrollo como en la implantación. Mediante el modelado con Digital Twins, la interfaz de cada sistema es conocida por el resto desde un principio y no es necesario integrar sistemas en un modo P2P, sino que cada sistema se integra con la plataforma, y es ésta quien orquesta.

¿Cómo soporta la onesait Platform el concepto de Digital Twin?

La plataforma ofrece un soporte completo al concepto de Digital Twins:

  • Modelado de un Digital Twin desde el ControlPanel de la Plataforma: de modo que un usuario puede definir con precisión el interfaz (entradas, salidas y estado) de mi Digital Twin. El modelado permite usar la semántica incluida en la plataforma (entradas, salidas y estado pueden ser a su vez ontologías). 

  • Simulación del Digital Twin: de modo que pueda estar probando el comportamiento del DT, permitiendo usar los módulos de IA de la plataforma.

  • Implementación del Digital Twin: una vez modelado el DT la plataforma es capaz de generar código en diversos lenguajes para que implemente la funcionalidad requerida para el uso del DT en operación

  • Estado del Digital Twin: nuestros Digital Twins están conectados con la Plataforma de forma segura, y la plataforma tiene un Shadow de su estado

  • Orquestación de Digital Twins: una vez modelados, implementados y en ejecución, la plataforma permite construir visualmente una orquestación de Digital Twins, de modo que la salida de un Digital Twin pueda mapearse con la entrada de otro, de modo que uno reaccione a los cambios de estado del otro.

Ejemplo de aplicación de Digital Twins en el ámbito Smart City

A continuación veremos como usar las capacidades de la plataforma para construir un completo sistema de ciudad en el que cada vertical está modelado como un Digital Twin y el UI agregador de toda la información generada por los verticales es a su vez un Digital Twin.

Modelado de Digital Twin Vertical de Medio Ambiente

Veamos por ejemplo como modelar el Vertical de Medio Ambiente con las capacidades de la plataforma. De esta forma, teniendo un interfaz claro con entradas, salidas y estado en el futuro, podría reemplazar mi Digital Twin por otro de otra empresa, siempre que cumpla este interfaz, o incluso simular un vertical con un DT de Simulación.

Desde el menú DIGITAL TWIN, selecciona Digital Twin Definitions:

Modela de esta forma tu Vertical de Medio Ambiente:



Para modelar tu Digital Twin, define:

  • Propiedades del Digital Twin (en el ejemplo calidad del aire, ruido, nivel de alérgenos e información meteorológica).

  • Acciones que puedes realizar sobre tu Digital Twin (simular mala calidad del aire, recibir info meteorológica, información de alérgenos, calidad del aire). 

  • Eventos generados por el Digital Twin, en este caso simplemente actualizar el estado del DT (shadow).



En este ejemplo, como veremos con los siguientes pasos, el DT recibe esta información desde otros sistemas externos y por tanto es una entrada la información de aire, alérgenos, etc.

Simulación del Digital Twin

La plataforma te permite: 

  • Escribir la lógica de tu Digital Twin en JavaScript desde el propio Control Panel. Esto es útil para testar interfaces de tu Digital Twin, o la integración de uno de ellos con el resto de tus verticales:

  • Indicar que la lógica de tu Digital Twin está resuelta por un Notebook que ha sido entrenado vía un algoritmo de IA (por ejemplo el LRU de vida de un motor)

Implementación del Digital Twin

Desde la opción de menú

crea una instancia de la definición (modelado) de tu Digital Twin. Como decíamos antes, puedes tener diferentes instancias en ejecución de un Digital Twin en función del uso que quieras darle, bien por simulación, bien porque quieras testar un nuevo vertical de otra empresa. 

La plataforma te guía en la instanciación de un Digital Twin, indicándote los parámetros de conexión (incluido Token) de la instancia del Digital Twin con la plataforma:

Finalmente, selecciona “Generar el código del Digital Twin”. En este caso, selecciona Proyecto Spring Boot con Maven:

Este código generado ya incluye una estructura del código necesario, incluida la conexión con la plataforma, de modo que sólo tienes que rellenar un conjunto de métodos para hacer funcionar el Digital Twin.

Estado del Digital Twin

Como hemos dicho, la plataforma mantiene el Shadow (estado espejo) de cada Digital Twin conectado con ella.

Este estado se representa como una ontología por lo que el propietario de un Digital Twin puede construir reglas conforme se actualiza el Status del DT en la plataforma o representar en un dashboard esta información:



Orquestación de Digital Twins

Además de todo lo mencionado la plataforma permite orquestar de forma visual la interacción entre diversos DTs. 

Para conseguir esto, los Digital Twins de la plataforma enviarán todos los eventos que propagan a la plataforma de forma automática de modo que esta es capaz de rutear las salidas de un Digital Twin a las entradas de otro, y establecer reglas entre los DTs.

Para poder orquestar tus Digital Twins, basta con abrir la opción de My Flows y entrar en mi dominio.

En este diagrama vemos:

  • Los componentes de la plataforma para manejar Digital Twins

  • Un flujo básico que cada 24 horas envía datos meteorológicos (cogidos de una fuente OpenData) al Digital Twin

  • Una instanciación del Digital Twin en la plataforma 

Si pinchas en el componente DT, verás las propiedades del DT:

Veamos un ejemplo de orquestación más interesante:

En la figura se muestra como la salida del DT medio ambiente genera un evento status que se envía a un nodo , que en sí es un subnodo y que se descompone en:

En este flujo se evalúa si la calidad del aire está en unos límites correctos o por contra debe generar una alerta. 

Si las reglas indican que se debe generar una alerta, se notifica al Digital Twin CLM que lo representará en su UI y generará una alarma. El componente  es de nuevo un subflujo que se descompone en 

y que inserta los datos de la alerta en una ontología Alert.

Finalmente, podemos ver cómo el UI de agregación, en este caso el CityLandScape Manager, que a su vez es otro Digital Twin, representa esta información:

 



Estándares en el ámbito Digital Twin 

Como veíamos al principio, la extensión de los Digital Twins al mundo TI (fuera ya de la Industria) está aún en un estadio embrionario, por tanto es lógico que no haya estándares precisos en este ámbito. No obstante si que hay un conjunto de iniciativas que pujan por convertirse en el estándar en este ámbito.

En la plataforma, nos hemos decantado por Web Thing API (https://iot.mozilla.org/wot),

W3C Web Thing es una nueva propuesta (en este caso por parte de Mozilla) para describer un modelo de datos común y un API para la “Web of Things”.

La Web Thing Description provee un vocabulario para describir dispositivos físicos conectados a Internet en un formato legible basado en JSON.

Por su parte, la Web Thing REST API y Web Thing WebSocket API permiten que un cliente web pueda acceder a las propiedades de un dispositivo, ejecutar acciones sobre este y suscribirse a eventos que representan un cambio en su estado.

La especificación incluye:

Con un ejemplo podemos ver como la definición coincide por completo con los conceptos manejados con el Digital Twin de la Plataforma:

donde podemos ver que el dispositivo (Digital Twin) tiene una propiedad temperatura de tipo Number, otra humidity y otra led, así como una acción (que alguien puede ejecutar sobre el dispositivo) y un evento (que se publica cuando se desencadena) reboot. Así como links para acceder a las propiedades, acciones, eventos, etc.

 

Hemos seleccionado esta iniciativa como base para nuestra implementación por ser una de las iniciativas más conocidas debido a su facilidad para adoptar estándares de tecnología: estructuras de datos JSON fáciles de leer, independencia del protocolo de intercambio de datos y proporcionar una implementación para dos de los estándares de interfaces más extendidos, que son REST y WebSockets.