¿Qué es la iniciativa The Things Network?

En este post os queremos transmitir lo que es la iniciativa de The Things Network (TTN desde ahora), y como han conseguido, en poco más de 2 años, empezando con una campaña en Kickstarter, promover la creación de más de 400 comunidades de entusiastas y desarolladores de IoT, con una red global y colaborativa de +2600 gateways utilizando la tecnología LoRaWAN.

 

Amsterdam: Zona cero

 

Todo empezó en Amsterdam en el verano de 2015, de la mano de los dos fundadores de The Things Network: Wienke Giezeman y Johan Stokking. En este breve vídeo, Wienke explica los inicios y las capacidades de TTN:

 

Utilizando la tecnología LoRaWAN, cubrieron todo el centro de la ciudad de Amsterdam con cobertura LoRaWAN en un par de semanas con unos pocos gateways.

 

Tecnología LoRaWAN + Red Abierta – Open source

 

TTN eligió como tecnología de comunicación LoRaWAN sobre LoRa (más info en este enlace de la LoRa Alliance). Basada en una modulación de espectro extendido, LoRa alcanza considerables distancias utilizando una potencia muy pequeña ocupando todo el ancho de banda disponible en torno a la frecuencia de 868 MHz (EU). Esta transmisión se puede realizar incluso por debajo del nivel de ruido, lo que otorga a la comunicación una robustez superior frente al ruido.

 

Desde el inicio ha sido una tecnología abierta y con gran atracción entre los entusiastas del IoT, centrándose en 3 puntos principales:

 

  • Largo alcance: Cobertura en líneas de 10-20 km son fácilmente alcanzables con un emplazamiento adecuado.
  • Bajo consumo de batería: Esta tecnología de comunicaciones permite alargar la vida de los dispositivos alimentados por batería hasta varios años.
  • Bajos costes: Los costes de los dispositivos son cada vez más competitivos, y una vez tienes cobertura de un gateway, los dispositivos transmiten información sin coste de comunicación alguno (ciñendose eso sí a las cuotas de uso (duty-cycle) del espectro libre para cada región del globo).

 

Además de la tecnología de comunicaciones, TTN ha hecho un esfuerzo de desarrollo en la parte de servidor, construyendo todo el backend de la red y que da soporte a los gateways distribuidos por el globo. Este backend es el que lidia con duplicidades de mensajes, orquestración de mensaje de bajada, gestión de integraciones con plataformas, etc. TTN ofrece también capacidades de integración por HTTP y MQTT, además de una serie de APIs en distintos lenguajes como: Go, Java, Node-RED y Node.js, con las cuales construir una aplicación end-to-end, mediante la integración de nodos, gateways, server de TTN y una platforma IoT como Sofia2.

 

Desde el 1 de Febrero, tanto los diseños HW del gateway y del nodo de TTN, como el código sobre el que se ha escrito todo el backend de TTN ha sido disponibilizado como opensource en su cuenta de GitHub, manteniendo el espíritu abierto y de comunidad con el que empezaron en 2015.

 

429 comunidades en los 5 continentes

 

En la actualidad el fenómeno de TTN ha tenido gran calado en la comunidad IoT global. En este momento disponen de 2946 Gateways en todo el mundo gracias a comunidades locales que montan estos puntos de acceso extendiendo la red y el conocimiento sobre IoT. Esta creciente comunidad está acelerando la expansión del IoT, facilitando a muchas personas el acceso sencillo y gratuito a un ecosistema de IoT donde pueden hacer realidad sus proyectos de forma muy sencilla.

 

mapattn.png

 

En ciudades como Berlín, las comunidades de TTN han dotado a la ciudad de tal nivel de cobertura, que el desarrollo de aplicaciones IoT sobre esta estructura es una realidad:

 

ttn-berlin.png

 

Con Gateways instalados en ubicaciones tan icónicas como la torre de televisión de Berlín, dotando de una cobertura ideal a la capital germana:

 

DQRSwsTW0AEby0h.jpg

Meetup Sofia2 – Comunidad TTN Madrid

 

Este 28 de Febrero, en el espacio de THE CUBE Madrid, seremos los anfitriones de un Meetup sobre tecnologías LPWA (SigFox y LoRaWAN), y cómo hemos integrado ya estas tecnologías con Sofia2.

