Offerta Didattica

 

ENGINEERING AND COMPUTER SCIENCE

INDUSTRIAL IOT

Classe di corso: LM-32, 18 - Classe delle lauree magistrali in Ingegneria informatica
AA: 2022/2023
Sedi: MESSINA
SSDTAFtipologiafrequenzamoduli
ING-INF/05CaratterizzanteLiberaLiberaNo
CFUCFU LEZCFU LABCFU ESEOREORE LEZORE LABORE ESE
64024824024
Legenda
CFU: n. crediti dell’insegnamento
CFU LEZ: n. cfu di lezione in aula
CFU LAB: n. cfu di laboratorio
CFU ESE: n. cfu di esercitazione
FREQUENZA:Libera/Obbligatoria
MODULI:SI - L'insegnamento prevede la suddivisione in moduli, NO - non sono previsti moduli
ORE: n. ore programmate
ORE LEZ: n. ore programmate di lezione in aula
ORE LAB: n. ore programmate di laboratorio
ORE ESE: n. ore programmate di esercitazione
SSD:sigla del settore scientifico disciplinare dell’insegnamento
TAF:sigla della tipologia di attività formativa
TIPOLOGIA:LEZ - lezioni frontali, ESE - esercitazioni, LAB - laboratorio

Obiettivi Formativi

- Fornire le conoscenze di base sugli aspetti teorici e pratici legati alla progettazione e all’analisi dei sistemi cyber-fisici con particolare riferimento alle tecniche di modellizzazione, alla comunicazione in ambito industriale e ai requisiti di affidabilità che ne derivano. Fornire un quadro generale delle varie categorie di tecnologie e protocolli disponibili e i principi di base del loro impiego. - Consentire agli studenti di essere in grado di realizzare prototipi funzionali o simulazioni accurate di sistemi IoT industriali mediante l’applicazione delle metodologie apprese. - Favorire l’autonomia dello studente che sarà messo in grado di avere una visione critica, influenzata dai modelli, sulle principali problematiche riguardanti i sistemi cyber-fisici in ambito industriale quali la presenza di requisiti real-time, i trade-off tra affidabilità e prestazioni ed i vincoli in termini di sicurezza, e di essere in grado di ideare e progettare in autonomia un sistema basato su IoT per l’industria, tenendo conto dell’insieme dei requisiti presenti. - Far acquisire la terminologia di base e la capacità di interloquire con linguaggio tecnico appropriato alla disciplina. Lo studente sarà messo in grado di comunicare le motivazioni delle scelte tecniche adottate e di rappresentare adeguatamente i risultati ottenuti. - Sviluppare nello studente un metodo di studio individuale adeguato a consentire l’approfondimento delle conoscenze acquisite. Fornire una capacità di aggiornamento autonomo rispetto all’avanzamento delle tecnologie abilitanti con particolare riferimento agli strumenti per la modellizzazione, la progettazione e la simulazione, come anche gli ambienti di sviluppo disciplinato ed esecuzione protetta, impiegati nell’ambito dei sistemi IoT industriali, ed ai principali standard per pile protocollari

Learning Goals

- Provide basic knowledge on the theoretical and practical aspects related to the design and analysis of cyber-physical systems with particular reference to modeling techniques, communications in industrial settings, and the ensuing reliability requirements. Provide an overview of the various categories of technologies and protocols available and the basic principles of their use. - Allow the students to be able to create working prototypes or accurate simulations of industrial IoT systems by applying the learned methodologies. - Encourage the development of students' autonomy. Students will be able to have a critical view, informed by models, on the main problems concerning cyber-physical systems in industrial settings such as the presence of real-time requirements, the tradeoffs between dependability and performance, and the constrains in terms of security, and to independently devise and design an IoT-based system for the industry, considering all the requirements. - To acquire basic terminology and the ability to speak with technical language appropriate to the discipline. The student will be able to communicate the reasons for the technical choices made and to adequately represent the results obtained. - Develop in the student an individual study method suitable to allow the deepening of the knowledge acquired. Provide an independent capacity of knowledge update with respect to the advancement of enabling technologies with particular reference to the modeling, design and simulation tooling, as well as disciplined development and safe runtime environments, used in industrial IoT systems, and to the main standard protocol stacks.

Metodi didattici

