- Docente: Luciano Bononi
- Credits: 6
- SSD: INF/01
- Language: English
- Moduli: Luciano Bononi (Modulo 1) Marco Di Felice (Modulo 2)
- Teaching Mode: Traditional lectures (Modulo 1) Traditional lectures (Modulo 2)
- Campus: Bologna
-
Corso:
Second cycle degree programme (LM) in
Artificial Intelligence (cod. 9063)
Also valid for Second cycle degree programme (LM) in Electronic Engineering (cod. 0934)
Second cycle degree programme (LM) in Computer Science (cod. 5898)
-
from Feb 22, 2024 to May 16, 2024
-
from Feb 20, 2024 to May 14, 2024
Learning outcomes
At the end of the course, the student understands the architectures and methodologies at the basis of the Internet of Things (IoT) following a data centric approach. The student has a deep understanding of network protocols, integration of mobile and pervasive end-devices, middleware platforms for M2M-based IoT systems, edge/distributed/gateway computing principles, new services, service platforms and innovative application scenarios.
Course contents
The classes will be in English (previous years' editions were in Italian). The class will introduce the enabling technologies, protocols, software architectures and applications for the development of the emerging Internet of Things (IoT) paradigm. After a short introduction to pervasive computing and the emerging fields of applications (e.g. Industry 4.0, domotics, intelligent transportation systems, wearable devices, etc.) the class will provide a exhaustive illustration of the enabling components of IoT systems. These will include wireless communications among end-devices and towards infrastructures, data processing, languages for the development of applications and prototypes (Arduino, STM32 Nucleo, etc.). Specifically, the components of typical IoT system will be illustrated by following a data-oriented approach: from data generation on behalf of sensors to data transmission in WSAN, WPAN, WLAN, up to cloud streaming and storages, and including the data processing and integration in complex software systems.
A short summary of the course contents includes:
Introduction to IoT systems: definitions, applications, enabling technologies
IoT components: from sensors to gateway.
- Sensors and actuators, sketchy illustration of design principles of electronic circuit boards, sensing and data acquisition policies.
- Wireless communication and coding technologies for IoT
- Machine-to-machine (M2M) communication among devices: wireless technologies for WPAN (BLE, IEEE 802.15.4, Z-Wave, etc.), WLAN and WSAN (LoRA, Dash7, Spirit, etc.)
- Network architectures and routing (6LoWPAN, RPL)
- Microcontrollers and System on Chip (SoC) prototypes’ programming (e.g. Arduino, STM32 Nucleo, ESP8266, etc.)
IoT components: from gateway to cloud.
- Data acquisition protocols: XMPP, CoAP, MQTT, AMQP, WebSocket, etc.
- Architectures for data storage and processing: cloud/fog/edge computing
- IoT platforms: AWS IoT, Watson IoT, ThingSpeak, etc.
- IoT & Big-data
IoT components: from cloud to applications.
- Web of Things and Semantic Web 3.0 Standard for M2M and IoT
- Machine learning principles (classification, clustering, regression, anomaly detection, etc.) and applications for sensor data analysis.
- Frameworks for integrated development of IoT applications: AllJoyn, Google Thing, Apple HomeKit, etc.
IoT Open Issues and bottlenecks.
- Privacy and Security management;
- Energy efficiency for end-devices and power saving techniques;
- Scalability.
Readings/Bibliography
Slides, link to book chapters, scientific papers, online resources indicated on the course's website.
Recommended book: Riccardo Melen, Vittorio Trecordi, "IoT Networking", Pearson, ISBN 8891931934, ISBN13 978-8891931931, 336 pp. (cover price 34 EUR).
Teaching methods
Lessons and experimental classes with PC and projectors.
The classes and slides are in English.
In relation to the kind of activities and didactical methods adopted, the attendance to this class will require the preliminary participation of all the students to the Modules 1 and 2 of the Safety rules on study places, which can ne followed remotely in e-learning via the following link: [https://elearning-sicurezza.unibo.it/ ]
Assessment methods
The final assessment (exam) will include:
(i) the oral exam, with questions on the whole program, and a seminar on behalf of each student on a topic relevant for the IoT and course program, to be agreed with the teaching staff; The seminar and oral part will determine the 60% of the evaluation score.
(ii) a project, based on proposed lines provided by teaching staff or students themselves (in the latter case it is mandatory to have a preliminary definition and approval agreed with the teaching staff). The project discussion part will determine the 40% of the evaluation score.
Teaching tools
The material (slides and code) illustrated in the lessons will be made available to students on the website of the course on Virtuale platform (https://virtuale.unibo.it). The website will also contain: links to SW tools available for the development of the project, links to sources of information (e.g. forums, scientific papers, etc.) related to the topics of the classes.
Links to further informationOffice hours
See the website of Luciano Bononi
See the website of Marco Di Felice
SDGs
This teaching activity contributes to the achievement of the Sustainable Development Goals of the UN 2030 Agenda.