IOT SYSTEMS AND TECHNOLOGIES A - L

Anno accademico 2021/2022 - 3° anno
Docenti: Vincenzo CATANIA e Davide PATTI
Crediti: 6
SSD: ING-INF/05 - Sistemi di elaborazione delle informazioni
Organizzazione didattica: 150 ore d'impegno totale, 100 di studio individuale, 35 di lezione frontale, 15 di esercitazione
Semestre:
ENGLISH VERSION

Obiettivi formativi

Conoscere il paradigma dell’Internet of Things (IoT) e i diversi scenari applicativi. Conoscere e saper programmare un sistema basato su microcontrollori. Conoscere la problematiche e le soluzioni per l'interfacciamento con il mondo fisico. Saper progettare soluzioni IoT mediante l'uso di piattaforme di prototipazione quali Arduino.

Conoscenza e capacità di comprensione

Lo studente sarà in grado di rielaborare quanto presentato rispetto ad ognuno degli elementi di un sistema IoT in modo da integrare le diverse componenti al fine di realizzare un sistema complesso che interagisce con l'ambiente circostante rispetto ad un insieme di requisiti progettuali.

Conoscenze applicate e capacità di comprensione

Lo studente sarà in grado di applicare le nozioni teoriche in un ambiente di laboratorio nel quale sperimentare in prima persona le criticità che occorrono nel momento in cui le nozioni teoriche riguardo i vari componenti vengono applicate su componenti reali.

Autonomia di giudizio

Sviluppo di capacità di giudizio autonomo per valutare la scelta dei componenti (sensori e attuatori ) per lo sviluppo di un prototipo di un sistema IoT:

Abilità comunicative

Sviluppo di abilità comunicative per descrivere le potenzialita' di utilizzo di un sistema IoT

Capacità di apprendimento

Essere in grado di utilizzare le conoscenze e competenze apprese per la progettazione di un sistema IoT basato su board.


Modalità di svolgimento dell'insegnamento

Lezioni frontali ed esercitazioni di laboratorio.

Qualora l'insegnamento venisse impartito in modalità mista o a distanza potranno essere introdotte le necessarie variazioni rispetto a quanto dichiarato in precedenza, al fine di rispettare
il programma previsto e riportato nel syllabus.


Prerequisiti richiesti

Conoscenza delle architetture presentate nel corso di Calcolatori Elettronici, della programmazione assembly e del linguaggio C.


Frequenza lezioni

La frequenza alle lezioni non è obbligatoria ma fortemente consigliata.


Contenuti del corso

Internet of Things e scenari applicativi

  • Smart Objects and the Internet of Things: Overview & Principles
  • Making sense of IoT

IoT enabling technologies and protocols

  • Architetture per l’IoT
  • IoT Building Blocks
    • Identificazione
    • Sensing
    • Comunicazione
    • Computazione
    • Servizi
    • Semantica
  • Protocolli per l’IoT: REST, CoAP.

Microcontrollori

  • Tassonomia
  • Generalità sui microcontrollori
  • CPU di un microcontrollore: modelli architetturali e repertorio di istruzioni.
  • Interfacciamento con il mondo fisico
    • Problematiche e modelli operativi
    • ADC e DAC
    • Gestione dell’I/O: Memory-Mapped I/O, Programmed I/O, Interrupts, Direct Memory Access
    • Periferiche: porte di I/O e loro programmazione, clock, timer
    • Protocolli di comunicazione wired: UART/USART, SPI, I2C.

Microcontrollori per l’IoT & sistemi di prototipazione

  • Principi dell'Open Hardware e piattaforme di prototipazione
  • La piattaforma Arduino
    • Input digitali e analogici semplici
    • Ricavare input dai sensori
    • Output visivo e audio
    • Controllare dispositivi esterni in remoto
    • Comunicare utilizzando Seriale, I2C e SPI
  • Hands-on (Lab)

Testi di riferimento

  1. Ovidiu Vermesan and Peter Friess. Building the Hyperconnected Society IoT Research and Innovation Value Chains, Ecosystems and Markets. River Publishers Series in Communications.
  2. Making sense of IoT - How the Internet of Things became humanity’s nervous system By Kevin Ashton.
  3. Introduction to Microcontrollers, Gunther Gridling, Bettina Weiss, Version 1.4
  4. Michael Margolis. Arduino. Progetti e soluzioni. Tecniche Nuove.
  5. Materiale fornito dal docente sotto forma di slides, dispense, e risorse online.


Programmazione del corso

 ArgomentiRiferimenti testi
1Trend tecnologici e sistemi embedded
2Dal sensore al sensore “smart”
3Internet of Things e scenari applicativi
4Interfaccia con il mondo fisico: Principi di funzionamento, Sistemi di acquisizione, Campionamento, quantizzazione e codifica, ADC and DAC, Accesso ai dispositivi di I/O Interfaccia di I/O
5Interfaccia con il mondo fisico: Meccanismi per l’Input/Output: memory-mapped I/O, programmed I/O, interrupts, direct memory access
6Microcontrollori per l'IoT: Generalità sui microcontrollori1, 3, 5 
7Microcontrollori per l'IoT: CPU di un microcontrollore: architettura e repertorio di istruzioni1, 5 
8Microcontrollori per l'IoT: Periferiche: porte di I/O, polling, interruzioni, ADC, clocks, timers1, 5 
9Microcontrollori per l'IoT: Interfacciamento: sensori, display LCD, motori1, 3, 5 
10Microcontrollori per l'IoT: Protocolli di comunicazione wired: UART/USART, SPI, I2C, 1-wire.1, 5 
11Microcontrollori per l'IoT: Principi dell'Open Hardware3, 5 
12Sistemi di Prototipazione: La piattaforma Arduino, Le comunicazioni seriali, Input digitali e analogici semplici, Ricavare input dai sensori, Output visivo e audio3, 5 
13Sistemi di Prototipazione: Controllare dispositivi esterni in remoto, Comunicare utilizzando I2C e SPI3, 5 
14Sistemi di Prototipazione: Generalità sulle FPGA, Prototipazione su Xilinx FPGA4, 5 
15Smart Sensors: Embedded microprocessor cores: Microprocessors, microcontrollers, DSP, ASIP, GPU.
16Smart Sensors: Embedded memory technologies: DRAM, SRAM, FLASH, EPROM.
17Smart Sensors: I/O controllers
18Virtualizzazione e Sistemi Operativi per l’IoT

Verifica dell'apprendimento

Modalità di verifica dell'apprendimento

La valutazione finale sarà basata su:

  • Una prova scritta inerente gli argomenti di teoria trattati nel Corso.
  • Una prova pratica in laboratorio

Per accedere agli esami è condizione necessaria l'aver frequentato con esito positivo le esercitazioni di laboratorio che si terranno durante il corso.

La verifica dell’apprendimento potrà essere effettuata anche per via telematica, qualora le condizioni lo dovessero richiedere.


Esempi di domande e/o esercizi frequenti

Il materiale sarà disponibile sulla pagina del corso all'interno della piattaforma Studium.UniCT.