Il corso, al fine di raggiungere gli obiettivi formativi previsti, si svolge prevalentemente attraverso lezioni frontali in laboratorio. Sono inoltre previste esercitazioni in laboratorio guidate dal docente, con lo scopo di stimolare la capacità di applicare la conoscenza acquisita durante le lezioni frontali. Tutte le attività sono svolte con supporto di slide delle lezioni.

Teaching Methods

To achieve the expected learning goals, the course mainly consists of lectures in the lab. Planned are also guided exercises in the lab with teacher support, with the purpose of fostering the ability to apply the knowledge acquired through lectures. All activities are carried out with the aid of lecture slides.

Prerequisiti

Conoscenze di base di logica matematica (variabili booleane, operazioni logiche, teoria degli insiemi), analisi matematica (successioni, limiti, equazioni differenziali), di geometria differenziale (calcolo vettoriale e matriciale), dei principi della comunicazione elettrica, di reti di calcolatori (modelli di riferimento ISO-OSI e TCP/IP), di architettura degli elaboratori (unità di controllo, unità aritmetico-logica, memorie), di sistemi operativi (processi, thread, schedulazione), di informatica teorica (complessità computazionale), di programmazione a basso livello (paradigma procedurale, puntatori).

Prerequisites

Basic knowledge of formal logic (boolean variables, logic operations, set theory), calculus (sequences, limits, differential equations), differential geometry (vector and matrix analysis), principles of electric communication, computer networks (ISO-OSI and TCP/IP reference models), computer architecture (control unit, logic arithmetic unit, memories), operating systems (process, thread, scheduling), computer science (computational complexity), low-level programming (procedural paradigm, pointers).

Verifiche dell'apprendimento

Il corso prevede un’attività di progettazione sotto forma di realizzazione di un prototipo e di un elaborato scritto. L’obiettivo è consentire agli studenti di dimostrare la capacità di realizzare prototipi o simulazioni accurate di sistemi IoT industriali mediante l’applicazione delle metodologie apprese. L'argomento dell’attività di progettazione viene concordato con il docente. L’attività viene sottoposta al giudizio del docente che potrà approvare o respingere il progetto. Gli studenti per i quali il progetto viene approvato sono ammessi alla prova orale. L’obiettivo di tale prova è di verificare il livello di conoscenza acquisito dallo studente e la sua capacità di comunicare le motivazioni delle scelte tecniche adottate nonché di rappresentare adeguatamente i risultati ottenuti. Il voto finale è espresso in trentesimi e tiene conto della complessità dell’attività di progettazione e della qualità della prova orale.

Assessment

The course includes a design activity in the form of the creation of a prototype and a written paper. The goal is to allow students to demonstrate the ability to prototype or accurately simulate industrial IoT systems by applying the methodologies learned. The topic of the design activity must be agreed with the teacher before the inception of any such activity. The design activity is subjected to the evaluation of the teacher who can approve or reject the project. Students for whom the project is approved are admitted to the oral (interview-based) exam. The objective of the oral exam is to verify the level of knowledge acquired by the student and his ability to communicate the reasons for the technical choices adopted as well as to adequately represent the results obtained. The final grade is out of thirty and factors in the complexity of the design activity and the quality of the oral exam.

Programma del Corso

