COMPUTER ARCHITECTURES, MICROCONTROLLERS AND IoT TECHNOLOGIES M - Z
Modulo MICROCONTROLLERS AND IoT

Anno accademico 2025/2026 - Docente: DAVIDE PATTI

Risultati di apprendimento attesi

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

Prerequisiti richiesti

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

Frequenza lezioni

Non obbligatoria ma consigliata

Contenuti del corso

Internet of Things e scenari applicativi (8 ore)

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

IoT enabling technologies and protocols (10 ore)

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

Microcontrollori (20 ore)

  • 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 (20 ore)

  • Principi dell'Open Hardware e piattaforme di prototipazione
  • La piattaforma ESP32
    • 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 , sistemi embedded, IoT1, 2, 5
2Microcontrollori per l'IoT3, 5
3Laboratorio5

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.

Esempi di domande e/o esercizi frequenti

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