Spazio dei giunti e spazio operativo



Documenti analoghi
Spazio dei giunti e spazio operativo

SPAZIO DI LAVORO. Paolo Fiorini Dipartimento di Informatica Università degli Studi di Verona

Inversione della cinematica differenziale

Cinematica dei robot

Corso di Percezione Robotica Modulo B. Fondamenti di Robotica

di manipolatori seriali

Robotica I. Test 11 Novembre 2009

Corso di Percezione Robotica (PRo) Modulo B. Fondamenti di Robotica

UNIVERSITÀ DEGLI STUDI DI NAPOLI FEDERICO II

Prova Scritta di Robotica I

4 Cinematica diretta dei robot

Corso di Robotica 1 Cinematica inversa

università DEGLI STUDI DI NAPOLI FEDERICO II

UNIVERSITÀ DEGLI STUDI DI NAPOLI FEDERICO II

Prova Scritta di Robotica I 9 Febbraio 2009

Prova Scritta di Robotica I

Lezione 3: Le strutture cinematiche. Vari modi per fare un braccio

CINEMATICA DIFFERENZIALE

Cinematica diretta e inversa di un manipolatore

Dispense del corso di Robotica con Laboratorio

Prova Scritta di Robotica I

Cinematica. La cinematica riguarda lo studio delle 4 funzioni che legano le variabili giunto con le variabili cartesiane

ESERCITAZIONE: FUNZIONI GONIOMETRICHE

Esercizi svolti. Geometria analitica: rette e piani

CENTRO DI MASSA. il punto geometrico le cui coordinate, in un dato sistema di riferimento, sono date da:

Dispense del corso di Robotica con Laboratorio

Esercitazione di Analisi Matematica II

Rappresentazioni in 3D. Fare riferimento al cap. 2 del libro di testo Sistemi di riferimento Vettori: rappresentano punti e/o segmenti orientati

Compito d esame 14/11/2005

generazione degli ingressi di riferimento per il sistema di controllo del moto

Rappresentazioni in 3D. Vettori: rappresentano punti e/o segmenti orientati

PIANIFICAZIONE DI TRAIETTORIE

Prima Precedente Avanti Ultima Vai Indietro Schermo Pieno Chiudi Esci

Calcolo vettoriale. Versore: vettore u adimensionale di modulo unitario (rapporto tra un vettore e il suo modulo)

trasformazioni omogenee

1 Distanza di un punto da una retta (nel piano)

I FACOLTÀ DI INGEGNERIA - POLITECNICO DI BARI Corso di Laurea in Ingegneria Meccanica (corso A) A.A , Esercizi di Geometria analitica

CONICHE. Esercizi Esercizio 1. Nel piano con riferimento cartesiano ortogonale Oxy sia data la conica C di equazione

Informatica Grafica. Un introduzione

Cinematica differenziale

ROBOTICA. Studio di macchine che possano sostituire l uomo nell esecuzione di un compito, sia in termini di attività fisica che decisionale

Trasformazioni - II. Classificazione delle trasformazioni in R 3. Rotazioni in R 3. Lezione 6 Maggio Lezione 6 maggio 2003

Tipi di polso robotico 2 gdl

Prova Scritta di Robotica I

Esercizi sulle affinità - aprile 2009

Docente Vincenzo LIPPIELLO Dipartimento di Informatica e Sistemistica Universitá degli Studi di Napoli Federico II

ESERCIZI SUI SISTEMI LINEARI

Robotica I. Test 2 18 Dicembre 2009

I.I.S. "Morea-Vivarelli" -- Fabriano CORSO DI TECNOLOGIE E TECNICHE DI RAPPRESENTAZIONE GRAFICA

ESTRAZIONE DI DATI 3D DA IMMAGINI DIGITALI. (Visione 3D)

Dinamica del Manipolatore (seconda parte)

Lezione 13: I sistemi di riferimento

Lezione 2: I problemi fondamentali. Per capire meglio i problemi

Cinematica. La cinematica riguarda lo studio delle 4 funzioni che legano le variabili giunto con le variabili cartesiane

Table of contents Introduction. Controllo dei Robot. Pianificazione di traiettorie

1 Esercizi di ripasso 2

Negli esercizi che seguono ci sono alcune cose da specificare:

