Scheda programma d'esame
MECHANICS OF ROBOTS
MARCO GABICCINI
Academic year2020/21
CourseROBOTICS AND AUTOMATION ENGINEERING
Code276II
Credits6
PeriodSemester 1
LanguageItalian

ModulesAreaTypeHoursTeacher(s)
MECCANICA DEI ROBOTING-IND/13LEZIONI60
MARCO GABICCINI unimap
Obiettivi di apprendimento
Learning outcomes
Conoscenze

Il corso si propone di fornire agli allievi le nozioni fondamentali e gli strumenti necessari per l’analisi, la verifica e la modellazione dettagliata di robot industriali (seriali e paralleli), robot mobili (su ruote o zampe) e veicoli, intesi nella loro più ampia accezione. I robot oggetto del corso sono in generale sistemi fisici controllati da un processore digitale, dotati di capacità sensoriali e di intervento sull’ambiente, con caratteristiche di elevata autonomia e di facile interazione con l’uomo. Al termine del corso, lo studente avrà:

  • conoscenze avanzate inerenti la modellistica ed il controllo di robot seriali;
  • conoscenze sulle tecniche e gli algoritmi di pianificazione del moto di robot;
  • conoscenze sulle metodologie di modellazione, analisi e progetto di robot paralleli e mani artificiali

 Il software in cui vengono svolte le sercitazioni al calcolatore è Wolfram Mathematica [https://www.wolfram.com/]. Alcune esercitazioni possono prevedere l'uso della suite CasADi [casadi.sourceforge.net] in ambiente Python.

Knowledge

The course will enable to analyze, model and design vehicle systems. By the end of the course, students should be able to: - analyze and control complex mechanical systems and vehicles; - evaluate the limits of application of the linear control methodologies in the case of non linear systems and to correctly use the instruments useful to overcome such limitations. - read and understand the commercial devices used in the control of machines and mechanical systems, and to project control systems using such devices. - know typologies and applications of the robotic systems used in industry and other service sectors - define the geometrical, kynematical and dynamical models adopted in robotics - elaborate functional projects of such mechanical systems

Modalità di verifica delle conoscenze

La verifica delle conoscenze avviene attraverso un esame scritto ed un colloquio orale. Lo svolgimento di un progetto sulle tematiche del corso con il software Wolfram Mathematica è facoltativo e viene tenuto in considerazione nella composizione del voto definitivo dell'esame.

Assessment criteria of knowledge

Knowledge verification occurs through application of the course topics to case studies. Results are presented and discussed through a technical report and a presentation with multimedia tools.

 

Capacità

Al termine dell'insegnamento lo studente saprà:

  • Progettare sistemi di controllo per sistemi meccanici e veicoli in presenza di vincoli e di incertezze del modello
  • Analizzare le caratteristiche e le proprietà strutturali della dinamica di sistemi meccanici e robotici avanzati
  • Utilizzare software di simulazione per sistemi meccanici e robotici
Skills

At the end of the course the student will know how to:

  • Design control systems for robotics and vehicles also in presence of constraints and uncertainties of the model;
  • Analyze the characteristics and structural properties of the dynamics of advanced mechanical and robotic systems;
  • Use simulation software for mechanical and robotic systems;
Modalità di verifica delle capacità

Durante il corso le tecniche apprese di pianificazione e controllo verranno applicate su sistemi meccanici e veicoli simulati e/o fisici in attività di esercitazione e laboratoriale, sotto la supervisione dei docenti e dei collaboratori alla didattica

 

Assessment criteria of skills

During the course, the motion planning and control techniques will be applied on simulated and / or physical mechanical and vehicular systems in exercise and laboratory activities, under the supervision of teachers and teaching staff

 

Comportamenti

Al termine del corso gli  studenti avranno sviluppato l’attitudine a riconoscere nei problemi applicativi di diversa natura che possono essere loro proposti, le caratteristiche salienti dei sistemi robotici in una accezione ampia del termine, di riconoscere le tecniche più adeguate per studiarne il moto, utili per il controllo, e di applicare gli strumenti di progetto appresi.

Behaviors

At the end of the course, students will have developed the ability to recognize in problems of different nature that can be proposed to them, the salient features of robotic systems in a broad sense of the term, to recognize the most appropriate techniques for motion planning and control, and to apply the design tools learned.

Modalità di verifica dei comportamenti

Agli studenti verrà chiesto di proporre argomenti di approfondimento nei quali loro stessi dovranno scegliere i sistemi cui applicare le tecniche apprese. In questo modo, potranno dimostrare di saper estendere l’applicabilità dei metodi ad una classe più generale di problemi che potranno incontrare nella loro vita professionale.

Assessment criteria of behaviors

Students will be asked to propose topics to be studied in detail in which they will have to choose which  learned technique is more suitable to be applied. In this way, they will be able to demonstrate how to extend the applicability of the methods to a more general class of problems they may encounter in their professional life.

Prerequisiti (conoscenze iniziali)
  • Corsi di meccanica di base;
  • Conoscenza operativa di algebra lineare;
  • Necessità di imparare l'utilizzo di software di analisi e simulazione (Mathematica)

 

Prerequisites
  • Theory of linear systems;
  • Linear Systems Control Techniques;
  • Ability to use analysis and simulation software (e.g. Matlab, Simulink)

 

Corequisiti

Nessuno

Co-requisites

N/A

Prerequisiti per studi successivi

Nessuno

Prerequisites for further study

N/A

Indicazioni metodologiche

Le lezioni vengono svolte alla lavagna con l'eventuale uso di supporti multimediali per la visione di immagini e video.

Modalità di apprendimento:

  • Partecipazione alle lezioni
  • Partecipazione a seminari
  • Partecipazione alle discussioni
  • Studio individuale
  • Lavoro di gruppo

Metodologia di insegnamento:

  • Lezioni
  • Seminari
  • Tutorato

 

Teaching methods

Lessons are performed on the blackboard with the possible use of multimedia media for viewing images and videos.

 

Learning modality:

  • Participation in lessons
  • Participation in seminars
  • Participation in discussions
  • Individual studio
  • Teamwork
  • Laboratory work

Teaching methodology:

  • Lessons
  • Seminars
  • Tutoring

 

Programma (contenuti dell'insegnamento)
  1. ESEMPIO DI REGISTRO DELLE LEZIONI TRATTO DALL'A.A. 2019-20
  2. Gio 26/09/2019 14:30-16:30 (2:0 h) non tenuta: Da recuperare. Non tenuta causa indisponibilità del docente. (MARCO GABICCINI)
  3. Ven 27/09/2019 14:30-17:30 (3:0 h) non tenuta: Da recuperare. Non tenuta causa indisponibilità del docente. (MARCO GABICCINI)
  4. Gio 03/10/2019 14:30-16:30 (2:0 h) lezione: Presentazione del corso di Meccanica dei Robot. Argomenti del corso, modalità di esame, materiale didattico. Passato, presente e prospettive della robotica. Il ruolo fondamentale della modellistica meccanica nello sviluppo di robot sempre più performanti ed efficienti. (MARCO GABICCINI)
  5. Ven 04/10/2019 14:30-17:30 (3:0 h) lezione: Punti, vettori e loro coordinate e componenti in sistemi di riferimento ortonormali. Interpretazione della matrice di rotazione come cambiamento di coordinate e come applicazione lineare che ruota vettori espressi nel medesimo sistema di riferimento. Il gruppo SO(3) e sue proprietà. Matrici ortogonali che non appartengono ad SO(3): le riflessioni. Costruzione della matrice che opera una riflessione rispetto ad un piano. Riepilogo. (MARCO GABICCINI)
  6. Gio 10/10/2019 14:30-16:30 (2:0 h) lezione: Composizione di rotazioni in assi fissi (assemblaggio matrici da dx a sx). Composizione di rotazioni in assi mobili (assemblaggio matrici da sx a dx). Equivalenza delle precedenti composizioni: la trasformazione per congruenza di un tensore del secondo ordine al variare del sistema di riferimento impiegato. (MARCO GABICCINI)
  7. Ven 11/10/2019 14:30-16:30 (2:0 h) lezione: Le 12 parametrizzazione minime di una rotazione ottenute componendo matrici di rotazione elementari. Proprietà delle rotazioni elementari. Dettagli sulla parametrizzazione ZYX (yaw-pitch-roll) e sulla ZYZ. Realizzazione fisica della parametrizzazione ZYX mediante sospensione Cardanica equivalente. Formule di inversione e singolarità di rappresentazione per ZYX e ZYZ con descrizione del loro significato fisico (gimbal lock). Parametrizzazione minima asse-angolo: via diretta (costruzione geometrica) ed indiretta (trasformazione per congruenza di rotazione elementare) per la costruzione della matrice associata. (MARCO GABICCINI)
  8. Ven 11/10/2019 16:30-17:30 (1:0 h) esercitazione: Esposizione dei contenuti e delle modalità di svolgimento di due progetti tipici di Meccanica dei Robot. 1) Trasformazione di un veicolo RC in scala 1:8 in veicolo a guida autonoma. 2) Sviluppo concettuale, progettazione, realizzazione e controllo di un robot esapode in grado di camminare con molteplici andature e di gestire la ridondanza interna per controllo a cinematica inversa del corpo. (MARCO GABICCINI)
  9. Gio 17/10/2019 14:30-16:30 (2:0 h) lezione: Soluzione del problema inverso mediante invarianti lineari. Singolarità. Parametrizzazione non minima mediante quaternioni unitari. Algebra dei quaternioni per composizione di rotazioni e rotazioni di punti. Vantaggi computazionali dell'uso dei quaternioni rispetto alle matrici di rotazione. Interpolazione fra pose con quaternioni unitari mediante SLERP sulla iper-sfera unitaria in R^4. (MARCO GABICCINI)
  10. Ven 18/10/2019 14:30-17:30 (3:0 h) lezione: Trasformazioni di coordinate fra sistemi di riferimento roto-traslati. Perdita della linearità fra le componenti causata dalla presenza della traslazione fra le origini dei sistemi di riferimento. Recupero della linearità mediante introduzione delle coordinate omogenee per vettori posizioni e vettori generici. La matrice di trasformazione omogenea come rappresentazione di roto-traslazioni: il gruppo SE(3). Loro composizione per roto-traslazioni rigide successive mediante prodotto fra matrici. Composizione di roto-traslazioni mediante prodotto di matrici omogenee associate a trasformazioni rigide. Interpretazione della composizione in assi fissi e mobili. Trasformazione per similitudine di una trasformazione omogenea al variare del sistema di riferimento ortogonale. Svolgimento dell'esercizio n.1 del tema d'esame del 18.09.2019 (calibrazione cinematica di una tavola rotante a due assi). (MARCO GABICCINI)
  11. Gio 24/10/2019 14:30-16:30 (2:0 h) lezione: Dalla struttura cinematica di un robot seriale alla rappresentazione della sua cinematica diretta. La convenzione di Denavit-Hartenberg (D-H) per la parametrizzazione di catene cinematiche seriali. Condizione necessaria e sufficiente sulla scelta di due sistemi di riferimento successivi perché la trasformazione relativa possa essere rappresentata mediante matrice template di D-H. Applicazione alla parametrizzazione di: RR planare. (MARCO GABICCINI)
  12. Ven 25/10/2019 14:30-17:30 (3:0 h) esercitazione: Esercitazione su Denavit-Hartenberg. Applicazione al: manipolatore RPP (differenti scelte per le terne), polso sferico (differenti configurazioni di riferimento per il polso). Analogia della matrice di rotazione per polso sferico in parametrizzazione di D-H alla Rzyz in assi correnti quando configurazione iniziale del polso è distesa. Necessità di una matrice di offset nel caso configurazione iniziale del polso sia ripiegata. (MARCO GABICCINI)
  13. Gio 31/10/2019 14:30-16:30 (2:0 h) lezione: Formalizzazione dei problemi cinematico diretto ed inverso. Approccio numerico alla soluzione del problema cinematico inverso riconducendolo alla soluzione di un sistema di eq.ni algebriche non lineari. Cenni al metodo di Newton-Raphson in più dimensioni. (MARCO GABICCINI)
  14. Ven 01/11/2019 14:30-17:30 (3:0 h) non tenuta: Lezione non tenuta causa festività di Ognissanti. (MARCO GABICCINI)
  15. Gio 07/11/2019 14:30-16:30 (2:0 h) lezione: Approccio analitico (alla Pieper) del problema cinematico inverso per manipolatore seriale con polso sferico. Disaccoppiamento del problema di posizionamento del centro del polso e della orientazione della terna end-effector. Esempio di applicazione al manipolatore antropomorfo con polso sferico. (MARCO GABICCINI)
  16. Ven 08/11/2019 14:30-17:30 (3:0 h) lezione: Approccio numerico alla soluzione del problema cinematico inverso riconducendolo alla soluzione di un sistema di eq.ni algebriche non lineari. Cenni al metodo di Newton-Raphson in più dimensioni. Gestione della ridondanza delle variabili e analisi della parametrizzabilità delle soluzioni e sua base teorica: il teorema di Dini in più dimensioni. Applicazione all'RRR planare con sola specifica della posizione dell'end-effector. Richiami su atto di moto 3D di un corpo rigido. Sua rappresentazione mediante twist. Leggi di cambiamento del twist rappresentativo del medesimo atto di moto di un corpo rigido al variare del polo e del sistema di riferimento in cui se ne esprimono le componenti. La trasformazione Ad_g (aggiunta) di una trasformazione omogenea g. Il Jacobiano geometrico per un RRR 3D e suo calcolo dalla sovrapposizione degli effetti dei twist dei giunti (teo. di composizione di moti relativi). (MARCO GABICCINI)
  17. Gio 14/11/2019 14:30-16:30 (2:0 h) lezione: Forma minima di un twist rispetto a punti sull'Asse di Mozzi. Richiami di statica del corpo rigido. Rappresentazione mediante wrench. Leggi di variazione di wrench equipollenti al variare del polo e del sistema di riferimento in cui se ne esprimono le componenti. Forma minima del wrench rispetto all'Asse Centrale. Caratterizzazione statica del Jacobiano geometrico. Dualità cineto-statica. (MARCO GABICCINI)
  18. Ven 15/11/2019 14:30-17:30 (3:0 h) lezione: I quattro sottospazi fondamentali di una matrice con particolare riferimento al Jacobiano geometrico. Mutua ortogonalità fra N(J) e Range(J^T) e fra N(J^T) e Range(J). 'Visualizzazione' dell'ortogonalità fra N(J^T) e Range(J) nel caso di RR planare in configurazione singolare (braccio disteso o ripiegato) e sue implicazione pratiche (wrench strutturali in singolarità). (MARCO GABICCINI)
  19. Gio 21/11/2019 14:30-16:30 (2:0 h) lezione: Parametrizzazione di catene cinematiche mediante tecniche basate sui gruppi di Lie: global POE e local POE. La mappa esponenziale che collega elementi dell'algebra di Lie (atti di moto) ad elementi del gruppo (trasformazioni finite). Applicazioni. Analisi del formato URDF per la parametrizzazioni di robot in ROS ed analogie con la parametrizzazione local POE. Esempio di applicazione alla parametrizzazione in URDF del robot UR5. (MARCO GABICCINI)
  20. Ven 22/11/2019 14:30-17:30 (3:0 h) lezione: Jacobiano geometrico e Jacobiano analitico: analogie e differenze. La non integrabilità della velocità angolare. I due approcci al calcolo della relazione fra la velocità angolare e le derivate temporali degli angoli della parametrizzazione di SO(3) scelta. Algoritmi Closed-Loop Inverse Kinematics (CLIK) per l'inversione della cinematica differenziale di catene cinematiche seriali non ridondanti mediante Jacobiano analitico. Soluzione della eq.ne differenziale risultante mediante discretizzazione numerica ed aspetti critici. (MARCO GABICCINI)
  21. Mar 26/11/2019 16:30-18:30 (2:0 h) lezione: CLIK mediante utilizzo del Jacobiano geometrico: definizione dell'errore di orientazione mediante parametrizzazione asse-angolo e mediante parte vettoriale del quaternione. Inversione della cinematica differenziale per catene seriali ridondanti. Strategie a priorità di compito e formulazione aumentata. Presentazione di esempio con codice in Mathematica. Manipolabilità in velocità ed in forza di un manipolatore in una data configurazione e loro rappresentazione mediante ellissoidi. L'approccio alternativo basato sulla decomposizione ai valori singolari (SVD) del Jacobiano geometrico. (MARCO GABICCINI)
  22. Gio 28/11/2019 14:30-16:30 (2:0 h) lezione: Manipolatori paralleli. Generalità ed esempi: paralleli classici, manipolatori seriali cooperanti, mani per robot, robot su gambe. Configurazione, configurazione minima. Problema cinematico diretto e problema cinematico inverso. Singolarità e biforcazioni. (MARCO GABICCINI)
  23. Ven 29/11/2019 14:30-17:30 (3:0 h) lezione: Cinematica differenziale e statica di manipolatori paralleli: Jacobiano J delle gambe, matrice di grasp G, matrice di definizione dei vincoli H fra gambe e coupler nei giunti di collegamente, la forma Pfaffiana delle eq.ni di vincolo fra le velocità ai giunti ed il twist del coupler. (MARCO GABICCINI)
  24. Gio 05/12/2019 14:30-16:30 (2:0 h) lezione: Analisi 'strutturale' della soluzione della cinematica differenziale mediante analisi della struttura a blocchi dello spazio nullo della matrice di vincolo. Discussione della esistenza ed unicità della soluzione dell'equilibrio fra wrench esterno, coppie ai giunti delle gambe e forze vincolari fra gambe e coupler, in considerazione anche della presenza di giunti non attuati alle gambe. (MARCO GABICCINI)
  25. Ven 06/12/2019 14:30-17:30 (3:0 h) lezione: Breve richiamo di elementi di dinamica del corpo rigido. Le eq.ni cardinali della dinamica del corpo rigido, dette anche eq.ni di Newton-Eulero. Digressione sulle varie forme della seconda cardinale rispetto ad un polo generico e sul significato del momento inerziale. Specializzazione delle eq.ni di Newton-Eulero rispetto al centro di massa. Algoritmo ricorsivo di Newton-Eulero (RNEA) per un manipolatore seriale parametrizzato mediante convenzione di Denavit-Hartenberg. Esempio di applicazione da un manipolatore RR planare. Sull'impiego del RNEA per la soluzione della dinamica inversa e diretta. (MARCO GABICCINI)
  26. Mar 10/12/2019 16:30-18:30 (2:0 h) lezione: Dalle eq.ni di Lagrange classiche alla forma standard usata in Robotica per manipolatori seriali parametrizzati mediante angoli ai giunti (vettore di configurazione a componenti indipendenti). Dettagli sul calcolo della matrice di inerzia generalizzata e sulla matrice di Coriolis ottenuta mediante i simboli di Christoffel del 1° tipo. Proprietà di anti-simmetria della matrice dB/dt - 2C. (MARCO GABICCINI)
  27. Gio 12/12/2019 14:30-16:30 (2:0 h) lezione: Dal PLVD alle eq.ni di Lagrange con moltiplicatori di Lagrange per sistemi parametrizzati mediante vettore configurazione con componenti dipendenti (configurazione ridondante). Esempio: pendolo parametrizzato mediante le coordinate del suo centro di massa. Tipologie di vincolo: vincoli geometrici/differenziali scleronomi/reonomi. Esempio di applicazione a manipolatori paralleli con vincoli di forma Pfaffiana fra le velocità ai giunti delle gambe ed il twist del coupler. Metodi di soluzione delle eq.ni di Lagrange per sistemi vincolati DAE (Differential Algebraic Equations) risultanti. La formulazione aumentata, il metodo delle quasi-velocità e la tecnica di embedding. Caratteristiche e struttura delle eq.ni risultati per i differenti approcci. (MARCO GABICCINI)
  28. Ven 13/12/2019 14:30-17:30 (3:0 h) lezione: Eq.ni ricorsive di Newton-Eulero (RNEA) per manipolatori seriali mediante formalismo dei gruppi di Lie (parametrizzazione con local POE). (MARCO GABICCINI)
  29. Mar 17/12/2019 16:30-18:30 (2:0 h) esercitazione: Svolgimento dell'esercizio 1) del tema d'esame del 01.02.2019. Analisi delle proprietà cineto-statiche della presa di un oggetto circolare con un gripper con struttura ad albero. Analisi dei moti labili dell'oggetto, ridondanti del gripper, coordinati. Analisi (e calcolo basi) delle forze interne dell'oggetto, strutturali per il gripper e strutturali ed interne. Ripetizione dei punti salienti nel caso in cui: i) i polpastrelli siano collegati da giunti passivi alle falangi, ii) i polpastrelli siano solidali alle falangi. (MARCO GABICCINI)
