Topic outline
-
-
-
Kaltura Video Resource
lezione introduttiva ed inizio rassegna molteplici applicazioni robotiche
-
Kaltura Video Resource
rassegna molteplici applicazioni robotiche ed inizio rappresentazione delle roto-traslazioni
-
Kaltura Video Resource
Introduzione all'Automatica
Definizione di Sistema come insieme delle relazioni ingresso/uscita
Sistema nello Spazio di stato: funzioni di transizione dello stato e di trasformazione delle uscite. Proprietà di consistenza, causalità e separazione.
Sistemi stazionari e sistemi lineari
-
Kaltura Video Resource
Sistemi lineari stazionari a tempo discreto: rappresentazione esplicita e implicita. Delta di Kronecker. Esempio su popolazione studentesca
Sistemi lineari stazionari a tempo continuo: rappresentazione esplicita. Delta di Dirac
-
Kaltura Video Resource
Esempi di sistemi lineari stazionari a tempo-discreto. Popolazione studentesca. Estinzione di un mutuo
-
Kaltura Video Resource
Rappresentazioni implicite per sistemi lineari stazionari a tempo continuo. Esponenziale di matrice. Esempi: circuito elettrico RLC in serie
-
Kaltura Video Resource
Regola di composizione di rotazioni, rotazioni attorno ad un asse generico noto, convenzioni per l'orientamento di un corpo rigido: Eulero 1 (Z-Y'-Z'') ed Eulero 3 (Roll-Pitch-Yaw), coordinate omogenee, punti al finito ed all'infinito, trasformazioni rigide in coordinate omogenee.
-
Kaltura Video Resource
Sfortunatamente qualcosa non è andata a buon fine con la registrazione di questa attività. Ho aperto un ticket con i tecnici che seguono webex per capire cosa possa essere successo, ma al momento questa registrazione non è disponibile.
Sviluppo primo laboratorio su roto-traslazioni nel piano (odometria base mobile a cinematica differenziale).
-
Kaltura Video Resource
Ancora sviluppo primo laboratorio su roto-traslazioni nel piano (odometria base mobile a cinematica differenziale). Inizio cinematica diretta delle catene cinematiche aperte.
-
Kaltura Video Resource
Esempio di sistemi lineari a tempo continuo: corpo in caduta libera.
Discretizzazione di un sistema lineare stazionario a tempo continuo
-
Kaltura Video Resource
Richiami sui numeri complessi
-
Kaltura Video Resource
Decomposizione spettrale e modi naturali
-
Kaltura Video Resource
Introduzione alla cinematica delle catene cinematiche aperte, convenzioni di Denavit - Hartenberg, rassegna di cinematiche notevoli, spazio dei giunti e cartesiano, raggiungibile e raggiungibile con destrezza, accuratezza e ripetibilità, teaching-by-showing ed off-line programming, ridondanza cinematica.
-
Kaltura Video Resource
Modi naturali reali e complessi coniugati. Modi asintoticamente stabili, semplicemente stabili e instabili
-
Kaltura Video ResourceCircuito RLC: modi naturali. Modi eccitabili per impulsi in ingresso e osservabili in uscita
-
Kaltura Video Resource
Trasformata di Laplace: definizione, condizioni di esistenza. Proprietà: linearità, traslazione nel tempo e in frequenza, trasformata di derivate e integrali, trasformata di convoluzione di funzioni. Trasformata notevoli (delta di Dirac, gradino, rampa, ingressi canonici di ordine k, esponenziali e armoniche). Sistemi lineari e stazionari: approccio in frequenza
-
Kaltura Video ResourceRisposta in frequenza di un sistema lineare stazionario a tempo continuo. Formula dei residui
-
Kaltura Video ResourceRisposta in frequenza di un sistema lineare stazionario a tempo continuo: esercizi
-
Kaltura Video Resource
Risposta a regime permanente di un sistema lineare stazionario a tempo continuo: risposta a regime all'impulso, al gradino a una rampa lineare, a un'esponenziale. Risposta armonica
-
Kaltura Video Resource
Diagrammi di Bode di una funzione di trasferimento. Modulo e ampiezza in carta semilogaritmica. Termini monomi, binomi e trinomi. Esempi
-
Kaltura Video Resource
Diagrammi di Bode delle fasi di un termine trinomio. Esempi di diagrammi di Bode con termini trinomi
-
Kaltura Video Resource
Punti di equilibrio e stabilità (semplice, asintotica, locale/globale, esponenziale). Stabilità esterna.
-
Kaltura Video Resource
Stabilità di un sistema lineare stazionario a tempo continuo. Criterio di Routh, esempi
-
Kaltura Video Resource
Calibrazione cinematica, problema della cinematica inversa, cinematica inversa nel caso di braccio con polso sferico, cinematica inversa di braccio antropomorfo con polso sferico, pianificazione della traiettoria, motivazioni, lineare nello spazio dei giunti con profili trapezoidali di velocità, lineare nello spazio cartesiano.
-
Kaltura Video Resource
Criterio di Routh: il caso di una riga tutta nulla. Specifiche sulla posizione degli autovalori sul piano complesso: esercizi col Criterio di Routh. Sistemi a controreazione: funzione di trasferimento in catena aperta e catena chiusa
-
Kaltura Video Resource
Il criterio di Nyquist per la stabilità di sistemi a controreazione unitaria
-
Kaltura Video Resource
Margini di stabilità: margine di guadagno e margine di fase. Rete anticipatrice
-
Kaltura Video Resource
Il Criterio di Routh per sistemi in controreazione unitaria. Fedeltà di risposta a ingressi canonici di tipo k
-
Kaltura Video Resource
Reiezione di disturbi. Risposta al gradino
-
Kaltura Video Resource
Sintesi per tentativi. Esercitazione
-
Kaltura Video Resource
esercitazione con matlab su roto-traslazioni nello spazio 3D
-
Kaltura Video Resource
esercitazione con matlab su roto-traslazioni nello spazio 3D
-
Kaltura Video Resource
sensoristica, inclusa revisione teorema del campionamento
-
Kaltura Video Resource
Controllo digitale. Architettura di controllo. Convertitori analogico/digitali e digitali/analogici
-
Kaltura Video Resource
laboratorio matlab su convenzioni di Denavit - Hartemberg
-
Kaltura Video Resource
completamento laboratorio su convenzioni di Denavit - Hartemberg e sensoristica range sensing
-
Kaltura Video Resource
sensoristica range sensing (registrazione con problemi: saltato quasi tutto)
-
Kaltura Video Resource
Risposta impulsiva del sistema discreto equivalente in un sistema di regolazione digitale
-
Kaltura Video Resource
Fedeltà di risposta a ingressi polinomial fattoriali e a ingressi armonici. Risposta in tempo finito
-
Kaltura Video Resource
introduzione alla esercitazione pratica, base mobile, architettura controllo di basso livello, middleware ROS, componenti del navigation stack
-
Pagine del testo B. Siciliano, L. Sciavicco, L. Villani, G. Oriolo, "Robotics: Planning and Control", Springer 2009, relative alla alla introduzione alla robotica (da 1 a 36).
1.1 MB documento PDF -
Pagine del testo B. Siciliano, L. Sciavicco, L. Villani, G. Oriolo, "Robotics: Planning and Control", Springer 2009, relative alla rappresentazione delle rototraslazioni (da 39 a 58). Questo file .pdf si trova su moodle ed è protetto da password (comunicata a lezione).
192.2 KB documento PDF -
Pagine del testo B. Siciliano, L. Sciavicco, L. Villani, G. Oriolo, "Robotics: Planning and Control", Springer 2009, relative alla cinematica dei manipolatori (da 58 a 103). Questo file .pdf si trova su moodle ed è protetto da password (comunicata a lezione).
658.1 KB documento PDF -
Pagine del testo B. Siciliano, L. Sciavicco, L. Villani, G. Oriolo, "Robotics: Planning and Control", Springer 2009, relative alla interpolazione di traiettoria (da 161 a 189). Questo file .pdf si trova su moodle ed è protetto da password (comunicata a lezione).
755.9 KB documento PDF -
Pagine del testo B. Siciliano, L. Sciavicco, L. Villani, G. Oriolo, "Robotics: Planning and Control", Springer 2009, relative ad attuatori e sensori (da 191 a 231). Questo file .pdf si trova su moodle ed è protetto da password (comunicata a lezione).
538.8 KB documento PDF
-
-
-
file pdf con sketch dei punti del robot (x forward, y leftward).
31.8 KB documento PDF -
punti del robot nel sistema robot con asse x in avanti ed y verso sinistra (guardando il piano del robot dall'alto), fare cut&paste in mlab.
-
archi percorsi, costruiti un insieme di medesimi atti di moto alla volta. fare cut&paste in mlab.
-
La deadline per la consegna di questo esercizio è Domenica 1 alle 23:59.
La valutazione verrà fatta non solo sulla funzionalità dimostrata dal codice, ma anche sulla sua leggibilità, anche in termini di commenti.
Il codice dovrà calcolare la trasformazione one-period per ogni passo (combinando le "trasformazioni elementari") e quella globale per disegnare il robot nella nuova pose, senza cancellare il disegno precedente. Successivamente all'ultimo disegno dovrà stampare a video l'ultimo valore dei gradi di libertà. Il codice opererà partendo dagli archi (archi.m).
Chi avesse delle difficoltà a consegnare nei tempi mi contatti via email per una proroga individuale.
- predisponete il vostro (unico!) file matlab;
- inserite nome, cognome, matricola e data in un commento nella prima riga del file;
- come nome del file usate "nome_cognome_matricola_lab1.m";
- fino a che non eseguite la "consegna" potrete modificarla, ma non dimenticatevi di eseguire la consegna finale.
-
-
Questa è una banale consegna di un testo che dovrà descrivere:
- le 2 modalità di disegno 3D messe a disposizione da patch;
- la motivazione di quale sia, a vostro parere, la scelta migliore;
La ragione di una consegna così banale sta nel fatto che in passato ci sono stati casi di studenti che hanno cercato di usare "patch" senza guardarne prima la documentazione.
La deadline per la consegna è per ora impostata a dddddd dd.mm.2022 alle 23:59.
PS: si prega di NON dedurre che sia importante nella vita conoscere la funzione patch di mlab!
-
Il .m da sviluppare dovrà chiedere all'utente: di definire le dimensioni (larghezza - x, lunghezza - y ed altezza - z) di un parallelepipedo, si suggerisce di usare dimensioni molto diverse sui 3 assi, così da poterli distinguere visivamente.
Successivamente dovrà effettuare:
- il disegno del sistema di riferimento del corpo, considerando che il sistema di riferimento del corpo viene messo nel centro della faccia inferiore con l'asse z lungo l'altezza; inizialmente il sistema di riferimento del corpo coincide con il sistema di riferimento del mondo (usate pure la convenzione x-y-z => r-g-b);
- il disegno del parallelepipedo.
Poi dovrà chiedere all'utente:
- se vuole effettuare una trasformazione rigida rispetto agli assi world oppure body;
- di definire i parametri della roto-traslazione (gli angoli vanno chiesti all'utente in degs, please).
Dovrà quindi:
- effettuare il disegno degli assi del corpo e del parallelepipedo nella nuova pose (lasciando disegnato il sistema di riferimento ed il parallelepipedo nella pose precedente);
- chiedere all'utente se vuole effettuare un'altra trasformazione e poi tornare in ciclo oppure uscire, a seconda delle risposta.
Al termine, quando l'utente avrà risposto negativamente alla domanda se vuole effettuare ulteriori roto-traslazioni, il programma dovrà stampare a schermo i 6 DoF della pose finale nelle 2 seguenti versioni (gli angoli in degs, please):
- [x,y,z,α,β,γ], con α,β,γ angoli di Eulero1 (Z Y' Z'');
- [x,y,z,α,β,γ], con α,β,γ angoli di Eulero3 (roll pitch yaw).
La deadline per la consegna è impostata a domenica 15.05.2022 alle 23:59.
-
-
-
Il .m da sviluppare dovrà chiedere all'utente di definire le dimensioni di un parallelepipedo "basamento". Si suggerisce di usare dimensioni molto estese sui 2 assi x (larghezza) ed y (lunghezza) ed una dimensione ridotta sulla z (altezza), cosicché questo parallelepipedo costituisca anche visivamente il basamento su cui viene costruito il resto del sistema. Lasciate il sistema di riferimento sullo spigolo del parallelepipedo come avviene di default con matlab (ovvero mettete tutta la larghezza, lunghezza ed altezza sui semiassi positivi). Successivamente il programma dovrà effettuare il disegno del basamento.
Dovrà quindi essere chiesta all'utente una traslazione ed un orientamento (con RPY, angoli in degs) tra il sistema OXYZb ed il sistema di riferimento OXYZ0, quello attorno il cui (o lungo il cui) asse z ha luogo il movimento prodotto dal giunto 1 (la vita, per un braccio antropomorfo). Successivamente dovrà essere disegnato anche il sistema di riferimento OXYZ0. Questa interazione con l'utente seguita da disegno del sistema di riferimento OXYZ0 dovrà essere replicata finché l'utente non risulti soddisfatto delle sue scelte (ad ogni ripetizione del ciclo interazione - disegno si dovrà cancellare il disegno precedente).
A questo punto il programma dovrà chiedere all'utente di definire un secondo parallelepipedo, che costituirà il "link0" (il torso, per un antropomorfo). Questo parallelepipedo verrà definito nel sistema di riferimento OXYZ0 come segue: all'utente verrà chiesta x (larghezza), y (lunghezza) e z (altezza); l'origine del sistema di riferimento del link0 sarà nel centro della faccia inferiore della base del parallelepipedo (larghezza - lunghezza); in altre parole metà larghezza sarà nel semiasse positivo e metà nel negativo e lo stesso accadrà per la lunghezza, mentre la altezza sarà tutta nel semiasse positivo delle z. Tutto il parallelepipedo (link0) sarà poi traslato rispetto al sistema OXYZ0 chiedendo all'utente le quantità di traslazione su x0, y0 e z0, che devono poter anche essere negative. Il link0, essendo solidale con OXYZ0, dovrà successivamente essere movimentato quando si muoverà il giunto 1. Successivamente dovrà essere effettuato il disegno dei 2 parallelepipedi (basamento e link0) nelle loro pose. Questa interazione con l'utente seguita da disegno per il link0 dovrà essere replicata finché l'utente non risulti soddisfatto delle sue scelte (ad ogni ripetizione del ciclo interazione - disegno si dovrà cancellare il disegno precedente). Non è importante che il link0 sia coerente con le dimensioni del basamento, se anche si compenetrassero o restassero spaziati sarebbero problemi dell'utente.
A questo punto si chiederà all'utente se vuole muovere il giunto 1 e, se l'angolo richiesto dall'utente è diverso da 0, si effettuerà il disegno del basamento con link0 nella nuova pose. Quando l'utente richiederà un angolo nullo si procederà con le parti successive del programma.
Il programma dovrà a questo punto chiedere all'utente di definire i parametri della pose 3D di un sistema di riferimento OXYZ1 rispetto al sistema OXYZ0 mediante i 4 parametri delle convenzioni DH (angoli in degs, please). Il sistema di riferimento OXYZ1 è quello attorno il cui (o lungo il cui) asse z ha luogo il movimento prodotto dal giunto 2 (la spalla, per un braccio antropomorfo). Successivamente dovrà essere disegnato anche il sistema di riferimento OXYZ1. Questa interazione con l'utente seguita da disegno dovrà essere replicata finché l'utente non risulti soddisfatto delle sue scelte (ad ogni ripetizione del ciclo interazione - disegno si dovrà cancellare il disegno precedente).
A questo punto il programma dovrà chiedere all'utente di definire un terzo parallelepipedo, che costituirà il "link1" (il braccio, per un antropomorfo). Questo parallelepipedo verrà definito nel sistema di riferimento OXYZ1 come segue: all'utente verrà chiesta x (larghezza), y (lunghezza) e z (altezza); l'origine del sistema di riferimento del link1 sarà nel centro della faccia inferiore della base del parallelepipedo (larghezza - lunghezza); in altre parole metà larghezza sarà nel semiasse positivo e metà nel negativo e lo stesso accadrà per la lunghezza, mentre la altezza sarà tutta nel semiasse positivo delle z. Tutto il parallelepipedo (link1) sarà poi traslato rispetto al sistema OXYZ1 chiedendo all'utente le quantità di traslazione su x1, y1 e z1, che devono poter essere negative. Il link1, essendo solidale con OXYZ1, dovrà successivamente essere movimentato quando si muove il giunto 2. La variabile di giunto sarà di default "theta2"e non "d2", ma andrà chiesta conferma all'utente. Successivamente dovrà essere effettuato il disegno dei 3 parallelepipedi (basamento, link0 e link1) nelle loro pose. Questa interazione con l'utente seguita da disegno per il link1 dovrà essere replicata finché l'utente non risulti soddisfatto delle sue scelte (ad ogni ripetizione del ciclo interazione - disegno si dovrà cancellare il disegno precedente). Non è importante che il link1 sia coerente con le dimensioni del link0 e/o del basamento, se anche si compenetrassero o restassero spaziati sarebbero problemi dell'utente.
A questo punto si chiederà all'utente se vuole muovere il giunto 1 e/o il giunto 2 e, se gli angoli richiesti dall'utente non fossero entrambi 0, si effettuerà il disegno del basamento con link0 e link1 nelle nuove pose. Quando l'utente richiederà angoli nulli si terminerà il programma.
La deadline di consegna è impostata a domenica 05.06.2022 alle 23:59.
-
-
-
50.0 KB documento PDF Uploaded 25/09/22, 16:19
-