Robotica & Automazione di Processo Robotics Toolbox per MATLAB

Slides:



Advertisements
Presentazioni simili
Tecniche e Linguaggi di Programmazione
Advertisements

Meccanica 6 21 marzo 2011 Cambiamento di sistema di riferimento
Stazione 1 Stazione 2 R1 R2 IN OUT Descrizione del sistema Stazione 1 Stazione 2 R1 R2 IN OUT Partenza da vuoto
Spazio dei giunti e spazio operativo
MATLAB.
MATLAB.
Cinematica diretta Un manipolatore è costituito da un insieme di corpi rigidi (bracci) connessi in cascata tramite coppie cinematiche (giunti). Si assume.
Cinematica del braccio di un robot
Cinematica differenziale
Dinamica del manipolatore
Presentazione finale di
Robotica & Automazione di Processo manipolatori industriali
Visione Stereo & Geometria Epipolare
Robotica & Automazione di Processo
Corso di Percezione Robotica (PRo) A.A. 99/00 B. Modulo di Robotica
Modellistica e Simulazione dei Sistemi Meccanici
Il problema cinematico inverso tratta la determinazione delle variabili di giunto assegnata la posizione e l’assetto dell’organo finale del manipolatore.
Un manipolatore è costituito da un insieme di corpi rigidi (bracci) connessi in cascata tramite coppie cinematiche (giunti) a formare una catena cinematica.
Cinematica differenziale
Simulazione - Inversione Cinematica
Esempio – Manipolatore Antropomorfo
Costruzione di Interfacce Lezione 4 Sistemi di riferimento e trasformazioni
Costruzione di Interfacce Lezione 4 Nozioni di geometria per la grafica
Costruzione di Interfacce Lezione 4 Geometria per la grafica
Costruzione di Interfacce Lezione 5 Trasformazioni Affini
MATLAB.
Metodi FEM per problemi ellittici
Robot Puma 560 Caratteristiche
UNIVERSITÀ DEGLI STUDI DI PERUGIA Dipartimento di Ingegneria Industriale Prof. Francesco Castellani Corso di Meccanica Applicata A.
Lezione 9 Invarianze e leggi di conservazione: definizioni generali
Puma 560 Z0 X0 Y0 La terna utensile (u) è orientata come la terna (6).
ROBOT CILINDRICO RPP 1 giunto rotoidale con asse verticale
ROBOT SPAZIALE RRR DESCRIZIONE
Velocità e accelerazioni del Robot Puma 560
ROBOT CILINDRICO RPP R19 1 giunto rotoidale con asse verticale
CINEMATICA E DINAMICA PER UN ROBOT PLANARE RPR Descrizione
Robot Puma 560 prodotto da RP Automation, Inc.
ROBOT PUMA 560 Descrizione
ROBOT CILINDRICO RPP Impostazione del problema cinematico
ROBOT CILINDRICO RPP 1 giunto rotoidale con asse verticale
Robot RRR con polso sferico
Configurazione corrispondente a
ROBOT PUMA 560 Caratteristiche
Il modello atomico a orbitali
INTRODUZIONE A MATLAB LEZIONE 4 Sara Poltronieri slide3.4 matlabintro
Studio delle singolarità del robot a 7 giunti KUKA LWR4
Fondamenti di Robotica
Copertina 1.
Le proiezioni e la prospettiva
Le trasformazioni Daniele Marini.
Le proiezioni e la prospettiva
Le proiezioni e la prospettiva
Controllare le proiezioni
Corso di Programmazione Grafica e Laboratorio Daniele Marini
Trasformazioni Daniele Marini.
Corso Di Programmazione Grafica
Rotazioni e quaternioni
Corso Di Programmazione Grafica aa2006/2007
Controllare la prospettiva
Controllare la prospettiva
Milano, 17 Dicembre 2013 Informatica B Informatica B Matlab Laboratorio del 14/01/2014 Responsabili di laboratorio: Gianluca Durelli:
Lezione 1: Introduzione all’uso di Matlab
ROBOTICA STRUTTURA DI UN ROBOT
Whole-body dynamic behavior and control of human-like robots. Analisi di un articolo del dipartimento di scienze informatiche dell’università di Stanford.
Lezione 2: Simulink Ing. Raffaele Carli (
Metodi numerici per lo studio di sistemi multicorpo
Momento angolare.
Daniele Marini Con contributi di Maurizio Rossi
M. De Cecco - Lucidi del corso di Robotica e Sensor Fusion Se i parametri di Denavit-Hartemberg non corrispondono con quelli di progetto a causa di tolleranze.
Le Macchine Matematiche III incontro Provincia di Ravenna 1 giugno Progetto regionale Scienze e tecnologie Laboratorio delle macchine matematiche.
Transcript della presentazione:

Robotica & Automazione di Processo Robotics Toolbox per MATLAB Ing. Gian Luca Mariottini (Ph.D. Student) WEB: http://www.dii.unisi.it/~gmariottini E-mail: gmariottini@dii.unisi.it

“Chi ha raggiunto lo stadio di non meravigliarsi più di nulla dimostra semplicemente di aver perduto l’arte del ragionare e del riflettere.” Max Planck “Robotica & Automazione di Processo” DII- A.A.03 -04

Introduzione Il Robotics Toolbox rende disponibile un set di funzioni molto utili in robotica per lo studio della cinematica e della dinamica di robot e per la generazione di traiettorie. 2 utilizzi: 1) simulazione 2) analisi dei risultati sperimentali effettuati con robot reali Autore: Peter I. Corke, CSIRO, Manufacturing Science and Technology Pinjarra Hills, Australia. “Robotica & Automazione di Processo” DII- A.A.03 -04