Syllabus

Contents: 1) - Introduction. problems in the control of linear systems obtained by linearization of non linear systems. Examples of the limitations of the classical (input-output) approach to control - Stability - Attainability and controllability - State feedback - Observability and rebuildability - System regulation and output feedback

Bibliografia e materiale didattico

Dispense del docente.

B. Siciliano - Robotica, 3a edizione, Mc-Graw-Hill

K. M. Lynch & F. C. Park - Modern Robotics, 1a edizione, Cambridge University Press

R. Murray, Z. Li & S. Sastry - A Mathematical Introduction to Robotic Manipulation, CRC Press

Bibliography

 P. Bolzern, R. Scattolini, N. Schiavoni: “Fondamenti di Controlli Automatici”, McGraw Hill - E. Fornasini, G. Marchesini: “Appunti di Teoria dei Sistemi” -Notes of the lecturer (available on the course website)

Indicazioni per non frequentanti

Nessuna differenza di programma o di valutazione

Non-attending students info

No changes n content or assessment

Modalità d'esame

L’esame consiste in prove scritte ed orali sulle parti del corso. Entrambe sono articolate in uno o più esercizi da svolgere autonomamente, con l’uso del materiale del corso e di ogni altro materiale ritenuto utile; ed in una o più domande cui rispondere oralmente interagendo con la commissione.

In aggiunta o in alternativa alla prova orale, l’esame consiste nella valutazione dei risultati di approfondimento mediante esposizione di  tavole o di progetti proposti e svolti dai candidati.

 

Assessment methods

The final exam consists of two written and/or oral exams on the parts of the course. Both are articulated in one or more exercises to be performed independently, using the material of the course and any other material deemed useful; and in one or more questions to answer orally interacting with the commission.

In addition or as an alternative to the oral examination, the examination consists in evaluating the results of the topics chosen by the student and analyzed in detail applying the tools learned.

 

Stage e tirocini

Possibili su iniziativa indipendente dello studente

Work placement

Possible on stdent's own proposal

Altri riferimenti web

Nessuna

Additional web pages

N/A

Updated: 24/09/2020 12:36