Allora esistono δ > 0 e σ > 0 tali che. f(x, y) = 0; (2) la funzione ϕ : ]x 0 δ, x 0 + δ [ R, y = ϕ(x), è derivabile e.

Corso di Laurea in Ingegneria Meccanica Anno Accademico 2017/2018 Meccanica Razionale - Prova teorica del 10/2/2018.

MECCANICA DEI ROBOT E DELLE MACCHINE AUTOMATICHE LM Anno accademico (ing. M. Troncossi)

Modellistica dei Manipolatori Industriali 01BTT Esame del 18/02/2002 Soluzione

Formulario. Coordinate del punto medio M di un segmento di estremi A(x 1, y 1 ) e B(x 2, y 2 ): x1 + x y 2

Calcolo vettoriale. Grandezze scalari: caratterizzate da un valore numerico in una unità di misura scelta (ex: massa, temperatura, ecc)

Trasformazioni geometriche nel piano

Meccanica. 5. Moti Relativi. Domenico Galli. Dipartimento di Fisica e Astronomia

Introduzione alla cinematica dei sistemi. Angoli di Eulero

Università del Sannio

UNIVERSITÀ DEGLI STUDI DI NAPOLI FEDERICO II FACOLTÀ DI INGEGNERIA TESINA DI CONTROLLO DEI ROBOT

Costruzione automatica della matrice jacobiana da impiegare nella simulazione dinamica

PROVA SCRITTA DI GEOMETRIA 2 MATEMATICA, 20/09/2011

0 < x 3. A1 1 [7 punti] Determinare le eventuali soluzioni del seguente sistema di congruenze: x 2 mod 5 2x 1 mod 3. x 21 mod 7

Facsimile di prova d esame Esempio di svolgimento

Esercizi svolti di geometria analitica

Robotica I. M. Gabiccini

La composizione di isometrie

Lezione 5 - Analisi cinematica

Grafica al Calcolatore Tecniche avanzate - 1. Image-based rendering

RUOTE DENTATE = ' MECCANICA APPLICATA ALLE MACCHINE LM. ρ 2. γ 2. γ 1

Teoria dei Sistemi Dinamici

Elementi di Statica Grafica

Geometria analitica del piano pag 32 Adolfo Scimone

Cinematica e Dinamica di un manipolatore Puma

Geometria BAER Canale I Esercizi 11

I PARTE Domande a risposta multipla

Meccanica. 5. Cinematica del Corpo Rigido. Domenico Galli. Dipartimento di Fisica e Astronomia

Telerilevamento e SIT Prof. Ing. Giuseppe Mussumeci

; r 0 2 m = l 2 (s 2 θ + c 2 θ) = l 2

REGISTRO DELLE ESERCITAZIONI

Modellistica dei Manipolatori Industriali 01BTT Esame del 23/11/2001 Soluzione

Lo scopo del posizionamento

Posizione e orientamento di corpi rigidi

Prova Scritta di Robotica I

UNITÀ DI GOVERNO. Architettura funzionale. Ambiente di programmazione. Architettura hardware

Trigonometria angoli e misure

ISTITUTO TECNICO INDUSTRIALE G. FERRARIS

x = λ y = λ z = λ. di libertà del sistema ed individuare un opportuno sistema di coordinate lagrangiane.

Versione febbraio 2005

Trasformazioni geometriche nel piano: dalle isometrie alle affinità

Robotica: Errata corrige

Transcript:

CINEMATICA relazioni tra posizioni dei giunti e posizione e orientamento dell organo terminale Matrice di rotazione Rappresentazioni dell orientamento Trasformazioni omogenee Cinematica diretta Spazio dei giunti e spazio operativo Calibrazione cinematica Problema cinematico inverso

POSA DI UN CORPO RIGIDO Posizione o = o x o y o z Orientamento x = x x x + x y y + x z z y = y xx + y yy + y zz z = z xx + z yy + z zz

MATRICE DI ROTAZIONE R = x y z = x T x y T x z T x x T y y T y z T y x T z y T z z T z R T R = I R T = R 1

Rotazioni elementari rotazione di α intorno a z R z (α) = cosα sinα 0 sinα cosα 0 0 0 1

rotazione di β intorno a y cosβ 0 sinβ R y (β) = 0 1 0 sinβ 0 cosβ rotazione di γ intorno a x R x (γ) = 1 0 0 0 cosγ sinγ 0 sinγ cosγ

Rappresentazione di un vettore p = p x p y p z p = p x p y p z p = x y z p = Rp p = R T p

Esempio p x = p x cosα p y sinα p y = p x sinα + p y cosα p z = p z

Rotazione di un vettore p = Rp p T p = p T R T Rp Esempio p x = p x cosα p y sinα p y = p x sinα + p y cosα p z = p z p = R z (α)p

Matrice di rotazione fornisce l orientamento di una terna di coordinate rispetto ad un altra: i vettori colonna sono i coseni direttori degli assi della terna ruotata rispetto alla terna di partenza rappresenta una trasformazione di coordinate che mette in relazione le coordinate di uno stesso punto in due terne differenti (di origine comune) è l operatore che consente di ruotare un vettore in una stessa terna di coordinate

COMPOSIZIONE DI MATRICI DI ROTAZIONE p 1 = R 1 2p 2 p 0 = R 0 1p 1 p 0 = R 0 2 p2 R j i = (Ri j ) 1 = (R i j )T Rotazione in terna corrente R 0 2 = R0 1 R1 2 Rotazione in terna fissa R 0 2 = R1 2 R0 1

Esempio

ANGOLI DI EULERO matrice di rotazione 9 parametri con 6 vincoli rappresentazione minima dell orientamento 3 parametri indipendenti

Angoli ZYZ R(φ) = R z (ϕ)r y (ϑ)r z (ψ) = c ϕc ϑ c ψ s ϕ s ψ c ϕ c ϑ s ψ s ϕ c ψ c ϕ s ϑ s ϕ c ϑ c ψ + c ϕ s ψ s ϕ c ϑ s ψ + c ϕ c ψ s ϕ s ϑ s ϑ c ψ s ϑ s ψ c ϑ

Problema inverso Assegnata R = r 11 r 12 r 13 r 21 r 22 r 23 r 31 r 32 r 33 i 3 angoli ZYZ sono (ϑ (0, π)) ϕ = Atan2(r 23, r 13 ) ( ) ϑ = Atan2 r13 2 + r2 23, r 33 ψ = Atan2(r 32, r 31 ) ovvero (ϑ ( π, 0)) ϕ = Atan2( r 23, r 13 ) ( ) ϑ = Atan2 r13 2 + r2 23, r 33 ψ = Atan2( r 32, r 31 )

Angoli di RPY R(φ) = R z (ϕ)r y (ϑ)r x (ψ) = c ϕc ϑ c ϕ s ϑ s ψ s ϕ c ψ c ϕ s ϑ c ψ + s ϕ s ψ s ϕ c ϑ s ϕ s ϑ s ψ + c ϕ c ψ s ϕ s ϑ c ψ c ϕ s ψ s ϑ c ϑ s ψ c ϑ c ψ

Problema inverso Assegnata R = r 11 r 12 r 13 r 21 r 22 r 23 r 31 r 32 r 33 i 3 angoli di RPY sono (ϑ ( π/2, π/2)) ϕ = Atan2(r 21, r 11 ) ( ) ϑ = Atan2 r 31, r32 2 + r2 33 ψ = Atan2(r 32, r 33 ) ovvero (ϑ (π/2, 3π/2)) ϕ = Atan2( r 21, r 11 ) ( ) ϑ = Atan2 r 31, r32 2 + r2 33 ψ = Atan2( r 32, r 33 )

ASSE/ANGOLO R(ϑ, r) = R z (α)r y (β)r z (ϑ)r y ( β)r z ( α) r y sinα = rx 2 + ry 2 sin β = rx 2 + ry 2 cosα = r x r 2 x + r 2 y cosβ = r z

R(ϑ, r) = r 2 x(1 c ϑ ) + c ϑ r x r y (1 c ϑ ) + r z s ϑ r x r y (1 c ϑ ) r z s ϑ r 2 y(1 c ϑ ) + c ϑ r x r z (1 c ϑ ) r y s ϑ r y r z (1 c ϑ ) + r x s ϑ r x r z (1 c ϑ ) + r y s ϑ r y r z (1 c ϑ ) r x s ϑ rz(1 2 c ϑ ) + c ϑ R(ϑ, r) = R( ϑ, r)

Problema inverso Assegnata R = r 11 r 12 r 13 r 21 r 22 r 23 r 31 r 32 r 33 l angolo e l asse di rotazione sono (sinϑ 0) ( ) ϑ = cos 1 r11 + r 22 + r 33 1 2 r = 1 r 32 r 23 r 13 r 31 2 sinϑ r 21 r 12 con r 2 x + r 2 y + r 2 z = 1

QUATERNIONE UNITARIO rappresentazione a 4 parametri Q = {η, ǫ} η = cos ϑ 2 ǫ = sin ϑ 2 r η 2 + ǫ 2 x + ǫ2 y + ǫ2 z = 1 (ϑ, r) e ( ϑ, r) forniscono lo stesso quaternione 2(η 2 + ǫ 2 x ) 1 2(ǫ xǫ y ηǫ z ) 2(ǫ x ǫ z + ηǫ y ) R(η, ǫ) = 2(ǫ x ǫ y + ηǫ z ) 2(η 2 + ǫ 2 y) 1 2(ǫ y ǫ z ηǫ x ) 2(ǫ x ǫ z ηǫ y ) 2(ǫ y ǫ z + ηǫ x ) 2(η 2 + ǫ 2 z ) 1

Problema inverso Assegnata R = r 11 r 12 r 13 r 21 r 22 r 23 r 31 r 32 r 33 il quaternione è (η 0) η = 2 1 r11 + r 22 + r 33 + 1 ǫ = 1 sgn(r 32 r 23 ) r 11 r 22 r 33 + 1 sgn(r 13 r 31 ) r 22 r 33 r 11 + 1 2 sgn(r 21 r 12 ) r 33 r 11 r 22 + 1 quaternione estratto da R 1 = R T Q 1 = {η, ǫ} prodotto tra quaternioni Q 1 Q 2 = {η 1 η 2 ǫ T 1 ǫ 2, η 1 ǫ 2 + η 2 ǫ 1 + ǫ 1 ǫ 2 }

TRASFORMAZIONI OMOGENEE Trasformazione di coordinate (traslazione + rotazione) p 0 = o 0 1 + R 0 1p 1 Trasformazione inversa p 1 = R 1 0o 0 1 + R 1 0p 0

Rappresentazione omogenea p = p 1 Matrice di trasformazione omogenea A 0 1 = R0 1 o 0 1 0 T 1 Trasformazione di coordinate p 0 = A 0 1 p1

Trasformazione inversa p 1 = A 1 0 p0 = ( A 0 1) 1 p 0 ove A 1 0 = R1 0 R0o 1 0 1 0 T 1 A 1 A T Successione di trasformazioni p 0 = A 0 1A 1 2... A n 1 n p n

CINEMATICA DIRETTA Manipolatore insieme di bracci connessi tramite giunti Catena cinematica (dalla base all organo terminale) aperta (sequenza unica) chiusa (sequenza forma un anello) Grado di mobilità tipicamente associato a una articolazione = variabile di giunto

Terna base e terna utensile Equazione cinematica diretta T b e (q) = nb e(q) s b e(q) a b e(q) p b e(q) 0 0 0 1

Manipolatore planare a due bracci T b e (q) = = nb e s b e a b e p b e 0 0 0 1 0 s 12 c 12 a 1 c 1 + a 2 c 12 0 c 12 s 12 a 1 s 1 + a 2 s 12 1 0 0 0 0 0 0 1

Catena aperta T 0 n (q) = A0 1 (q 1)A 1 2 (q 2)...A n 1 n (q n ) T b e (q) = T b 0T 0 n(q)t n e

Convenzione di Denavit-Hartenberg si sceglie l asse z i giacente lungo l asse del giunto i + 1 si individua O i all intersezione dell asse z i con la normale comune agli assi z i 1 e z i, e con O i si indica l intersezione della normale comune con z i 1 si assume l asse x i diretto lungo la normale comune agli assi z i 1 e z i con verso positivo dal giunto i al giunto i + 1 si sceglie l asse y i in modo da completare una terna levogira

Definizione non univoca della terna: con riferimento alla terna 0, per la quale la sola direzione dell asse z 0 risulta specificata: si possono quindi scegliere arbitrariamente O 0 ed x 0 con riferimento alla terna n, per la quale il solo asse x n risulta soggetto a vincolo (deve essere normale all asse z n 1 ): infatti non vi è giunto n + 1, per cui non è definito z n e lo si può scegliere arbitrariamente quando due assi consecutivi sono paralleli, in quanto la normale comune tra di essi non è univocamente definita quando due assi consecutivi si intersecano, in quanto il verso di x i è arbitrario quando il giunto i è prismatico, nel qual caso la sola direzione dell asse z i 1 è determinata

Parametri di Denavit-Hartenberg a i distanza di O i da O i ; d i coordinata su z i 1 di O i ; α i angolo intorno all asse x i tra l asse z i 1 e l asse z i valutato positivo in senso antiorario; ϑ i angolo intorno all asse z i 1 tra l asse x i 1 e l asse x i valutato positivo in senso antiorario. a i e α i sono sempre costanti se il giunto è rotoidale la variabile è ϑ i se il giunto è prismatico la variabile è d i

Trasformazione di coordinate A i 1 i = A i i = c ϑi s ϑi 0 0 s ϑi c ϑi 0 0 0 0 1 d i 0 0 0 1 1 0 0 a i 0 c αi s αi 0 0 s αi c αi 0 0 0 0 1 A i 1 i (q i ) = A i 1 i A i i = c ϑi s ϑi c αi s ϑi s αi a i c ϑi s ϑi c ϑi c αi c ϑi s αi a i s ϑi 0 s αi c αi d i 0 0 0 1

Procedura operativa 1. Individuare e numerare consecutivamente gli assi dei giunti; assegnare, rispettivamente, le direzioni agli assi z 0,..., z n 1 2. Fissare la terna base posizionandone l origine sull asse z 0 ; gli assi x 0 e y 0 sono scelti in maniera tale da ottenere una terna levogira Eseguire i passi da 3 a 5 per i = 1,...,n 1: 3. Individuare l origine O i all intersezione di z i con la normale comune agli assi z i 1 e z i. Se gli assi z i 1 e z i sono paralleli e il giunto i è rotoidale, posizionare O i in modo da annullare d i ; se il giunto i è prismatico, scegliere O i in corrispondenza di una posizione di riferimento per la corsa del giunto (ad esempio un fine-corsa) 4. Fissare l asse x i diretto lungo la normale comune agli assi z i 1 e z i con verso positivo dal giunto i al giunto i + 1 5. Fissare l asse y i in modo da ottenere una terna levogira Per completare: 6. Fissare la terna n, allineando z n lungo la direzione di z n 1 se il giunto n è rotoidale, ovvero scegliendo z n in maniera arbitraria se il giuntonèprismatico; fissare l assex n in accordo al punto 4 7. Costruire per i = 1,...,n la tabella dei parametri a i, d i, α i, ϑ i 8. Calcolare sulla base dei parametri di cui al punto 7 le matrici di trasformazione omogenea A i 1 i (q i ) per i = 1,...,n 9. Calcolare Tn(q) 0 = A 0 1...An 1 n che fornisce posizione e orientamento della terna n rispetto alla terna 0 10. Assegnate T b 0 e T n e, calcolare la funzione cinematica diretta T b e (q) = T b 0T 0 nt n e che fornisce posizione e orientamento della terna utensile rispetto alla terna base

Catena chiusa Connessione di un singolo braccio con due bracci giunto virtuale di taglio A i j(q ) = A i i+1 (q i+1 )...Aj 1j (q j ) A i k(q ) = A i i+1 (q i+1 )...Ak 1 k (q k )

Vincoli giunto j + 1 rotoidale { R j i (q ) ( p i j (q ) p i k (q ) ) = [0 z i j (q ) = z i k (q ) 0 d jk ] T giunto j + 1 prismatico [ x it j (q ) yj it(q ) zj i (q ) = zk i(q ) ] (p i j (q ) p i k (q ) ) = x it j (q )x i k (q ) = cosϑ jk risolti in termini di q... [ ] 0 0 T 0 n(q) = A 0 ia i ja j n

Procedura operativa 1. Selezionare un giunto non attuato della catena chiusa. Ipotizzare di aprire tale giunto in modo da ottenere una catena aperta con struttura ad albero 2. Calcolare le trasformazioni omogenee secondo la convenzione di Denavit-Hartenberg 3. Trovare i vincoli di uguaglianza per le due terne connesse dal giunto di taglio 4. Risolvere i vincoli in termini di un numero ridotto di variabili di giunto 5. Esprimere le trasformazioni omogenee in funzione di tali variabili di giunto e calcolare la funzione cinematica diretta per composizione della varie trasformazioni dalla terna base alla terna utensile

Manipolatore planare a tre bracci

Braccio a i α i d i ϑ i 1 a 1 0 0 ϑ 1 2 a 2 0 0 ϑ 2 3 a 3 0 0 ϑ 3

A i 1 i = c i s i 0 a i c i s i c i 0 a i s i i = 1, 2, 3 0 0 1 0 0 0 0 1 T 0 3 = A 0 1A 1 2A 2 3 = c 123 s 123 0 a 1 c 1 + a 2 c 12 + a 3 c 123 s 123 c 123 0 a 1 s 1 + a 2 s 12 + a 3 s 123 0 0 1 0 0 0 0 1

Manipolatore a parallelogramma

Braccio a i α i d i ϑ i 1 a 1 0 0 ϑ 1 2 a 2 0 0 ϑ 2 3 a 3 0 0 ϑ 3 1 a 1 0 0 ϑ 1 4 a 4 0 0 0

A 0 3 (q ) = A 0 1 A1 = 2 A2 3 c 1 2 3 s 1 2 3 0 a 1 c 1 + a 2 c 1 2 + a 3 c 1 2 3 s 1 2 3 c 1 2 3 0 a 1 s 1 + a 2 s 1 2 + a 3 s 1 2 3 0 0 1 0 0 0 0 1 A 0 1 (q ) = A 3 4 = c 1 s 1 0 a 1 c 1 s 1 c 1 0 a 1 s 1 0 0 1 0 0 0 0 1 1 0 0 a 4 0 1 0 0 0 0 1 0 0 0 0 1

Risoluzione vincoli orientamento (OK) posizione R 3 0 (q ) ( p 0 3 (q ) p 0 1 (q ) ) = 0 0 0 a 1 (c 1 + c 1 2 3 ) + a 1 (c 1 2 c 1 ) = 0 a 1 (s 1 + s 1 2 3 ) + a 1 (s 1 2 s 1 ) = 0 ϑ 2 = ϑ 1 ϑ 1 ϑ 3 = π ϑ 2 = π ϑ 1 + ϑ 1 Cinematica diretta T 0 4 (q) = A0 3 (q)a3 4 = c 1 s 1 0 a 1 c 1 a 4 c 1 s 1 c 1 0 a 1 s 1 a 4 s 1 0 0 1 0 0 0 0 1

Manipolatore sferico

Braccio a i α i d i ϑ i 1 0 π/2 0 ϑ 1 2 0 π/2 d 2 ϑ 2 3 0 0 d 3 0

A 0 1 = c 1 0 s 1 0 s 1 0 c 1 0 A 1 2 0 1 0 0 = 0 0 0 1 A 2 3 = 1 0 0 0 0 1 0 0 0 0 1 d 3 0 0 0 1 c 2 0 s 2 0 s 2 0 c 2 0 0 1 0 d 2 0 0 0 1 T 0 3 = A 0 1A 1 2A 2 3 = c 1 c 2 s 1 c 1 s 2 c 1 s 2 d 3 s 1 d 2 s 1 c 2 c 1 s 1 s 2 s 1 s 2 d 3 + c 1 d 2 s 2 0 c 2 c 2 d 3 0 0 0 1

Manipolatore antropomorfo

Braccio a i α i d i ϑ i 1 0 π/2 0 ϑ 1 2 a 2 0 0 ϑ 2 3 a 3 0 0 ϑ 3

A i 1 i = A 0 1 = c 1 0 s 1 0 s 1 0 c 1 0 0 1 0 0 0 0 0 1 c i s i 0 a i c i s i c i 0 a i s i 0 0 1 0 0 0 0 1 i = 2, 3 T 0 3 = A 0 1A 1 2A 2 3 = c 1 c 23 c 1 s 23 s 1 c 1 (a 2 c 2 + a 3 c 23 ) s 1 c 23 s 1 s 23 c 1 s 1 (a 2 c 2 + a 3 c 23 ) s 23 c 23 0 a 2 s 2 + a 3 s 23 0 0 0 1

Polso sferico

Braccio a i α i d i ϑ i 4 0 π/2 0 ϑ 4 5 0 π/2 0 ϑ 5 6 0 0 d 6 ϑ 6

A 3 4 = c 4 0 s 4 0 s 4 0 c 4 0 A 4 5 0 1 0 0 = 0 0 0 1 A 5 6 = c 6 s 6 0 0 s 6 c 6 0 0 0 0 1 d 6 0 0 0 1 c 5 0 s 5 0 s 5 0 c 5 0 0 1 0 0 0 0 0 1 T 3 6 = A 3 4A 4 5A 5 6 = c 4 c 5 c 6 s 4 s 6 c 4 c 5 s 6 s 4 c 6 c 4 s 5 c 4 s 5 d 6 s 4 c 5 c 6 + c 4 s 6 s 4 c 5 s 6 + c 4 c 6 s 4 s 5 s 4 s 5 d 6 s 5 c 6 s 5 s 6 c 5 c 5 d 6 0 0 0 1

Manipolatore di Stanford

T 0 6 = T 0 3 T 3 6 = n0 s 0 a 0 p 0 0 0 0 1

p 0 = n 0 = s 0 = a 0 = c 1 s 2 d 3 s 1 d 2 + ( ) c 1 (c 2 c 4 s 5 + s 2 c 5 ) s 1 s 4 s 5 d6 s 1 s 2 d 3 + c 1 d 2 + ( ) s 1 (c 2 c 4 s 5 + s 2 c 5 ) + c 1 s 4 s 5 d6 c 2 d 3 + ( s 2 c 4 s 5 + c 2 c 5 )d 6 ( ) c 1 ( c2 (c 4 c 5 c 6 s 4 s 6 ) s 2 s 5 c 6 ) s1 (s 4 c 5 c 6 + c 4 s 6 ) s 1 c2 (c 4 c 5 c 6 s 4 s 6 ) s 2 s 5 c 6 + c1 (s 4 c 5 c 6 + c 4 s 6 ) s 2 (c 4 c 5 c 6 s 4 s 6 ) c 2 s 5 c 6 ( ) c 1 ( c2 (c 4 c 5 s 6 + s 4 c 6 ) + s 2 s 5 s 6 ) s1 ( s 4 c 5 s 6 + c 4 c 6 ) s 1 c2 (c 4 c 5 s 6 + s 4 c 6 ) + s 2 s 5 s 6 + c1 ( s 4 c 5 s 6 + c 4 c 6 ) s 2 (c 4 c 5 s 6 + s 4 c 6 ) + c 2 s 5 s 6 c 1(c 2 c 4 s 5 + s 2 c 5 ) s 1 s 4 s 5 s 1 (c 2 c 4 s 5 + s 2 c 5 ) + c 1 s 4 s 5 s 2 c 4 s 5 + c 2 c 5

Manipolatore antropomorfo con polso sferico

Braccio a i α i d i ϑ i 1 0 π/2 0 ϑ 1 2 a 2 0 0 ϑ 2 3 0 π/2 0 ϑ 3 4 0 π/2 d 4 ϑ 4 5 0 π/2 0 ϑ 5 6 0 0 d 6 ϑ 6

A 2 3 = c 3 0 s 3 0 s 3 0 c 3 0 A 3 4 0 1 0 0 = 0 0 0 1 c 4 0 s 4 0 s 4 0 c 4 0 0 1 0 d 4 0 0 0 1 p 0 = n 0 = s 0 = a 0 = ( ) a 2 c 1 c 2 + d 4 c 1 s 23 + d 6 ( c1 (c 23 c 4 s 5 + s 23 c 5 ) + s 1 s 4 s 5 ) a 2 s 1 c 2 + d 4 s 1 s 23 + d 6 s1 (c 23 c 4 s 5 + s 23 c 5 ) c 1 s 4 s 5 a 2 s 2 d 4 c 23 + d 6 (s 23 c 4 s 5 c 23 c 5 ) ( ) c 1 ( c23 (c 4 c 5 c 6 s 4 s 6 ) s 23 s 5 c 6 ) + s1 (s 4 c 5 c 6 + c 4 s 6 ) s 1 c23 (c 4 c 5 c 6 s 4 s 6 ) s 23 s 5 c 6 c1 (s 4 c 5 c 6 + c 4 s 6 ) s 23 (c 4 c 5 c 6 s 4 s 6 ) + c 23 s 5 c 6 ( ) c 1 ( c23 (c 4 c 5 s 6 + s 4 c 6 ) + s 23 s 5 s 6 ) + s1 ( s 4 c 5 s 6 + c 4 c 6 ) s 1 c23 (c 4 c 5 s 6 + s 4 c 6 ) + s 23 s 5 s 6 c1 ( s 4 c 5 s 6 + c 4 c 6 ) s 23 (c 4 c 5 s 6 + s 4 c 6 ) c 23 s 5 s 6 c 1(c 23 c 4 s 5 + s 23 c 5 ) + s 1 s 4 s 5 s 1 (c 23 c 4 s 5 + s 23 c 5 ) c 1 s 4 s 5 s 23 c 4 s 5 c 23 c 5

Manipolatore del DLR Braccio a i α i d i ϑ i 1 0 π/2 0 ϑ 1 2 0 π/2 0 ϑ 2 3 0 π/2 d 3 ϑ 3 4 0 π/2 0 ϑ 4 5 0 π/2 d 5 ϑ 5 6 0 π/2 0 ϑ 6 7 0 0 d 7 ϑ 7

A i 1 i = c i 0 s i 0 s i 0 c i 0 0 1 0 d i 0 0 0 1 A 6 7 = c 7 s 7 0 0 s 7 c 7 0 0 0 0 1 d 7 0 0 0 1 i = 1,...,6 p 0 7 = x d3 = c 1 s 2 d 3x d3 + d 5 x d5 + d 7 x d7 d 3 y d3 + d 5 y d5 + d 7 y d7 d 3 z d3 + d 5 z d5 + d 7 z d7 x d5 = c 1 (c 2 c 3 s 4 s 2 c 4 ) + s 1 s 3 s 4 x d7 = c 1 (c 2 k 1 + s 2 k 2 ) + s 1 k 3 y d3 = s 1 s 2 y d5 = s 1 (c 2 c 3 s 4 s 2 c 4 ) c 1 s 3 s 4 y d7 = s 1 (c 2 k 1 + s 2 k 2 ) c 1 k 3 z d3 = c 2 z d5 = c 2 c 4 + s 2 c 3 s 4 z d7 = s 2 (c 3 (c 4 c 5 s 6 s 4 c 6 ) + s 3 s 5 s 6 ) c 2 k 2 k 1 = c 3 (c 4 c 5 s 6 s 4 c 6 ) + s 3 s 5 s 6 k 2 = s 4 c 5 s 6 + c 4 c 6 k 3 = s 3 (c 4 c 5 s 6 s 4 c 6 ) c 3 s 5 s 6

n 0 7 = s 0 7 = ((x ac 5 + x c s 5 )c 6 + x b s 6 )c 7 + (x a s 5 x c c 5 )s 7 ((y a c 5 + y c s 5 )c 6 + y b s 6 )c 7 + (y a s 5 y c c 5 )s 7 (z a c 6 + z c s 6 )c 7 + z b s 7 ((x a c 5 + x c s 5 )c 6 + x b s 6 )s 7 + (x a s 5 x c c 5 )c 7 ((y a c 5 + y c s 5 )c 6 + y b s 6 )s 7 + (y a s 5 y c c 5 )c 7 (z a c 6 + z c s 6 )s 7 + z b c 7 a 0 7 = (x ac 5 + x c s 5 )s 6 x b c 6 (y a c 5 + y c s 5 )s 6 y b c 6 z a s 6 z c c 6 se α 7 = π/2 x a = (c 1 c 2 c 3 + s 1 s 3 )c 4 + c 1 s 2 s 4 x b = (c 1 c 2 c 3 + s 1 s 3 )s 4 c 1 s 2 c 4 x c = c 1 c 2 s 3 s 1 c 3 y a = (s 1 c 2 c 3 c 1 s 3 )c 4 + s 1 s 2 s 4 y b = (s 1 c 2 c 3 c 1 s 3 )s 4 s 1 s 2 c 4 y c = s 1 c 2 s 3 + c 1 c 3 z a = (s 2 c 3 c 4 c 2 s 4 )c 5 + s 2 s 3 s 5 z b = (s 2 c 3 s 4 + c 2 c 4 )s 5 s 2 s 3 c 5 z c = s 2 c 3 s 4 + c 2 c 4 A 6 7 = c 7 0 s 7 a 7 c 7 s 7 0 c 7 a 7 s 7 0 0 1 0 0 0 0 1

Manipolatore umanoide Braccia costituite da due manipolatori del DLR (α 7 = π/2) Struttura di collegamento tra l organo terminale del torso antropomorfo e le terne base dei manipolatori che fungono da braccia meccanismo che permette di mantenere il petto del manipolatore umanoide sempre ortogonale al suolo (ϑ 4 = ϑ 2 ϑ 3 ) Cinematica diretta Trh 0 = T 3 0 T t 3 T r t T rh r Tlh 0 = T3 0 Tt 3 Tl t Tlh l

T 0 3 T 3 t = c 23 s 23 0 0 s 23 c 23 0 0 0 0 1 0 0 0 0 1 come nel manipolatore antropomorfo T t r e T t l dipendono da β T r rh e T r lh come nel manipolatore del DLR

SPAZIO DEI GIUNTI E SPAZIO OPERATIVO Spazio dei giunti q = q 1.. q n q i = ϑ i (giunto rotoidale) q i = d i (giunto prismatico) Spazio operativo p (posizione) φ (orientamento) x = [ ] p φ Equazione cinematica diretta x = k(q)

Esempio x = p x p y φ = k(q) = a 1c 1 + a 2 c 12 + a 3 c 123 a 1 s 1 + a 2 s 12 + a 3 s 123 ϑ 1 + ϑ 2 + ϑ 3

Spazio di lavoro Spazio di lavoro raggiungibile p = p(q) q im q i q im i = 1,...,n elementi di superficie planare, sferica, toroidale e cilindrica Spazio di lavoro destro orientamenti diversi

Esempio configurazioni ammissibili

spazio di lavoro

Accuratezza scostamento tra posizione conseguita con la postura assegnata e posizione calcolata tramite la cinematica diretta valori tipici: (0.2, 1) mm Ripetibilità capacità del manipolatore di tornare in una posizione precedentemente raggiunta valori tipici: (0.02, 0.2) mm Ridondanza cinematica m < n (intrinseca) r < m = n (funzionale)

CALIBRAZIONE CINEMATICA Valori precisi dei parametri DH per migliorare l accuratezza di un manipolatore Equazione cinematica diretta in funzione di tutti i parametri x = k(a, α, d, ϑ) x m locazione misurata x n locazione nominale (parametri fissi + variabili giunto) x = k k a + a α = Φ(ζ n ) ζ k k α + d + d ϑ ϑ

l misure (lm 4n) x 1 x =. = x l Φ 1. Φ l ζ = Φ ζ Soluzione ζ = ( Φ T Φ) 1 ΦT x... finché ζ converge ζ = ζ n + ζ stime più accurate dei parametri fissi correzioni alle misure dei trasduttori Inizializzazione postura di riferimento (home)

PROBLEMA CINEMATICO INVERSO Cinematica diretta q = T q = x Cinematica inversa T = q x = q Complessità soluzione analitica (in forma chiusa)? soluzioni multiple infinite soluzioni non esistono soluzioni ammissibili Intuizione algebrica geometrica Tecniche numeriche

Soluzione del manipolatore planare a tre bracci Soluzione algebrica φ = ϑ 1 + ϑ 2 + ϑ 3 p Wx = p x a 3 c φ = a 1 c 1 + a 2 c 12 p Wy = p y a 3 s φ = a 1 s 1 + a 2 s 12

c 2 = p2 Wx + p2 Wy a2 1 a2 2 2a 1 a 2 s 2 = ± 1 c 2 2 ϑ 2 = Atan2(s 2, c 2 ) s 1 = (a 1 + a 2 c 2 )p Wy a 2 s 2 p Wx p 2 Wx + p2 Wy c 1 = (a 1 + a 2 c 2 )p Wx + a 2 s 2 p Wy p 2 Wy + p2 Wy ϑ 1 = Atan2(s 1, c 1 ) ϑ 3 = φ ϑ 1 ϑ 2

Soluzione geometrica c 2 = p2 Wx + p2 Wy a2 1 a2 2 2a 1 a 2. ϑ 2 = cos 1 (c 2 ) α = Atan2(p Wy, p Wx ) c β p 2 Wx + p2 Wy = a 1 + a 2 c 2 β = cos 1 p2 Wx + p2 Wy + a2 1 a2 2 2a 1 p 2 Wx + p2 Wy ϑ 1 = α ± β

Soluzione di manipolatori con polso sferico p W = p d 6 a Soluzione disaccoppiata calcolare la posizione del polso p W (q 1, q 2, q 3 ) risolvere la cinematica inversa per (q 1, q 2, q 3 ) calcolare R3 0(q 1, q 2, q 3 ) calcolare R6(ϑ 3 4, ϑ 5, ϑ 6 ) = R3 0T R risolvere la cinematica inversa per l orientamento(ϑ 4, ϑ 5, ϑ 6 )

Soluzione del manipolatore sferico (A 0 1 ) 1 T 0 3 = A1 2 A2 3 p 1 W = p Wxc 1 + p Wy s 1 p Wz p Wx s 1 + p Wy c 1 = d 3s 2 d 3 c 2 d 2

c 1 = 1 t2 1 + t 2 s 1 = 2t 1 + t 2 (d 2 + p Wy )t 2 + 2p Wx t + d 2 p Wy = 0 ( ) ϑ 1 = 2Atan2 p Wx ± p 2Wx + p2wy d22, d 2 + p Wy p Wx c 1 + p Wy s 1 p Wz = d 3s 2 d 3 c 2 ϑ 2 = Atan2(p Wx c 1 + p Wy s 1, p Wz ) d 3 = (p Wx c 1 + p Wy s 1 ) 2 + p 2 Wz

Soluzione del manipolatore antropomorfo p Wx = c 1 (a 2 c 2 + a 3 c 23 ) p Wy = s 1 (a 2 c 2 + a 3 c 23 ) p Wz = a 2 s 2 + a 3 s 23 c 3 = p2 Wx + p2 Wy + p2 Wz a2 2 a2 3 2a 2 a 3 s 3 = ± 1 c 2 3 ϑ 3 = Atan2(s 3, c 3 ) ϑ 3,I [ π, π] ϑ 3,II = ϑ 3,I

c 2 = s 2 = ± p 2 Wx + p2 Wy (a 2 + a 3 c 3 ) + p Wz a 3 s 3 a 2 2 + a2 3 + 2a 2a 3 c 3 p Wz (a 2 + a 3 c 3 ) p 2 Wx + p2 Wy a 3s 3 a 2 2 + a2 3 + 2a 2a 3 c 3 ϑ 2 = Atan2(s 2, c 2 ) per s + 3 = 1 c 2 3 : ( ϑ 2,I = Atan2 (a 2 + a 3 c 3 )p Wz a 3 s + 3 p 2 Wx + p2 Wy, ) (a 2 + a 3 c 3 ) p 2 Wx + p2 Wy + a 3s + 3 p Wz ( ϑ 2,II = Atan2 (a 2 + a 3 c 3 )p Wz + a 3 s + 3 p 2 Wx + p2 Wy, ) (a 2 + a 3 c 3 ) p 2 Wx + p2 Wy + a 3s + 3 p Wz per s 3 = 1 c 2 3 : ( ϑ 2,III = Atan2 (a 2 + a 3 c 3 )p Wz a 3 s 3 p 2 Wx + p2 Wy, ) (a 2 + a 3 c 3 ) p 2 Wx + p2 Wy + a 3s 3 p Wz ( ϑ 2,IV = Atan2 (a 2 + a 3 c 3 )p Wz + a 3 s 3 p 2 Wx + p2 Wy, ) (a 2 + a 3 c 3 ) p 2 Wx + p2 Wy + a 3s 3 p Wz

ϑ 1,I = Atan2(p Wy, p Wx ) ϑ 1,II = Atan2( p Wy, p Wx ) Quattro configurazioni ammissibili (ϑ 1,I, ϑ 2,I, ϑ 3,I ) (ϑ 1,I, ϑ 2,III, ϑ 3,II ) (ϑ 1,II, ϑ 2,II, ϑ 3,I ) (ϑ 1,II, ϑ 2,IV, ϑ 3,II ) soluzione univoca solo se p Wx 0 p Wy 0

Soluzione del polso sferico R 3 6 = n 3 x s 3 x a 3 x n 3 y s 3 y a 3 y n 3 z s 3 z a 3 z ϑ 4 = Atan2(a 3 y, a 3 x) ( ) ϑ 5 = Atan2 (a 3 x) 2 + (a 3 y) 2, a 3 z ϑ 6 = Atan2(s 3 z, n3 z ) ϑ 4 = Atan2( a 3 y, a3 x ( ) ) ϑ 5 = Atan2 (a 3 x )2 + (a 3 y )2, a 3 z ϑ 6 = Atan2( s 3 z, n 3 z)