Introduzione Il Robotics Toolbox fa uso della notazione comunemente usata per la rappresentazione della cinematica di un manipolatore. Tutti i parametri sono incapsulati in Matlab Objects Gli oggetti Robot possono essere creati per ogni manipolatore a catena cinematica aperta. Sono già inclusi i modelli di alcuni robot (Puma 560, il manipolatore di Stanford o il manipolatore antropomorfo + polso sferico). WEB Site: http://www.cat.csiro.au/cmst/staff/pic/robot “Robotica & Automazione di Processo” DII- A.A.03 -04

Introduzione Il manuale contenente un tutorial e la descrizione di ogni funzione messa a disposizione è fornito nel file robot.pdf, mentre una demo che descrive le funzionalità del toolbox può essere invocata con la funzione rtdemo. In questa lezione… 1. Esempio di un manipolatore 2. Trasformazioni Omogenee 3. Costruzione di un robot 4. Cinematica 5. Generazione di traiettorie dei giunti “Robotica & Automazione di Processo” DII- A.A.03 -04

Esercizio 1 Manipolatore planare a 2 bracci e assumendo a1=a2=1 si ha: “Robotica & Automazione di Processo” DII- A.A.03 -04

Esercizio 1 Si creano i link…. >> LINK([ alpha A theta D sigma]) ove sigma=[0,1] a seconda che il giunto sia rotoidale oppure prismatico. >> L1 = link([0 1 0 0 0]) L1 = 0.0 1.0 0.0 0.0 R >> L2 = link([0 1 0 0 0]) L2 = 0.0 1.0 0.0 0.0 R I link vengono ora passati alla funzione “robot” che genera il manipolatore. R = robot({L1, L2}); “Robotica & Automazione di Processo” DII- A.A.03 -04

Esercizio 1 >> R R = (2 axis, RR) grav = [0.00 0.00 9.81] standard D&H parameters alpha A theta D R/P0.000000 1.000000 0.000000 0.000000 R 0.000000 1.000000 0.000000 0.000000 R E’ possibile dare anche un nome al manipolatore, un produttore, etc. >> R.name='Manipolatore Planare a due bracci' >> R.manuf='Gian Luca Mariottini - University of Siena (ITALY)' “Robotica & Automazione di Processo” DII- A.A.03 -04

Trasformazioni Omogenee Codice: function r = transl(x, y, z) t = [x; y; z]; r = [ eye(3) t; 0 0 0 1]; Pura traslazione: >> transl(0.5, 0.0, 0.0) ans= Columns 1 through 4 1 0 0 0 1 0 0 0 1 0 0 0 5.000000000000000e-001 1.000000000000000e+000 “Robotica & Automazione di Processo” DII- A.A.03 -04

Trasformazioni Omogenee Pura traslazione: Trasformazione omogenea per rotazioni attorno gli assi coordinati ) rotx(), roty(), rotz() Esempio: function r = rotz(t) ct = cos(t); st = sin(t); r = [ct -st 0 0 st ct 0 0 0 0 1 0 0 0 0 1]; Concatenazione di rot() & transl(): t = transl(0.5, 0.0, 0.0) * roty(pi/2) * rotz(-pi/2) “Robotica & Automazione di Processo” DII- A.A.03 -04

Angoli di Eulero Trasformazione omogenea a partire dagli angoli di Eulero Á, µ, Ã. ) eul2tr() Codice: function r = eul2tr(phi, theta, psi) r = rotz(phi) * roty(theta) * rotz(psi); ) angoli ZYZ ) la funzione inversa è tr2eul() che fornisce gli angoli di Eulero corrispondenti alla parte di orientamento della trasformazione omogenea in argomento. “Robotica & Automazione di Processo” DII- A.A.03 -04

Angoli di Roll-Pitch-Yaw Trasformazione omogenea a partire dagli angoli di Roll-Pitch-Yaw. ) rpy2tr() Codice: function r = rpy2tr(roll, pitch, yaw) r = rotz(roll) * roty(pitch) * rotx(yaw); ) angoli ZYX ) la funzione inversa è tr2rpy() che fornisce gli angoli RPY corrispondenti alla parte di orientamento della trasformazione omogenea in argomento. “Robotica & Automazione di Processo” DII- A.A.03 -04

Asse equivalente di rotazione Trasformazione omogenea che esprime la rotazione di un certo angolo attorno un vettore nello spazio. ) rotvec() Esempio: il comando rotvec(V,THETA) fornisce la trasformazione omogenea che rappresenta una rotazione di THETA attorno a V. “Robotica & Automazione di Processo” DII- A.A.03 -04

Esercizio Data la stazione di lavoro indicata a sinistra si ricavi la matrice di trasformazione omogenea Svolgimento: Roc=roundn( roty(pi)*rotz(pi/2) ) “Robotica & Automazione di Processo” DII- A.A.03 -04

Esercizio “Robotica & Automazione di Processo” DII- A.A.03 -04 >> R1=roundn(rotx(pi)) R1 = 1 0 0 0 0 -1 0 0 0 0 -1 0 0 0 0 1 “Robotica & Automazione di Processo” DII- A.A.03 -04

Principali Funzioni “Robotica & Automazione di Processo” DII- A.A.03 -04

Principali Funzioni “Robotica & Automazione di Processo” DII- A.A.03 -04

Principali Funzioni Alcuni esempi: 1) Manipolatore planare 2 bracci 2) Manipolatore SCARA 3) Manipolatore Antropomorfo “Robotica & Automazione di Processo” DII- A.A.03 -04