IOT SYSTEMS AND TECHNOLOGIES M - Z
Anno accademico 2019/2020 - 3° annoCrediti: 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: 2°
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.
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
- Ovidiu Vermesan and Peter Friess. Building the Hyperconnected Society IoT Research and Innovation Value Chains, Ecosystems and Markets. River Publishers Series in Communications.
- Making sense of IoT - How the Internet of Things became humanity’s nervous system By Kevin Ashton.
- Introduction to Microcontrollers, Gunther Gridling, Bettina Weiss, Version 1.4
- Michael Margolis. Arduino. Progetti e soluzioni. Tecniche Nuove.
- Materiale fornito dal docente sotto forma di slides, dispense, e risorse online.
Programmazione del corso
Argomenti | Riferimenti testi | |
---|---|---|
1 | Trend tecnologici e sistemi embedded | 5 |
2 | Dal sensore al sensore “smart” | 5 |
3 | Internet of Things e scenari applicativi | 2 |
4 | Interfaccia 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 | 5 |
5 | Interfaccia con il mondo fisico: Meccanismi per l’Input/Output: memory-mapped I/O, programmed I/O, interrupts, direct memory access | 5 |
6 | Microcontrollori per l'IoT: Generalità sui microcontrollori | 1, 3, 5 |
7 | Microcontrollori per l'IoT: CPU di un microcontrollore: architettura e repertorio di istruzioni | 1, 5 |
8 | Microcontrollori per l'IoT: Periferiche: porte di I/O, polling, interruzioni, ADC, clocks, timers | 1, 5 |
9 | Microcontrollori per l'IoT: Interfacciamento: sensori, display LCD, motori | 1, 3, 5 |
10 | Microcontrollori per l'IoT: Protocolli di comunicazione wired: UART/USART, SPI, I2C, 1-wire. | 1, 5 |
11 | Microcontrollori per l'IoT: Principi dell'Open Hardware | 3, 5 |
12 | Sistemi di Prototipazione: La piattaforma Arduino, Le comunicazioni seriali, Input digitali e analogici semplici, Ricavare input dai sensori, Output visivo e audio | 3, 5 |
13 | Sistemi di Prototipazione: Controllare dispositivi esterni in remoto, Comunicare utilizzando I2C e SPI | 3, 5 |
14 | Sistemi di Prototipazione: Generalità sulle FPGA, Prototipazione su Xilinx FPGA | 4, 5 |
15 | Smart Sensors: Embedded microprocessor cores: Microprocessors, microcontrollers, DSP, ASIP, GPU. | 5 |
16 | Smart Sensors: Embedded memory technologies: DRAM, SRAM, FLASH, EPROM. | 5 |
17 | Smart Sensors: I/O controllers | 5 |
18 | Virtualizzazione e Sistemi Operativi per l’IoT | 5 |
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.