Además, tendremos el privilegio de contar con la ayuda de la comunidad de TTN oficial en Madrid, que nos contarán de primera mano sus objetivos como comunidad, los avances de TTN y las posibilidades que ofrece como red ciudadana:

 

ttn-madrid.png

 

Como colofón, la comunidad de TTN Madrid nos enseñará un caso de puerta conectada basado en LoRaWAN, conectado a TTN, y que hemos integrado en Sofia2 para poder explotar el caso desde el lado de plataforma, ofreciendo visualización en un dashboard, y usos especiales como el motor de scripting de Sofia2 para disparar alertas.

 

Si estás interesado en asistir, aun nos quedan plazas disponibles, este es nuestro grupo de Meetup:

https://www.meetup.com/es-ES/IoT-BigData-Sofia2-Lab/events/247514374/ .

Es una oportunidad muy buena para conocer más sobre Sofia2 y profundizar sobre la iniciativa TTN gracias a la presencia de la comunidad TTN Madrid.

 

Os esperamos!!

¿Qué es la iniciativa The Things Network?

IoT Technologies and its support in Sofia2

p1

IoT technologies make it easy to connect all kinds of things to the network and develop applications to control and manage these “things”. All the complexities of enabling connectivity, services, and deployment for these devices is the task of the IoT platform.

An IoT platform ensures integration with different hardware devices supporting a wide range of communication protocols. Through the integration interfaces provided by the platform, you can also manage the IoT data collected to specific systems for data visualization, data storage, as well as transmitting data to connected devices (configuration, notifications) or between them (controls, events ).

IoT platforms are also known as IoT Middleware, which underlines its functional role as mediator between hardware and application layers.

Let’s see an IoT flow and the components involved:

p1.PNG

Sofia2 supports each and every one of the modules in the previous diagram as follows:

 Things

         Generic IoT Platform                                  Sofia2 IoT Platform

p2                 thingssofia2

We understand Things as any device that is capable of sending data, whether sensors, surveillance cameras, robotic arms, Smart watch … Some of the devices supported by Sofia2 are:

  • Devices:
    • Opening and closing doors sensor : CLIMAX, Leedarson, Nyce, Wulian, Centralite.
    • Environmental thermometer: Several manufactures
    • Pulsoximetros: several manufactures using IEEE protocol
  • Smart Home: presence sensor: CLIMAX, Leedarson, Nyce, Wulian, Centralite, DEVELCO.
  • Smart Building: Smart Plug: Meazon, 4-Noks
  • Smart Retail:
    • Thermostat: 4-Noks, Centralite
    • IP Camera: D-LINK, Panasonic
    • Temperature and humidity sensor: Wulian, Centralite, Leedarson
    • Smoke and gas sensor: CLIMAX, DEVELCO, Leedarson, Wulian
    • Flood sensor: Centralite, CLIMAX, DEVELCO, Wulian
    • Light sensor: Leedarson
    • Smoke Listener: Centralite
    • Siren: Metalligence, Wulian
    • LED illumination: LG, Leedarson
    • Switches: CLIMAX, Centralite
    • Thermostatic valve: CLIMAX
    • Weather station: Adafruit sensors
    • Beacon: Indra, Estimote
    • Panic button: CLIMAX, Centralite
    • Smart Meters: Several manufactures
  • Smart Cities: Environmental humidity sensor: several manufactures
  • Smart Traffic: Sensor power consumption: several manufactures
  • Smart Agro: Flowmeter: several manufactures
  • Smart Tourism:
    • Tensiometer: several manufactures
    • Potentiometer: several manufactures
    • Smart metering: several manufactures
    • Traffic ligth: Cross
    • Intelligent lighting: UVAX, LUIX
    • Libelium sensors
      • Air Quality
      • Atmospheric pressure
      • Temperature
      • Humidity
      • Luminosity
      • Waspmote internal temperature, batterty level, accelerometer
  • Smart Health: scales, several manufactures using IEEE protocol
  • Smart Insurance:
    • Tensiometers: several manufactures using IEEE protocol
    • Thermometer: Fora
    • Glucometer: Fora
    • Nociceptor: several manufactures
    • Anesthesia tower: Drager, General Electric
    • Pressure sensor in bed
    • Fall sensor
    • SmartBand: Withings
  • Otros:
    • Quadrirotor/Drone: Indra, 3DRobotics, Microsoft IPCam
    • Rover/Drone: Indra
    • Raspberry Pi: Indra
    • ARduino

