Vinaora Nivo Slider 3.x

Stella inattivaStella inattivaStella inattivaStella inattivaStella inattiva

SSD: ING-IND/03
CFU: 6

Insegnamenti propedeutici (se previsti dall'Ordinamento del CdS)

Nessuno.

Eventuali prerequisiti

Conoscenze di base sulla dinamica dei sistemi e sulle tecniche di controllo classico. Utilizzo del Matlab/Simulink per la simulazione dei sistemi dinamici.

Obiettivi formativi

Il corso ha come primo obiettivo quello di fornire agli allievi le conoscenze metodologiche necessarie per l’analisi della risposta dinamica di un velivolo ad ala fissa, con o senza pilota a bordo, a una qualsiasi causa perturbatrice a partire da una condizione iniziale di equilibrio. Esso fornisce gli elementi di base della meccanica del volo e successivamente affronta il problema della risposta dinamica del velivolo nello spazio di stato.

La seconda parte del corso fornisce allo studente gli elementi per la progettazione di algoritmi di incremento artificiale della stabilità, di algoritmi di incremento della controllabilità e di autopiloti. I problemi di controllo sono affrontati con riferimento a esempi applicativi e mediante l’uso di tecniche di controllo sia classico che moderno.

Risultati di apprendimento attesi

Conoscenza e capacità di comprensione

Il percorso formativo intende fornire agli studenti gli strumenti metodologici per comprendere le prestazioni e le caratteristiche dinamiche di un velivolo ad ala fissa, per leggere le specifiche di un sistema di controllo di volo e comprendere quali siano le tecniche più idonee per soddisfarle.

Capacità di applicare conoscenza e comprensione

Al termine del corso, gli studenti saranno in grado di valutare le prestazioni di un velivolo ad ala fissa, progettare un algoritmo di controllo che ricade nella classe degli algoritmi di incremento artificiale della stabilità, degli algoritmi di incremento della controllabilità o degli autopiloti. I problemi di controllo sono affrontati con riferimento a esempi applicativi e mediante l’uso di tecniche di controllo sia classico che moderno. Lo studente sarà altresì in grado progettare uno stimatore ottimo dello stato del velivolo e di simulare la dinamica del velivolo sia a ciclo aperto che a ciclo chiuso.

Programma - Syllabus

  • Introduzione ai principi di funzionamento dei moderni velivoli con particolare riferimento alla manovrabilità e al controllo
  • Modello di atmosfera standard
  • Volo rettilineo, uniforme, simmetrico, orizzontale
  • Volo in discesa e volo librato
  • Volo in salita
  • Quota di tangenza teorica e pratica
  • Fattore di carico e diagramma di manovra
  • La virata e la richiamata
  • Le manovre di decollo e di atterraggio
  • Cenni alla stabilità statica longitudinale e latero-direzionale
  • Equazioni generali del moto del velivolo
  • Derivate di stabilità
  • Modello linearizzato della dinamica e modi caratteristici longitudinali e latero-direzionali
  • Qualità di volo e loro classificazione
  • Specifiche richieste a un sistema di controllo di volo
  • Sistemi di aumento della stabilità
  • Sistemi di aumento della controllabilità
  • Autopiloti progettati con tecniche di controllo classico
  • Applicazione del controllo ottimo alla progettazione di algoritmi di controllo di volo
  • Applicazioni dell’assegnamento dei poli e dell’autostruttura al controllo di volo
  • Stima dello stato e filtraggio alla Kalman
  • Controllo H-infinito applicato ai problemi di controllo di volo
  • Simulazione della dinamica a ciclo chiuso di un velivolo ad ala fissa in ambiente Matlab-Simulink

Materiale didattico

Si veda il sito web del docente della materia.

Modalità di svolgimento dell'insegnamento

Il docente utilizzerà: a) lezioni frontali per l’80% delle ore totali, b) esercitazioni in aula mediante l’utilizzo del software MATLAB/SIMULINK (https://www.mathworks.com/) per circa il 20% delle ore totali.

Verifica di apprendimento e criteri di valutazione

Modalità di esame

L'esame si articola in prova solo orale e discussione di elaborato progettuale.

La prova di esame consiste di due parti:

  • 2 o 3 domande orali sulla meccanica e/o dinamica del volo dei velivoli ad ala fissa;
  • discussione di un elaborato sviluppato in ambiente Matlab/Simulink dalla quale possono scaturire domande sugli algoritmi di controllo di volo e loro implementazione.

 

Stella inattivaStella inattivaStella inattivaStella inattivaStella inattiva

SSD: ING-IND/34
CFU: 9

Insegnamenti propedeutici (se previsti dall'Ordinamento del CdS)

Foundations of Robotics.

Eventuali prerequisiti

Conoscenze di base sulle tecniche di programmazione; conoscenze di base sui sistemi di controllo a ciclo chiuso.

Obiettivi formativi

Il corso di Robotica Medica si pone l’obiettivo di fornire le nozioni e le basi di progettazione, realizzazione e controllo di sistemi robotici per applicazioni mediche (e.g., in chirurgia e riabilitazione). Oltre all’utilizzo di metodi per la modellazione e il controllo di sistemi robotici costituiti da catene cinematiche rigide, come alcuni robot manipolatori attualmente utilizzati in chirurgia e riabilitazione, saranno forniti metodi teorici per la modellazione e il controllo di sistemi che prevedono parti soffici integrate nella struttura o strutture completamente soffici, robot capaci di riconfigurarsi e adattarsi all’ambiente, nonché robot indossabili come protesi ed esoscheletri. Attraverso applicazioni pratiche delle conoscenze acquisite mediante l’utilizzo di simulatori per casi studio, saranno fornite conoscenze di base dei software più comuni usati per la programmazione di robot.

Risultati di apprendimento attesi

Conoscenza e capacità di comprensione

Lo studente deve dimostrare di conoscere i sistemi robotici attualmente utilizzati in chirurgia e riabilitazione, in particolare la struttura meccanica e le sue caratteristiche, i tipici sistemi di controllo e i software utilizzati per la programmazione.  Lo studente deve dimostrare di conoscere le problematiche relative all’interazione paziente/robot-medico/robot e i conseguenti requisiti necessari al corretto ed efficace funzionamento dei sistemi robotici. Lo studente deve dimostrare di aver acquisito le tecniche di modellazione e controllo di sistemi robotici caratterizzati da strutture soft che interagiscono in stretto contatto fisico con l’essere umano, includendo i sistemi mininvasivi per la chirurgica e i sistemi indossabili per la riabilitazione.

Capacità di applicare conoscenza e comprensione

Lo studente deve dimostrare di saper progettare un sistema di controllo, scelto tra i sistemi classici studiati, per adattarlo ad una particolare applicazione medica utilizzando uno dei sistemi robotici più diffusi in chirurgia e/o in riabilitazione (come il da Vinci, il KUKA etc). Lo studente deve essere in grado di saper implementare tale sistema di controllo utilizzando strumenti di simulazione forniti durante il corso. A tal fine, lo studente deve dimostrare di saper utilizzare strumenti software tipicamente utilizzati in robotica (tra cui ROS, Gazebo, Matlab/Simulink, C++, Python, CoppeliaSim).  Inoltre, lo studente deve dimostrare di avere conoscenza di base di tipici strumenti open-source di prototipazione rapida, elettronica e stampa 3D.

Programma - Syllabus

  1. Introduzione alla robotica medica.
  2. Classificazione di robot chirurgici e applicazioni.
  3. Controllo dell’interazione (controllo di impedenza e forza; controllo di impedenza variabile, gestione della priorità di più task in manipolatori ridondanti).
  4. Teleoperazione unilaterale e bilaterale: passività e stabilità.
  5. Interfacce aptiche.
  6. Controllo condiviso e semi-autonomo.
  7. Sistema robotico da Vinci e da Vinci Research Kit (cinematica, dinamica, architettura di controllo, software per il controllo).
  8. Esercitazioni sul sistema da Vinci Research Kit.
  9. Esempi di tecniche di apprendimento applicate al controllo di robot per applicazioni chirurgiche.
  10. Introduzione all’impiego di robot continui e snake-like alla chirurgia robotica.
  11. Modellazione di meccanismi continui.
  12. Controllo della interazione e della locomozione di robot continui iper-ridondanti.
  13. Introduzione alla robotica soft.
  14. Modellazione di robot soft.
  15. Controllo di robot soft.
  16. Introduzione alla robotica riabilitativa e alla robotica per assistenza.
  17. Esercitazioni sul robot KUKA MED.
  18. Materiali e metodi per la misura di segnali fisiologici (EMG, EEG, ECoG, eye tracking).
  19. Esoscheletri e robotica indossabile: principi costruttivi e strategie di controllo.
  20. Attuatori ad impedenza variabile.
  21. Protesi robotiche: mani e gambe robotiche.
  22. Principi di controllo della locomozione.
  23. Progetto meccanico di mani robotiche, modellazione, sensoristica e attuazione.
  24. Esercitazioni sulla PRISMA Hand II.
  25. Controllo della presa e della manipolazione.
  26. Esempi di tecniche di apprendimento applicate alla manipolazione e alla locomozione.

Materiale didattico

Si veda il sito web del docente della materia.

Modalità di svolgimento dell'insegnamento

Il docente utilizzerà: a) lezioni frontali per circa il 70% delle ore totali, b) esercitazioni in aula mediante l’utilizzo

