IOT: SCENARI E SOLUZIONI -...

35
IOT: SCENARI E SOLUZIONI

Transcript of IOT: SCENARI E SOLUZIONI -...

IOT: SCENARI E SOLUZIONI

Cos’è l’IoT

L’IoT (Internet of Things) è la rete costituita da oggetti fisici (le “cose”) caratterizzati dalla presenza di componenti elettronici e/o software e che godono di un valore aggiunto nell’operare all’interno dell’infrastruttura di Internet.

Cos’è l’IoT

Le caratteristiche principali degli oggetti che possono entrar a far parte dell’“Internet delle Cose” sono: ¨  L’identificazione univoca ¨  L’accessibilità A queste va aggiunta: ¨  La capacità di interagire con l’ambiente circostante Gli oggetti possono essere intelligenti o meno.

La nascita del termine IoT

"I could be wrong, but I'm fairly sure the phrase "Internet of Things" started life as the title of a presentation I made at Procter & Gamble (P&G) in 1999. Linking the new idea of RFID in P&G's supply chain to the then-red-hot topic of the Internet was more than just a good way to get executive attention. It summed up an important insight which is stil often misunderstood.”

Kevin Ashton

Cos’è l’IoT

Il concetto di Smart Object è stato introdotto da Marcelo Kallman e Daniel Thalmann nel 1998: Uno Smart Object è un oggetto che oltre ad essere in possesso delle caratteristiche già menzionate, è in grado di descrivere le interazioni che esso supporta.

Come è nato l’IoT

Le prime discussioni sulla possibilità di connettere degli oggetti in rete sono nate intorno al 1982. I primi oggetti ad essere connessi ad Internet sono stati una macchinetta della Coca Cola presso la Carnegie Mellon University e, qualche anno dopo, una caffettiera presso la Trojan Room del Computer Lab dell’Università di Cambridge.

Come si è evoluto l’IoT

Nel tempo, l’IoT è stato declinato in diverse forme: ¨  Internet of Important Things ¨  Industrial Internet of Things ¨  Web of Things

¨  Social Web of Things ¨  Internet of Everything ¨  …

Problematiche