In addition to supporting the data collection of all these devices, Sofia2 also allows the ingestion of data from other types of sources, such as RRSS, APIs and general files:

dispositivossofia2people

Conectivity

Generic IoT Platform        Sofia2 IoT Platform

p3.PNG    Comunicacion Sofia2

Sofia2 is agnostic of the communications, with implementations in multiple protocols of light communication (REST, OPC, MODBUS,  WebSockets, MQTT, WS, JMS, AMQP…)

In addition, among others, the gateways supported by Sofia2 are:

gatewayssofia21

Services and Cloud

 Generic IoT Platform                                   Sofia2 IoT Platform

p4.PNGServiciosycloudSofia2

In the platform Sofia2 the following elementary concepts are defined:

smart space sofia2

SmartSpace

It is the collaborative universe of systems and/or devices (ThinKPs) that exchange information between them. The core of a Smart Space is the SIB (Semantic Information Broker):

SIB: It is the core of the Smart Space, acts as an element of integration of the information exchanged by the devices. There may be several in a Smart Space.

ThinKP: Each of the systems and / or applications that interoperate in the Smart Space through the SIB must be defined as ThinKP in the same. The ThinKP is an element deployed in the Smart Space that can consume and/or produce information.

Ontology: Semantic atomic element with which to model the different information systems that interoperate in the Smart Space domain.

Ontologies are semantic descriptions of a set of classes. In this way, applications that share classes (usually called concepts) of the same ontology, can exchange information through concrete instances of these common classes.

In Sofia2, these ontologies are represented in JSON-Schema format that defines and validates them.

In terms of data storage in Sofia2 we distinguish between:

databases

For each ontology can be configured a time window from which the information is considered ‘historical’.

The information remains in this database until it is automatically migrated to the historical information repository.

The stored information will be available as data source for the different modules of the platform: Integration, Machine Learning, APIManager.

Sofia2 has an API Manager with the following capabilities:

Sofia2ApiManager

Apps and Analytics

Generic IoT Platform                             Sofia2 IoT Platform

p5   AppsyAnalyticsSofia2

In sofia2/console we will find the user interface and experimentation environment with all the capabilities of the platform. In it we can not only create Ontologies to model our data, ThinKPs or ingest data files or RRSS, but also we can create rules (SCRIPTS) to process all this information in the way we are most interested, to visualize this data in Gadgets and Dashboards Or publish ontologies via API. We also have Analytics modules that will allow us to create pipelines and notebooks, or create Machine Learning flows:

ML

To conclude, here we can see the architecture of the platform Sofia2:

ArquitecturaSofia2

As well as an overview of the Sofia2 components:

flujo general Sofia2

IoT Technologies and its support in Sofia2

Logroño adjudica la implantación de su Plataforma Smart City

LogronoSmartCity

 

La Junta de Gobierno Local del Ayuntamiento de Logroño, en su sesión del pasado miércoles 12 de Abril adjudicó el suministro, implantación, desarrollo y mantenimiento de la Plataforma ‘Smart Logroño‘ a la UTE Indra Sistemas y Suma Info.

 

FEEP IoT&BigData Platform Sofia2 servirá como base tecnológica para este proyecto que se extenderá hasta 2021.

Sofia2InfografiaRecortada

 

Según ha informado el portavoz del equipo de Gobierno municipal, Miguel Sainz, la propuesta de la UTE adjudicataria “proporciona una solución de plataforma de gestión integral robusta, consolidada y madura” que, además, contempla la propia evolución de la plataforma con una visión “global e integradora de la ciudad, la administración y los ciudadanos.

La plataforma incluirá “dos portales de información”, de los que el primero será de acceso a los datos públicos, “un ‘opendata’ que proporcionará información municipal sobre cifras estadísticas y de servicios de gran utilidad para que los emprendedores puedan tomar decisiones y crear negocios”.

 

El segundo de los portales, será el “Smart city”, que “permitirá que las relaciones del ciudadano con el Ayuntamiento sean más transparentes” y tendrá acceso directo a contenidos de la plataforma, como el servicio 010, la gestión del tráfico y alumbrado y “un proyecto piloto de la gestión y manejo de la red municipal de aguas”.

 

También se plantea la normalización de la información, gestión de dispositivos, gestión analítica y georreferenciada de los datos y la elaboración de mapas, informes e indicadores para la gestión de los servicios.

 

 

 

 

 

 

 