di strumenti di simulazione di robot noti per la chirurgia e la riabilitazione, basati su ROS, Gazebo e CoppeliaSim, c) 3/4 seminari di 2 ore tenuti da medici, ricercatori robotici e rappresentanti dell’industria di robot medicali.

Verifica di apprendimento e criteri di valutazione

Modalità di esame

L'esame si articola in prova solo orale e discussione di elaborato progettuale. In caso di prova scritta i quesiti sono: a risposta libera.

L’elaborato in simulazione deve essere consegnato al docente una settimana prima della prova orale e poi discusso all’orale mediante una presentazione dei risultati ottenuti. L’elaborato ha l’obiettivo di verificare la capacità dello studente di progettare semplici algoritmi di controllo per applicazioni di robotica medica (a scelta chirurgica o riabilitativa), utilizzando uno dei simulatori (a scelta dello studente), basati su ROS, Gazebo e CoppeliaSim, i quali sono stati introdotti e utilizzati durante le esercitazioni del corso. Il colloquio orale segue la discussione dell’elaborato ed è rivolto ad una discussione critica della/e soluzione/i data/e dallo studente ai problemi proposti nell’elaborato in simulazione, ed all’accertamento dell’acquisizione dei concetti e dei contenuti introdotti durante le lezioni.

 

