- Laboratorio Internet of Things
- Introduzione
Syllabus del corso
Obiettivi
L’obiettivo del corso è fornire allo studente i fondamenti architetturali e metodologici alla base della disciplina Internet of Things (IoT) attraverso lezioni teoriche e pratiche. Lo studente svilupperà competenze avanzate di protocolli di comunicazione in rete, integrazioni di dispositivi embedded, sensori, attuatori e piattaforme middleware per la realizzazione di sistemi IoT. Durante le lezioni pratiche saranno sperimentati diversi scenari applicativi, quali ad esempio quelli di home automation, manufacturing, metering.
Contenuti sintetici
L’insegnamento è costituito da una parte teorica e una parte di esercitazioni. La parte teorica ha come scopo quello di esplorare i principali architetture e protocolli di comunicazione in ambito IoT e esplorare le principali tecnologie che definiscono l’ecosistema cosiddetto Web of Things (WoT). La parte di esercitazioni ha lo scopo di approfondire l’ecosistema IoT e WoT da un punto di vista pratico: reti di sensori smart, embedded systems, protocolli di rete.
Programma esteso
- Introduzione ad Internet of Things;
- La sensoristica (tipologia di sensori, caratterizzazione dei dati)
- Reti IoT (LPWAN e LoRa, Reti cellulari e NB-IoT, Reti Industry-specific)
- Protocolli IoT (HTTP, CoAP, MQTT, AMQP, 6LoWPAN);
- Piattaforme IoT;
- Web of Things;
- Designing APIs for Things based on the REST principles;
- Implementing RESTful Things with HTTP and WebSockets (MQTT and CoAP)
- Casi di studio e progettazione di sistemi IoT;
Prerequisiti
Nozioni di reti di calcolatori, stack internet, linguaggi di programmazione C/C++, programmazione web.
Modalità didattica
L’insegnamento prevede una parte di lezioni teoriche che si terranno in aula e una parte di esercitazioni che si terranno in laboratorio e/o in aula e che richiederanno l’uso del proprio PC (o quello a disposizione presso i laboratori informatici dell'Ateneo). La parte esercitativa prevede lezioni pratiche, del tipo “hands on”, durante le quali lo studente può sperimentare con le proprie mani alcuni scenari applicativi configurati appositamente dal docente.
Questa parte dell'attività è funzionale a comprendere nozioni di base di Internet of Things e dei Embedded Systems.
Si prevede la condivisione di tutto il materiale didattico necessario per lo studio degli argomenti dell’insegnamento e la preparazione della prova d'esame attraverso strumenti di elearning.
Il corso verrà erogato in lingua italiana, eccetto che per i termini inglesi che saranno in inglese ed è obbligatoria la frequenza.
Materiale didattico
- Internet of Things: A Hands-on Approach, by Arshdeep Bahga and Vijay Madisetti, 2015, Publisher: Universities Press, ISBN: 978-8173719547 ()
- Building the Web of Things - With examples in Node.js and Raspberry Pi, by Dominique D. Guinard and Vlad M. Trifa, 2016, Publisher: Manning, ISBN: 9781617292682 ()
- GitHub del corso (https://github.com/)
- Dispense fornite dai docenti durante le lezioni (http://elearning.unimib.it/).
Periodo di erogazione dell'insegnamento
Secondo semestre
Modalità di verifica del profitto e valutazione
Esame prevede la progettazione e realizzazione di un progetto assegnato dai docenti. Il progetto sarà discusso con una prova orale che potrà comprendere anche domande sulla parte teorica del corso.
Orario di ricevimento
Flavio De Paoli, Mercoledi dalle 10 alle 12
Paolo Napoletano, Lunedi dalle 14 alle 16
Aims
The aim of the course is to teach the architectural and methodological foundations of the Internet of Things (IoT) discipline through theoretical and practical lessons. The student will develop advanced skills in network communication protocols, embedded device integrations, sensors, actuators and middleware platforms for the implementation of IoT systems. During the practical lessons, different application scenarios will be tested, such as those of home automation, manufacturing, metering.
Contents
The course consists of a theoretical part and a part of exercises. The theoretical part aims at exploring the main IoT communication architectures and protocols and exploring the main technologies that define the so-called Web of Things ecosystem (WoT). The part of the exercises aims to deepen the IoT and IoWT ecosystem from a practical point of view: smart sensor networks, embedded systems, network protocols.
Detailed program
- Introduction to Internet of Things;
- Sensors (types of sensors, data characterization)
- IoT networks (LPWAN e LoRa, Cellular Nets e NB-IoT, Industry-specific nets)
- IoT protocols (HTTP, CoAP, MQTT, AMQP, 6LoWPAN);
- IoT platform;
- Web of Things;
- Designing APIs for Things based on the REST principles;
- Implementing RESTful Things with HTTP and WebSockets (MQTT and CoAP)
- Case of study and design of IoT systems;
Prerequisites
Foundations of computer networks, internet stack, programming languages C/C++, web programming
Teaching form
Lectures and assisted exercises (at labs when students’ personal PC are not available).
The practical part includes "hands on" exercizes, during which the student can realize with his own hands some application scenarios configured specifically by the teacher. This part of the activity is functional to understanding the basics of the Internet of Things and Embedded Systems. All the educational material necessary for the study of the teaching topics and the preparation of the exam will be shared through elearning tools
The course will be held in italian, except for the terms in english, which will be in english and attendance is mandatory.
Textbook and teaching resource
- Internet of Things: A Hands-on Approach, by Arshdeep Bahga and Vijay Madisetti, 2015, Publisher: Universities Press, ISBN: 978-8173719547 ()
- Building the Web of Things - With examples in Node.js and Raspberry Pi, by Dominique D. Guinard and Vlad M. Trifa, 2016, Publisher: Manning, ISBN: 9781617292682 ()
- GitHub of the course (https://github.com/)
- Teachers' slides (http://elearning.unimib.it/).
Semester
Second Semester
Assessment method
The exam consists in the design and realization of project assigned by the teachers. The project will be discussed as oral presentation and teachers can ask questions about theoretical parts of the course program.
Office hours
Flavio De Paoli, Wednesday from 10 to 12
Paolo Napoletano, Monday from 14 to 16