En 1999, Kevin Ashton acuñó el término ‘Internet de las Cosas’ (Internet of Things – IoT). Lo hizo hablando sobre el RFID (Radio-Frequency IDentification) como ejemplo. Y lo definió tal que así:
– «Una ‘Cosa’ es, en este contexto, un objeto físico que tiene como objetivo conectar e intercambiar información con otros dispositivos vía Internet.»
En la actualidad, existen más de 10 billones de dispositivos IoT comunicando datos de forma periódica, heterogénea y globalizada [1]. De hecho, según [2] el IoT se trata como uno de los eventos más importantes del siglo XXI.
En gran medida, un dispositivo IoT es un sensor inteligente conectado a Internet. Estos se utilizan, en parte, como dispositivos personales, portátiles o rastreadores de salud, pero también son clave para el éxito de aplicaciones industriales como ‘Industry 4.0’ o ‘Smart Industry’, ‘Connected Cars’, ‘Smart Cities’, ‘Smart Energy’ o ‘Healthcare’ [3]. En estos tiempos, casi todos los entornos industriales dependen, en algún punto, del IoT.
Los dispositivos y sistemas IoT están pensados para recoger y procesar datos incluso de los sitios menos esperados. Su expansión está permitiendo operar sensores en una amplia gama de aplicaciones: gestión energética, movilidad, fabricación, ciudades inteligentes, dispositivos inteligentes en el hogar o incluso asistencia sanitaria. En este último, donde existe la necesidad de servicios capaces de controlar el estado médico de un paciente; o en el anterior, en el uso privado en casa, por ejemplo, para controlar la seguridad del hogar.
El objetivo de un dispositivo IoT es obtener información sobre un elemento del mundo físico. Este dispositivo tiene la habilidad de comunicarse con el entorno para el que ha sido diseñado, como mínimo. ¿Pero qué ocurre cuando el objetivo es interconectar diferentes dispositivos de diferentes empresas en un mismo entorno?
En la Figura 1 se observa como hay tres compañías diferentes. Cada una de las cuales utiliza un formato diferente de datos para enviar información. Transmitiendo información a la nube, de forma periódica, pero sin tener una misma periodicidad. Este escenario es muy común: se trata de un escenario totalmente heterogéneo en cuanto formato y periodicidad de datos. Y para el caso de uso indicado en la Figura 1, funciona.
En este mismo contexto, como se observa en la Figura 2, aparece como ‘Compañía 4’. Esta quiere conectarse a la vez a las tres nubes de IoT de las compañías anteriores. Y para hacer esto se encuentra con 3 formatos distintos de datos, dado que cada compañía utiliza un formato concreto, distinto a cualquier otro. Es decir, esta compañía, para su caso de uso, deberá compatibilizar el sistema con los 3 formatos de datos de los demás, sumado con el suyo propio. Todo esto dificulta el hecho de compartir información entre diferentes entornos, generando más trabajo que hacer que el del mismo caso de uso a realizar.
La problemática con la que nos encontramos, es la de proveer información de una forma genérica y que al mismo tiempo pueda aplicarse a diferentes dominios. Así, una de las posibles soluciones es la homogeneización de los datos y formatos de información, en otras palabras, generar un vocabulario común.
Para homogeneizar lo máximo posible el contenido de los datos y la forma en que estos se están comunicando debe abstraerse la sintaxis particular y el formato de datos utilizados en los diferentes dispositivos. También proveer un vocabulario común para el dominio en el que se está desarrollando. Este concepto de vocabulario se denomina semántica.
Haciendo uso de semánticas u ontologías se consigue, entre otros [4]:
- Compartir una comprensión común de la estructura de la información entre los agentes software.
- Permite la reutilización del conocimiento del dominio.
- Los supuestos de dominio se hacen explícitos.
Existen diversas ontologías, semánticas o estándares en la actualidad, que pueden acercarse a las necesidades de cada caso de uso o dominio. Pero si nos enfocamos en el Internet de las Cosas, lo que encontramos es un abanico más reducido. A continuación se enumeran algunas de las más conocidas:
Estándares:
- Observations and Measurements (O&M): Define un XML Schema y modelos para observaciones y propiedades extraidos a partir de lecturas de sensores.
- Sensor Model Language (SensorML): Proporciona una semántica para definir las características y las propiedades de sensores y actuadores.
- Sensor Observation Service (SOS): Proporciona un servicio web para consultar y manipular observaciones y sensores.
Semánticas/Ontologías:
- SSN/SOSA Ontology [5]: Ontología para utilizar cuando existe la necesidad de juntar vocabularios de IoT con la Semantic Web y Linked Data. Desarrollada por Semantic Sensor Network Incubator Group (SSN-XG). Reconocida desde 2017 por el World Wide Web Consortium (W3C). En la Figura 3 se observa la vista general de las clases desde la perspectiva de la observación.
- M3 Ontology: Desarrollada a partir de la ontología SSN. Extensión que añade razonamiento cross-domain Machine-To-Machine.
- IoT-Lite: Extensión de SSN. Como objetivo, tiene que definir más conceptos a añadir al vocabulario.
- FIESTA-IoT: Tiene como base las 3 anteriores, entre otras. Y tiene por objetivo mejorar la interoperabilidad en general
Si estáis interesados en el tema y en saber más detalles, en el marco de la tesis doctoral e industrial que estoy cursando, he realizado (hasta ahora) dos papeles que pueden ser útiles:
- Vila, M., Sancho, M.R., Teniente, E.: XYZ Monitor: IoT Monitoring of Infrastructures using Microservices. In: Service-Oriented Computing – ICSOC 2020 Workshops. pp. 472-484 (2021).
- Vila, M., Sancho, M.R., Teniente, E., Vilajosana, X.: Semantics for Connectivity Management in IoT Sensing. In: Conceptual Modeling – ER 2021. pp. 297-311 (2021).
Y también podéis encontrar más información en mi perfil, en esta misma web de InLab: https://inlab.fib.upc.edu/ca/supervisio-basada-en-semantiques-de-les-infraestructures-iot-mitjancant-microserveis
Referencias:
[1] Statista – IoT Connected Devices Worldwide: https://www.statista.com/statistics/1183457/iot-connected-devices-worldwide/
[2] SmartDataCollective – IoT Is The Most Important Development Of The 21st Century: https://www.smartdatacollective.com/iot-most-important-development-of-21st-century/
[3] Zanella, A., Bui, N., et al.: Internet of Things for Smart Cities. IEEE Internet of Things Journal 1(1), 22–32 (2014)
[4] Noy, N.F., McGuiness, D.L.: Ontology development 101: A guide to creating your first ontology. Tech. rep., Knowledge Systems – Stanford University (2001)
[5] Semantic Sensor Network Ontology – W3C Recommendation https://www.w3.org/TR/vocab-ssn/