Stella inattivaStella inattivaStella inattivaStella inattivaStella inattiva

SSD: ING-IND/32
CFU: 6

Insegnamenti propedeutici (se previsti dall'Ordinamento del CdS)

Programmazione.

Eventuali prerequisiti

Conoscenze di base su:

  • macchine elettriche;
  • elettronica di potenza;
  • convertitori statici di energia elettrica;
  • sistemi di controllo a ciclo chiuso.

Obiettivi formativi

Obiettivo dell'insegnamento è quello di fornire agli studenti competenze avanzate sul dimensionamento, sul controllo e sull'esercizio di veicoli elettrici ed ibridi che consentano sia l'analisi delle prestazioni energetiche e dinamiche dei veicoli, tenendo conto delle diverse tipologie di sorgenti di bordo sia a batterie che a celle a combustibile.

Risultati di apprendimento attesi

Conoscenza e capacità di comprensione

Lo studente deve dimostrare di:

  • aver appreso gli strumenti metodologici per l’analisi e il dimensionamento sia dei singoli sottosistemi di un veicolo elettrico ed ibrido- con particolare riferimento alle architetture dei veicoli e la loro gestione ottimizzata dei flussi di potenza in presenza di una o più sorgenti di bordo;
  • conoscere i punti di forza e le criticità delle diverse architetture di veicoli elettrici ed ibridi basati su differenti tipologie di macchine elettriche, convertitori e strategie di controllo.

Capacità di applicare conoscenza e comprensione

Lo studente deve dimostrare di:

  • sapere utilizzare in autonomia gli strumenti metodologici acquisiti al fine individuare le soluzioni più idonee nel caso di nuove installazioni, con particolare riferimento ai sistemi automotive;
  • saper implementare programmi di simulazione in ambiente Matlab/Simulink per l’analisi preventiva delle prestazioni dinamiche ed energetiche di un veicolo;
  • saper applicare le conoscenze teoriche acquisite attraverso esercitazioni analitiche ed esperienze sperimentali su veicoli reali

Programma - Syllabus

Introduzione – Parte Generale

  • Storia di EV
  • Gap di EV rispetto a ICE
  • Classificazione veicoli ibridi e elettrici
  • Tipologie di EV
  • Veicoli elettrici ibridi (HEV)
  • Architetture HEV

Descrizione generale del movimento del veicolo

  • Resistenza del veicolo
  • Equazione dinamica
  • Adesione pneumatico-terreno e massimo sforzo di trazione
  • Sforzo di trazione del treno di potenza e velocità del veicolo
  • Caratteristiche della centrale elettrica e della trasmissione del veicolo
  • Prestazioni del veicolo
  • Utilizzo di risparmio di carburante Risparmio di carburante
  • Prestazioni della frenata

Modellazione Veicolo Ibrido (HEV)

  • Concetto di trasmissione elettrica ibrida
  • Architetture di trasmissioni ibride elettriche serie e Parallela
  • Modellazione per l'Analisi Energetica
  • Analisi energetica a livello di veicolo
  • Equazioni del moto
  • Approcci di modellazione avanti e indietro
  • Bilancio energetico del veicolo
  • Cicli di guida

Componenti del gruppo propulsore

  • Motore a combustione interna
  • Rapporti di trasmissione e cambio meccanico
  • Sistemi di trasmissione planetari
  • Macchine elettriche
  • Motori IM, Motori PM-BR, Motori DC
  • Convertitori di potenza o Inverter Dc/Ac e Chopper Dc/Dc
  • Accumulo di energia
  • UC-Ultracondensatori e batterie
  • Celle a combustibile

Veicoli elettrici

  • Configurazioni di Veicoli Elettrici
  • Performance dei Veicoli Elettrici
  • Sforzo di trazione nella guida normale
  • Consumo di energia
  • Architettura del gruppo propulsore
  • Batterie: Panoramica Tecnologie, Caratterizzazione della batteria, Modelli matematici, Sistemi di gestione della batteria 

Strategia di controllo della potenza del veicolo (VPCS) ed Energy Management System (EMS) di HEV

  • Concetti di base di VPCS ed EMS
  • Metodologia da implementare
  • Vantaggi della gestione dell'energia
  • Classificazione delle strategie di gestione dell'energia
  • Il problema del controllo ottimale in HEV: Formulazione generale del problema
  • Principio minimo di Pontryagin per l'EMP negli HEV
  • Consumo equivalente (ECMS)
  • Strategia di minimizzazione
  • Equivalenza tra Pontryagin Principio minimo e ECMS
  • Correzione del consumo di carburante e variazione SOC
  • Controllo ottimale adattativo
  • Metodi di controllo: Adattamento basato sul feedback di SOC, Analisi e Confronto dei Metodi A-PMP, Calibrazione di strategie adattive

Casi di studio

  • Architettura parallela
  • Modello Powertrain
  • Implementazione del modello in Advisor tool : Matlab-Simulink
  • Risultati

Materiale didattico

Si veda il sito web del docente della materia.

Modalità di svolgimento dell'insegnamento

Il docente utilizzerà:

  • lezioni frontali per circa l’80% delle ore totali
  • esercitazioni in aula e in laboratorio per circa il 20% delle ore totali

Verifica di apprendimento e criteri di valutazione

Modalità di esame

L'esame si articola in prova solo orale e discussione di elaborato progettuale.

L’esame si articola in due momenti distinti, seppur contigui dal punto di vista temporale:

  • verifica di un elaborato progettuale consistente in un programma di simulazione realizzato e implementato da ciascuno studente per la modellizzazione di architetture di veicoli ibridi (peso 1/4);
  • tre domande teoriche relative ai contenuti fondamentali in cui si articola il corso (peso 3/4).

 

Stella inattivaStella inattivaStella inattivaStella inattivaStella inattiva

SSD: ING-IND/15
CFU: 

Insegnamenti propedeutici (se previsti dall'Ordinamento del CdS)

Nessuno.

Eventuali prerequisiti

Concetti fondamentali della Meccanica Classica; conoscenze di base delle problematiche, legate al funzionamento delle macchine.

Obiettivi formativi

L’obiettivo del corso è quello di educare lo studente alle problematiche di progettazione di macchine e sistemi meccanici mediante l’impiego di prototipi virtuali. Al termine del corso lo studente sarà in grado di: Impostare e sviluppare i modelli 3D di assiemi meccanici. Leggere ed interpretare correttamente un disegno meccanico. Operare la scelta dei mezzi di comunicazione tecnica per la progettazione dei prodotti industriali. Rappresentare per esigenze costruttive particolari meccanici e per esigenze funzionali e di montaggio complessivi semplici. Realizzare in maniera interattiva disegni costruttivi e schemi di assemblaggio a partire dai modelli CAD tridimensionali. Assegnare e valutare caratteristiche e proprietà di sistemi meccanici in ambiente virtuale: forme, proporzioni, materiali, tolleranze. Riconoscere gli elementi normalizzati. Gestire protocolli di riferimento per lo scambio-dati. Simulare ed analizzare in ambiente virtuale il comportamento cinematico di sistemi meccanici. Eseguire analisi strutturali agli elementi finiti (FEM) in ambiente virtuale su parti ed assiemi meccanici. Conoscere i sistemi di gestione dei dati del prodotto (PDM) e del ciclo di vita del prodotto (PLM). Impiegare le tecnologie di prototipazione virtuale e di Human modeling per l’analisi e la validazione di prodotti industriali.

Risultati di apprendimento attesi

Conoscenza e capacità di comprensione

Il percorso formativo intende fornire agli studenti gli strumenti metodologici per la progettazione e lo sviluppo di prodotti industriali mediante l’impiego di prototipi virtuali. Lo studente deve dimostrare di avere appreso quali sono i requisiti peculiari dei sistemi hardware e software dedicati alle varie fasi del processo di sviluppo prodotto ed alla gestione del suo ciclo di vita. Lo studente dovrà inoltre dimostrare la conoscenza delle fasi principali di progettazione di un sistema meccanico, dalla identificazione dei requisiti, alla costruzione del prototipo virtuale ed alla sua validazione mediante strumenti di simulazione.

Capacità di applicare conoscenza e comprensione

Lo studente deve dimostrare di saper costruire prototipi virtuali mediante software specifici per la gestione del ciclo di vita del prodotto, la modellazione geometrica, la simulazione cinematica del modello digitale (DMU), l’analisi strutturale e la validazione ergonomica. Lo studente dovrà mostrare la capacità di sviluppare un progetto concettuale di un sistema meccanico in ambiente virtuale, identificando elementi normalizzati e parti da progettare, gestendo i protocolli di riferimento per lo scambio dati e valutando i sistemi di simulazione idonei allo sviluppo ed alla validazione del progetto.

Programma - Syllabus

  • Introduzione al corso: Obiettivi, contenuti, modalità d'esame.
  • Il Digital Mock-Up (DMU), Ingegneria sequenziale e concorrente, il ciclo di sviluppo prodotto basato sul DMU. Metodologie di progettazione e pianificazione delle attività di progetto.
  • Richiami di disegno tecnico industriale: metodo delle proiezioni ortogonali, sezioni, quotatura.
  • Metodi di modellazione assistita da calcolatore.
  • Modellazione basata sulla geometria: Drafting 2D, Modellazione 3D Wireframe, Primitive di modellazione, B-Rep, CSG, per superfici, ibrida.
  • Introduzione alla piattaforma CAD: Impostazioni di base, Descrizione Albero del modello.
  • Modellazione basata sulla conoscenza: approccio parametrico e variazionale, Modellazione solida basata su caratteristiche (Feature Based).
  • Paradigma parametrico-associativo. Struttura di prodotto: parti, componenti, assiemi.
  • Modellazione di parti: concetti di Feature, Body, Gruppi Geometrici. Strumenti per la gestione delle Feature Basate su schizzi. Gestione dei Vincoli. Strumenti di analisi dello schizzo.
  • Strumenti per la creazione e la gestione delle feature avanzate: Feature di dettagliatura, Feature di trasformazione, Feature booleane, Modellazione Multi-Body. Principi di corretta modellazione.
  • Metodi di rappresentazione di Curve e Superfici a forma libera: Rappresentazione analitica e parametrica, Curve e superfici di HERMITE, BEZIER, B-SPLINE, NURBS. Strumenti CAD per la creazione, l’analisi e la manipolazione di superfici.
  • Modellazione di Assiemi. Approcci Bottom-Up e Top-Down. Gestione del salvataggio. Analisi dell’assieme. Feature d’assieme. Configurazione di prodotto e tabelle di progetto. Problematiche di scambio dati.
  • Generazione di disegni e documentazione di prodotto a partire da modelli CAD. La distinta base.
  • Richiami sulle tolleranze dimensionali. Catene di tolleranze. Analisi e sintesi delle tolleranze. Cenni di GD&T.
  • Richiami sui collegamenti albero-mozzo. Dimensionamento di chiavette e linguette.
  • La trasmissione del moto: dimensionamento e modellazione di ruote dentate.
  • Simulazione di cinematismi.
  • Sistemi per la gestione dei dati di prodotto (PDM) e per la gestione del ciclo di vita del prodotto (PLM): Definizioni e scopi; Funzionalità; Architettura.
  • Applicazione di metodologie di progettazione: modellazione, dimensionamento preliminare e verifiche nominali di organi meccanici. Indicazioni generali per individuare i criteri di scelta di diversi componenti e dispositivi meccanici.
  • Verifica strutturale nominale assistita da calcolatore; preprocessing: realizzazione della mesh, condizioni vincolari, applicazione dei carichi; post-processing: valutazione dello stato tensionale e delle deformazioni.
  • Legame CAD-CAM.
  • Digital Human modeling: misure antropometriche convenzionali e task oriented; modelli cinematici; assegnazione di compiti umani e metodi di valutazione delle performance; analisi delle forze e dei momenti; indici di valutazione posturale.
  • La Realtà Virtuale nella progettazione industriale: la visione stereoscopica, sistemi di visualizzazione, sistemi di tracking, sistemi di navigazione, sistemi di manipolazione, sistemi haptic. Elaborazione dei modelli geometrici per la prototipazione virtuale: tassellazione, Rendering e Texture mapping. Applicazioni in ambito ferroviario, automobilistico, aeronautico ed energetico. Augmented e Mixed Reality.

Materiale didattico

Si veda il sito web del docente della materia.

Modalità di svolgimento dell'insegnamento

Il docente utilizzerà: a) lezioni frontali per circa il 60% delle ore totali, b) esercitazioni in aula mediante l’utilizzo di tool di progettazione (modellazione geometrica CAD 3D e 2D, simulazioni cinematiche, analisi strutturali FEM, analisi ergonomiche) per circa il 40% delle ore totali.