Gli oggetti in questione generalmente sono: ¨  resource-constrained ¨  diffusi in ambienti frequentati da persone ¨  abilitati all’accesso a dati (sensibili

Le problematiche principali riguardano: ¨  Sicurezza (Security + Safety) ¨  Interoperabilità ¨  Consumi ¨  QoS

Fino a poco tempo fa c’era carenza di standard

Attività di standardizzazione

¨  ETSI (European Telecommunications Standards Institute) ¤ Connecting Things Cluster

¨  IETF (Internet Engineering Task Force) ¤ CoRE working group (Constrained RESTful Environments) ¤  6LoWPAN working group (IPv6 over Low power WPAN) ¤  ROLL working group (Routing Over Low power and Lossy

networks)

¨  IEEE (Institute of Electrical and Electronics Engineers) ¤  IoT "Innovation Space”

Attività di standardizzazione

¨  OMG (Object Management Group) ¤ Data Distribution Service Portal

¨  OASIS (Organization for the Advancement of Structured Information Standards) ¤ MQTT Technical Committee

¨  OGC (Open Geospatial Consortium) ¤ Sensor Web for IoT Standards Working Group

¨  IoT-A (Internet-of-Things Architecture) ¨  OneM2M

Attività di standardizzazione

¨  OSIOT ¨  IoT-GSI (Global Standards Initiative on Internet of

Things) ¨  ISA International Society of Automation ¨  W3C

¤  Semantic Sensor Net Ontology ¤ Web of Things Community Group

¨  EPC Global ¨  IEC (International Electrotechnical Commission), e ISO

(International Organization for Standardization), attraverso il JTC (Joint Technical Committee).

Attività di standardizzazione

¨  RRG (Routing research group) ¨  HIPRG (Host identity protocol research group) ¨  Eclipse Paho Project ¨  OpenWSN ¨  CASAGRAS

Attività di standardizzazione

¨  AllSeen Alliance ¨  IPSO ¨  Wi-SUN Alliance ¨  OMA (Open Mobile Alliance)

¤ OMA LightweightM2M v1.0

¨  Industrial Internet Consortium ¨  LoRa Alliance

Protocolli per l’IoT

¨  REST (Representational state transfer) ¨  SOAP (Simple Object Access Protocol) ¨  Websocket ¨  XMPP (Extensible Messaging and Presence Protocol)

¤ XMPP-IoT

Protocolli per l’IoT

¨  MQTT (Message Queuing Telemetry Transport) ¤ Mosquitto: An Open Source MQTT v3.1 Broker ¤  IBM MessageSight

¨  AMQP (Advanced Message Queuing Protocol) ¨  DDS (Data-Distribution Service for Real-Time

Systems) ¨  LLAP (lightweight local automation protocol) ¨  CoAP (Constrained Application Protocol)

¤ SMCP

Protocolli per l’IoT

¨  UDP (User Datagram Protocol) ¨  DTLS (Datagram Transport Layer Security) ¨  IPv6 ¨  6LoWPAN (IPv6 over Low power Wireless Personal

Area Networks) ¨  ROLL (IPv6 routing for low power/lossy networks) ¨  NanoIP ¨  uIP

Protocolli per l’IoT

¨  OMA LightweightM2M v1.0 ¨  SSI (Simple Sensor Interface) ¨  IOTDB ¨  Reactive Streams ¨  SensorML ¨  Semantic Sensor Net Ontology - W3C

IP Smart Objects Protocol Stack

IP Smart Objects Protocol Stack

W. Colitti, et al. hanno confrontato le performance di HTTP rispetto a quelle di CoAP. L'esperimento effettuato (sul sistema operativo Contiki) con un web-server COAP ed uno HTTP ha mostrato che servono 154 byte per la transazione CoAP contro i 1451 byte necessari per una transazione HTTP. Il consumo di energia per la transazione COAP e HTTP sono rispettivamente di 0,774 mW e 1.333 mW.

IP Smart Objects Protocol Stack

Riferimenti: ¨  R. Sutaria, R. Govindachari. “Making sense of

interoperability: Protocols and Standardization initiatives in IOT.”

¨  W. Colitti, K. Steenhaut and N. De Caro, “Integrating Wireless Sensor Networks with the Web”

Sistemi operativi

¨  FreeRTOS ¨  Contiki ¨  Riot ¨  TinyOS ¨  OpenWSN ¨  Linux ¨  Android ¨  Windows 10 ¨  mbed OS

OPEN HARDWARE

Open Hardware

L’Open Source Hardware (o Open Hardware) è quell’hardware costruito a partire da informazioni e strumenti disponibili pubblicamente senza alcun costo. Tali informazioni comprendono tra le altre la documentazione, i dettagli di costruzione, la lista dei componenti e la logica di progetto

Open Hardware

Idealmente l’Open Hardware è costruito a partire da componenti e materiali facilmente reperibili, con processi standard e architetture aperte, basandosi su contenuti senza restrizioni e strumenti di progettazione open-source per massimizzare la capacità degli individui di fare e utilizzare l'hardware.

Open Hardware

Esistono diversi esempi di progetti Open ¤ Stampanti 3D ¤ Smartphone ¤ Schede di prototipazione

ma anche: ¤ Elettrodomestici ¤ Mobili ¤ …

Open Hardware – Esempi

RepRap

Riferimento:

http://reprap.org/wiki/RepRap

RepRap è stata una delle prime stampanti 3D a basso costo e il “RepRap Project” ha dato inizio alla rivoluzione delle stampanti 3D open-source.

Open Hardware – Esempi

Openmoko™ & openphoenux

Riferimenti:

http://en.wikipedia.org/wiki/Openmoko_Linux

http://wiki.openmoko.org/wiki/Main_Page

http://projects.goldelico.com/p/gta04-main/

http://www.openphoenux.org/

Due progetti open hardware projects che presentano smartphone con software basato su Linux.

Open Hardware – Esempi

Project Ara - Phoneblocks

Riferimenti:

http://www.projectara.com

https://phonebloks.com

Progetti relativi a smartphone con lo stesso principio di fondo: il riutilizzo dei moduli hardware.

Open Hardware – Esempi

BeagleBone Black

Riferimento:

http://beagleboard.org/

BeagleBone Black è una piattaforma di prototipazione supportata da un’ampia comunità di sviluppatori e hobbisti. Supporta diversi sistemi operativi

Open Hardware – Esempi

RaspberryPI

Riferimento:

http://www.raspberrypi.org/

La Raspberry Pi, nei suoi diversi modelli, è un single-board computer dalle dimensioni ridotte progettato nel Regno Unito dalla Raspberry Pi Foundation con l’intento di promuovere lo studio dell’informatica nelle scuole.

Open Hardware – Esempi

Tessel

Riferimento:

http://tessel.io/

Tessel e Tessel 2 sono piattaforme di prototipazione che supportano applicazioni Javascript nativamente.

Open Hardware – Esempi

Parallella

Riferimento:

http://www.parallella.org/

Il progetto Parallella ha lo scopo di rendere il parallel computing accessibile a tutti. La piattaforma Parallella è basata sui chip multicore Epiphany. Ogni chip è formato da un array di processori RISC programmabili in C/C++ e connessi attraverso una Network on Chip in un’architettura a memoria condivisa.

Open Hardware – Esempi

Arduino

Riferimento:

http://arduino.cc/

Arduino è una piattaforma di prototipazione elettronica open-source basata su hardware e software flessibili e facili da usare. E' destinata ad artisti, designer, hobbisti e a chiunque sia interessato a creare oggetti o ambienti interattivi.

Open Hardware – Esempi

Arduino

Riferimento:

http://arduino.cc/en/Main/Products

Open Hardware – Esempi

Altri progetti…