Logroño adjudica la implantación de su Plataforma Smart City

Creating Dashboards with Node-RED

node

As we mentioned in previous posts, Node-RED is a tool with which you can create flows visually. In this post we will see a new use of Node-RED as a tool to create Dashboards.

To do this we will use the Freeboard node, it is available on GitHub, this node allows us to design our own dashboards.

For this demo, we used a Meshlium sensor concentrator, which inserts real-time data into two ontologies defined by a single ThinKP. To access this data, in our Node-RED flow we will use the following nodes:

  •  A SSAP-process-request node: listening to insert events on the ontologies defined.
  • A function node, whose function will be to parse the data recovered from the ontology. It must be taken into account that the freeboard node only represents the data provided by the message payload in JSON format.
  • A Freeboard node, this will allows us to design our dashboard.

Our flow would look like this:

dash0

We will create two different Dashboards, in one of them we will represent the monitoring data of the device as the battery, internal temperature … In the other one we will represent the measurements provided by the sensors: solar radiation, humidity …

The two dashboards are shown below:

dashn

dashnuevo

Once we have created the Dashboard, we save it to be able to access it from other devices or at another time. There are two ways to open a dashboard that you have saved:

  • By copying the URL generated at the time of saving the dashboard, through this URL we can access it from another device or browser.
  • By selecting the option “LOAD FREEBOARD” in the upper left corner, where we will have to load the generated .json file when we save the dashboard.

In the following video you can see a video of the demo:

Creating Dashboards with Node-RED

Wizard creación guiada de Aplicaciones Sofia2 (Nueva Funcionalidad en Release 3.4)

Dentro de las continuas mejoras de usabilidad en la plataforma se ha creado un asistente que guía en todo el proceso de creación de un Sistema construido sobre Sofia2.

 

Para acceder a él, pinchamos sobre el icono WIZARD que encontraremos en la parte superior de la consola:

 

wizard1

 

Podremos acceder a la creación de proyectos, ontologías, dashboards, APIs,… hasta construir una aplicación completa.

 

wizard3

wizard4

wizard5

 

Este asistente nos permitirá seguir paso a paso los consejos y definiciones y, de una forma muy sencilla, construiremos los elementos que necesitemos:

 

wizard2

 

 

 

Wizard creación guiada de Aplicaciones Sofia2 (Nueva Funcionalidad en Release 3.4)

Despliegue multitenant (Nueva Funcionalidad en Release 3.4)

La FEEP IoT & Big Data Platform Sofia2 release 3.4 permite el despliegue y funcionamiento en modo multitenant, de esta forma sobre una misma instalación podré gestionar diversos tenants desde la propia consola (a través de un nuevo ROL). Los tenants no comparten recursos e, incluso dentro de una misma instalación, se puede configurar diferentes motores según el tenant (por ejemplo que un tenant use MongoDB como BDTR y otro use Kudu).

 

Cuando accedemos a la plataforma, esta nos informará de qué Tenant está usando por defecto. Si un usuario no pertenece a un tenant específico, indicará que pertenece al tenant Default.

 

tenantdefault

 

El nuevo Rol, denominado Administrador de Infraestructura tendrá la capacidad de crear y gestionar todos los Tenant. Los administradores de la plataforma únicamente podrán administrar los tenant a los que pertenezcan.

 

tenants

 

Un Tenant consta de un Identificador, y una configuración de Base de datos de configuración y de Base de datos de tiempo real. Por último, la asignación de usuarios al tenant se realiza a nivel de Grupos, de forma que todos los usuarios que pertenecen a un grupo, pasarán a ser miembros del Tenant al que sea asignado el Grupo.

 

identificacion

Despliegue multitenant (Nueva Funcionalidad en Release 3.4)

Nuevos tutoriales añadidos: Taller IoT y Taller Analytics

Coincidiendo con la Release 3.4 de la plataforma Sofia2 y con el objetivo de simplificar la comprensión de las capacidades de la plataforma, se han añadido nuevos tutoriales  como el Taller IoT y el Taller Analytics, disponibles en formato PDF, formato HTML y formato POST.

 

Seguir leyendo “Nuevos tutoriales añadidos: Taller IoT y Taller Analytics”

Nuevos tutoriales añadidos: Taller IoT y Taller Analytics