Verifica di apprendimento e criteri di valutazione

Modalità di esame

L'esame si articola in prova scritta e orale e discussione di elaborato progettuale. In caso di prova scritta i quesiti sono: a risposta libera.

La prova scritta è rivolta a verificare la capacità dello studente di sviluppare prototipi virtuali di semplici assiemi meccanici, simularne il comportamento cinematico, analizzarne le caratteristiche strutturali e generare la documentazione di prodotto e la relativa distinta base. Tipicamente lo studente ha a disposizione 3 ore per la prova scritta.

Il colloquio orale segue la prova scritta ed è rivolto ad una discussione critica della/e soluzione/i data/e dallo studente ai problemi proposti nella prova scritta, alla presentazione di un elaborato progettuale ed all’accertamento dell’acquisizione dei concetti e dei contenuti introdotti durante le lezioni.

Stella inattivaStella inattivaStella inattivaStella inattivaStella inattiva

SSD: ING-INF/05
CFU: 9

Insegnamenti propedeutici (se previsti dall'Ordinamento del CdS)

Nessuno.

Eventuali prerequisiti

Conoscenze di base di programmazione.

Obiettivi formativi

Il corso fornisce le conoscenze di base sui sistemi in tempo reale, sulla schedulazione di task real-time, sulla gestione delle risorse, sulle reti di calcolatori e sui sistemi operativi adottati in ambito industriale. Fornisce inoltre le competenze necessarie alla progettazione, il dimensionamento e lo sviluppo di sistemi in tempo reale. Le esercitazioni consistono in applicazioni di programmazione concorrente con task real-time sviluppate in diversi ambienti (real-time LINUX, FreeRTOS, ChibiOS) e progettazione OO di software real-time attraverso SysML e il profilo OMG MARTE.

Risultati di apprendimento attesi

Conoscenza e capacità di comprensione

Lo studente deve dimostrare: di conoscere le problematiche dell’elaborazione in tempo reale, di saper illustrare i fondamenti teorici relativi agli algoritmi per lo scheduling di task periodici e aperiodici e per la gestione delle risorse condivise con vincoli temporali, e relativi test di fattibilità, di saper riconoscere le principali soluzioni per la comunicazione in rete con vincoli temporali, di comprendere i principi di programmazione concorrente applicati ai sistemi real-time.

Capacità di applicare conoscenza e comprensione

Lo studente deve dimostrare di saper astrarre problemi di progettazione di sistemi in tempo reale e di ricondurli ad opportuni modelli teorici atti alla verifica della fattibilità, di saper risolvere problemi di dimensionamento di sistemi real-time attraverso le metodologie e gli algoritmi appresi, di saper progettare sistemi complessi attraverso strumenti di astrazione e modellazione di alto livello, di saper implementare sistemi software real-time utilizzando primitive per la gestione dei task periodici e aperiodici e per l’inter-process communication in tempo reale.

Programma - Syllabus

Concetti Introduttivi. Introduzione ai sistemi in tempo reale: campi applicativi. dimensionamento, deadline, sistemi hard e soft real-time, caratteristiche desiderabili; problematiche di progetto e sviluppo.

Prevedibilità dei sistemi di calcolo. Fonti di non determinismo hardware e del Sistema Operativo. Introduzione allo Scheduling. Processo e programma. Schedulazione, fattibilità, schedulabilità, ottimalità, preemption.

Scheduling di task real time. Algoritmo di Jackson, algoritmo di Horn, algoritmo di Bratley. Scheduling con vincoli di precedenza. Timeline Scheduling, Rate Monotonic (RM). Earliest Deadline First (EDF), Deadline Monotonic. Ottimalità e test di garanzia. Response Time Analysis. Processor Demand Criterion per EDF.

Accesso a risorse condivise. Il problema della priority inversion. Non-preemptive protocol. Highest locker priority. Priority Inheritance e Priority Ceiling. Analisi di schedulabilità, calcolo dei tempi di bloccaggio. Stack Resource Policy.

Server aperiodici. Schedulazione in background. Polling Server (PS). Deferrable Server (DS), Sporadic Server (SS), Slack Stealer. Dynamic Sporadic Server (DSS), Total Bandwidth Server (TBS), Costant Bandwidth Server (CBS).

Gestione dei sovraccarichi. Carico, valore cumulativo, fattore competitivo. Admission control; robust scheduling, resource reservation con CBS. Algoritmo RED. Job skipping, period adaptation e service adaptation.

Comunicazione Real-time. I protocolli CSMA/CD e Token Ring. Modelli di traffico real-time. Fonti di non determinismo nelle reti. Controller Area Network (CAN), ProfiNET ed Ethernet Power Link. RTNet. Weighted Fair Queuing, RSVP e RTP (cenni).  RTPS e Standard DDS. Esempi applicativi. 

Analisi del Worst Case Execution Time. Metodi statici e metodi measurement-based. Bound caluculation: path-based, structure-based e implicit path enumeration (IPET). Esempi di tool statici e measurement-based.

Real Time Operating Systems (RTOS): Primitive per la programmazione di applicazioni concorrenti in ambiente real-time. Colloquio con le periferiche, RTOS commerciali ed Open Source, introduzione a FreeRTOS, ChibiOS e Linux real-time. Sviluppo di applicazioni concorrenti real-time in tali ambienti.

Standard e Certificazioni. La standardizzazione, standard per RTOS: RT-POSIX, OSEK, AUTOSAR, ARINC, MICRO-ITRON. Standard di certificazione: DO-178B, IEC61508.

Progettazione di Sistemi Real Time con SysML e OMG MARTE. Model driven engineering. UML2 ed estensioni: profili, metamodelli e stereotipi. Progettazione con SysML. Specifica MARTE. Esempi in ambiente integrato (Papyrus).

Materiale didattico

Si veda il sito web del docente della materia.

Modalità di svolgimento dell'insegnamento

La didattica è erogata a) per il 70% con lezioni frontali e b) per il 30% con esercitazioni guidate in aula per approfondire praticamente gli aspetti relativi all’utilizzo di sistemi operativi real-time e alla programmazione di task real-time.

Gli argomenti delle lezioni frontali e dei seminari sono esposti con l’ausilio di trasparenze dettagliate, messe a disposizione dello studente nel materiale didattico tramite il sito web ufficiale del docente.

Verifica di apprendimento e criteri di valutazione

Modalità di esame

L'esame si articola in prova scritta e orale. In caso di prova scritta i quesiti sono: a risposta libera, esercizi numerici. 

Utilizziamo i cookie sul nostro sito Web. Alcuni di essi sono essenziali per il funzionamento del sito, mentre altri ci aiutano a migliorare questo sito e l'esperienza dell'utente (cookie di tracciamento). Puoi decidere tu stesso se consentire o meno i cookie. Ti preghiamo di notare che se li rifiuti, potresti non essere in grado di utilizzare tutte le funzionalità del sito.