- INTRODUZIONE ALL’IIOT: definizioni e terminologia, relazione tra Cyber- Physical Systems ed Internet of Things, IoT per l’Industria 4.0, campi applicativi: smart manufacturing (CIM), automotive (ADAS, autonomous driving), requisiti. - TECNOLOGIE ABILITANTI PER L’IIOT: pile protocollari low-energy/long- range. - SERVICE-ORIENTED IIOT: API Web, protocolli constrained, modello pub- sub. - COMUNICAZIONE IN AMBITO INDUSTRIALE: cenni sui sistemi di controllo distribuito ed IEC 62451, IEEE 802.1AS, IEC 61784/61158 e relativi profili, IEEE 802.15.4 ed estensioni per traffico real-time, protocollo Thread. - MODELLAZIONE DI CPS: cenni sul controllo retroazionato e Digital Twin, Actor model, sistemi discreti, macchine a stati finiti, macchine a stati estese, nondeterminismo, tracce. - SISTEMI IBRIDI: modelli modali, automi temporizzati, composizione concorrente, gerarchie di macchine a stati. - CALCOLO CONCORRENTE: modelli sincrono-reattivi, modelli temporizzati, modelli time-triggered, modelli basati su flussi dati, ambienti di sviluppo basati su flussi – Node-RED e DNR, supervisione presso stazioni di controllo – cruscotti. - PRINCIPI DI PROGETTAZIONE DI CPS: trasduttori e loro caratterizzazione, tipi di processori, memorie ed I/O, multitasking e schedulazione, cenni introduttivi su schedulazione real-time ed RTOS. - ELEMENTI DI PROGRAMMAZIONE SICURA ED AFFIDABILE: undefined behaviour, controlli a runtime ed a compile-time, reference counting, linguaggi e tool. - METODI DI PROGETTAZIONE PER L’IOT: sincronizzazione e coordinazione, clock logici, protocolli di consistenza, tolleranza ai guasti, consenso distribuito - Paxos, Raft, PBFT. - REGISTRI DISTRIBUITI PER L’IOT: blockchain, machine virtuali decentralizzate e smart contract, casi d’uso per l’Industrial IoT. - ANALISI E VERIFICA DI PROGETTO: invarianti, logica temporale lineare, equivalenza e raffinamento, simulazione, analisi di raggiungibilità, model checking, analisi quantitativa basata su grafi, tempo di esecuzione, limiti, proprietà di sicurezza.

Course Syllabus

- INTRODUCTION TO IIOT: definitions and terminology, relationship between Cyber-Physical Systems and the Internet of Things, IoT for Industry 4.0, application domains: smart manufacturing (CIM), automotive (ADAS, autonomous driving), requirements. - ENABLING TECHNOLOGIES FOR IIOT: low-energy/long-range protocol stacks. - SERVICE-ORIENTED IIOT: Web API, constrained protocols, pub-sub model. - INDUSTRIAL COMMUNICATION: introductory notes on Distributed Control Systems and IEC 62451, IEEE 802.1AS, IEC 61784/61158 and corresponding profiles, IEEE 802.15.4 and extensions for real-time traffic, Thread protocol. - CPS MODELING: introductory notes on feedback control and Digital Twin, Actor model, discrete systems, finite-state machines, extended state machines, nondeterminism, traces. - HYBRID SYSTEMS: modal models, timed automata, concurrent composition, hierarchical state machines. - CONCURRENT COMPUTATION: synchronous-reactive models, timed models, time-triggered models, dataflow models, flow-based programming tools – Node-RED and DNR, control room monitoring – dashboards. - DESIGN PRINCIPLES FOR CPS: transducers and their characterization, types of processors, memories and I/O, multitasking and scheduling, introductory notes on real-time scheduling and RTOS. - SAFE AND RELIABLE PROGRAMMING: undefined behavior, runtime and compile-time checks, reference counting, languages and tooling. - DESIGN METHODOLOGIES FOR IOT: synchronization and coordination, logical clocks, consistency protocols, fault tolerance, distributed consensus - Paxos, Raft, PBFT. - DISTRIBUTED LEDGERS IN IOT: blockchains, decentralized virtual machines and smart contracts, use cases in Industrial IoT. - DESIGN ANALYSIS AND VERIFICATION: invariants, linear temporal logic, equivalence and refinement, simulation, reachability analysis, model checking, graph-based quantitative analysis, execution time, bounds, security properties.

Testi di riferimento: - E. A. Lee & S. A. Seshia, “Introduction to Embedded Systems – A Cyber-Physical Systems Approach.”, 2nd edition, MIT Press, 2017 - R. Zurawski, “Industrial Communication Technology Handbook.”, 2nd edition, CRC Press, 2017

Elenco delle unità didattiche costituenti l'insegnamento

Docente: GIOVANNI MERLINO

Orario di Ricevimento - GIOVANNI MERLINO

GiornoOra inizioOra fineLuogo
Venerdì 15:00 17:00Dipartimento di Ingegneria, piano 7, blocco B, stanza 743
Note: E' vivamente consigliato contattare il docente all'indirizzo e-mail gmerlino@unime.it per prenotarsi, come anche per fissare eventualmente un appuntamento in giorni ed orari diversi da quelli previsti.
  • Segui Unime su:
  • istagram32x32.jpg
  • facebook
  • youtube
  • twitter
  • UnimeMobile
  • tutti