16
Facilitating the Development of IoT Applications in Smart City Platforms Stefano Valtolina – Università degli Studi di Milano

Facilitating the Development of IoT Applications in Smart ... · City Platform, for: –Collecting and combing . IoT devices (sensors and actuators) or . services. for accessing

  • Upload
    others

  • View
    3

  • Download
    0

Embed Size (px)

Citation preview

Facilitating the Development of IoT Applications in Smart City Platforms

Stefano Valtolina – Università degli Studi di Milano

The Snap4City project

• Pre-Commercial Procurement (PCP) Project within the H2020 EU Project SELECT4CITIES (http://www.select4cities.eu/)– Join proposal with the University of Florence

• The project goal is to develop an –open, standardized, data-driven, service-oriented and user-centric

platform• Experimented on large scale cases:

– Florence, Antwerp, Helsinki

2

Requirements and Objectives

• Snap4City serves as a City Platform, for: –Collecting and combing IoT devices (sensors and actuators) or services for

accessing real-time and historical data• The integration is carried out by the use of a city ontology (Km4City)

–Creating and sharing IoT applications that allow:• Managing events that happen in the city (about weather conditions, mobility,

cultural events, emergency or critical situations,….)

–Performing data analysis based on KPI, maps, data trends, charts, etc. and carried out by using machine learning, statistics, reasoning techniques

3

The Dashboard

4

Design of IoT Applications

• IoT applications that can:– Acquire data from heterogeneous sensors (w.r.t. to their format, communication

protocol, semantic)– Aggregate, combine, transform data according to the analysis to carried out– Send commands to different actuators

• City operators need to design IoT applications– Operators who are experts in a specific domain but not experts in programming

5

• A EUD approach that can simplify– the process of configuration of IoT devices and – make uniform the representation of the events – without forcing operators to get bogged down in writing code

• What is the most suitable interaction style?

Visual tools for empowering city operators

6

Visual tools for empowering city operators

• Wiring composition drawing graphs– to connect nodes for integrating and wiring together devices, APIs and services – to carry out data processing such as transformation, filtering, routing, aggregation,

enrichment of data– Commercial solutions:

• e.g. Talend Studio[3], StreamBase Studio[4], Waylay.io [5]

– Free and Open source solutions:• Eclipse Kura [6] l, Node-RED [7], and Flogo [8]

[3] www.talend.com [4], www.streambase.com [5], www.waylay.io[6] https://eclipse.github.io/kura/, [7] https://nodered.org, [8] https://tibcosoftware.github.io/flogo/

7

Visual flow editors: pros and cons

• They provide operators with:– a familiar interaction used in several city Dashboards:

• ClouT [9], REPLICATE H2020 [10], CityPulse [11] and SmartSantander [12]– They provide rich user interfaces for supporting full application lifecycles

• But in some cases:– they require to use programming languages paradigms– they offer a poor library of nodes for accessing different types of IoT sources

• Most promising solution -> Node-RED• Mature; wide community, a rich library of nodes for getting data by using common

protocols such as MQTT, AMQP and NGSI

[9] [ClouT link; [10] REPLICATE link; [11] CityPulse link; [12] SmartSantander link

8

Creating Dashboard Using Node-RED

9

IoT apps in Node-RED

10

• Node-RED nodes for: –Acquiring data from heterogeneous IoT devices according to the

protocol used by different IoT brokers–Harmonizing the schema of each source according to a common

format–Enabling insertion of functions for applying ETL operations

Node-RED nodes for faciliting the IoT design

11

Parametric and direct Discovery in

12

Map-based Discovery in

13

Node-Red IoT-Directory

• Support for the development of flows for the acquisition of the data– Automatic configuration of the IoT devices– Uniform representation of the generated events

• Send commands to actuators:– Automatic configuration of the IoT broker– Automatic preparation of the messages to sent to the actuators through the IoT Brokers

14

Snap4City, MajorCities, June 2019

15

Conclusion and future works

• We created two Node-RED building nodes that have been integrated into the Snap4City platform with the aim of supporting city operators in designing effective dataflows

• A solution based on a EUD strategy that aims at supporting city operators who are not computer experts, but experts in specific domains such as monitoring weather, traffic, quality of water and air, or events that happen in the city

• We need:– to devise a library of parameterizable JavaScript function nodes for carrying out data-

processing without forcing operators to write JavaScript code– to provide operators with an assistant that help them in discovering most interesting IoT

devices or suitable data-processing functions according to their needs by using machine learning techniques

16