Taller IoT Sofia2: Modelo de datos. Ontología. ThinKP (Parte 1/4)

El objetivo de este taller es la realización de un ejemplo real sobre el que poder evaluar las capacidades de la plataforma Sofia2.

Para ello vamos a simular un edificio que dispone de varias plantas, y tres dispositivos para la lectura de consumo energético, temperatura y humedad en cada una de ellas. Para terminar, crearemos un cuadro de mando para visualizar esta información y publicaremos los datos en un API para ser consumido de manera sencilla por cualquier aplicación.

Con el fin de conseguir una mejor comprensión del taller, estructuraremos los pasos a seguir en 4 posts. Hoy empezamos con la primera parte:

  • (Parte 1/4) – Modelo de datos. Ontología. ThinKP.

Modelo de datos

El Modelo

El pilar sobre el que se sustenta un proyecto IoT es su modelo de datos, este debe contener toda la información relevante, tanto para un uso inmediato como para posteriores análisis de la información.

Es importante que los dispositivos no tengan que enviar información irrelevante que únicamente genere un coste en las comunicaciones.

En la generación de un modelo equilibrado radica la complejidad del diseño del modelo de datos.

Ontología

En Sofia2 el modelo de datos recibe el nombre de Ontología, podemos definir ésta de una manera muy superficial como un esquema JSON que definirá de forma explícita los datos que almacenará.

La consola de administración centralizada de sofia2 dispone de varios métodos para crear una ontología (editor gráfico, modo texto, asistente y desde origen de datos).

image90

Vamos a utilizar la Creación Guiada de Ontología.

image91

Lo primero que tenemos que hacer es darle un nombre a nuestra ontología, la llamaremos TallerIoT.

Marcamos la ontología como activa y es una buena práctica indicar la descripción de la finalidad que tiene nuestra ontología.

image92

Podemos obviar los detalles de Configuración BDTR y BDH y dependencia entre ontologías, pues no tiene relevancia para este taller.

Ahora vamos a añadir los campos de nuestro modelo de datos, vamos a trabajar con un modelo muy sencillo que contendrá la siguiente información:

tablatalleriot

image93

Establecemos la propiedad Additional Properties a false para evitar que nuestra ontología pueda contener otro tipo de información. Y pulsamos el botón generar ontología.

image94

En el apartado Esquema, nos aparecerá la definición del JSON-Schema que define nuestra ontología y que tiene que cumplir todas las instancias de ontología que utilicemos.

image95

Si pulsamos el botón Generar Instancia nos mostrará un ejemplo de una instancia de ontología.

image96

Por último, pulsamos el botón Crear.

ThinKP

Una vez que hemos definido el modelo de datos y lo hemos plasmado en una ontología, tenemos que crear el ThinKP, la configuración lógica de los dispositivos que van a interactuar con nuestra ontología.

Para ello accedemos al menú Mis ThinKPs y pulsamos sobre el botón Nuevo ThinKP.

image97

Le damos un nombre a nuestro ThinKP, le llamaremos TallerIoT.

image98

Podemos darle una descripción. Y debemos de seleccionar la ontología que hemos creado en el punto 3. Que debe llamarse TallerIoT.

image99

Una vez dada esta información podemos pulsar el botón Crear, nos aparecerá la pantalla de detalle del ThinKP.

image100

Siempre podremos acceder a nuestros Token mediante la pestaña Mis Tokens.

image101

Seleccionamos el icono de edición de nuestro ThinKP (lápiz).

image102

Seleccionamos la pestaña Mis Tokens. Nos aparecerá un listado con los Tokens que tiene asignados y las opciones para activar/desactivar, dar de baja y añadir nuevos Tokens.

image103

La próxima semana continuaremos con la segunda parte del taller. Te esperamos.

Taller IoT Sofia2: Modelo de datos. Ontología. ThinKP (Parte 1/4)

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s