Fondamenti di robotica

Transcription

Fondamenti di robotica
Fondamenti di robotica
Introduzione al corso
Prof. Gianantonio Magnani (gianantonio.magnani@polimi.it)
Robotica
Robot IEEE Robotics and Automation Society
http://wiki.ieee-ras.org/student
Robot roombla
http://store.irobot.com/category/index.jsp?categoryId=3334619
Robot
Robot da cucina
Robot pagina di google industrial robot
http://www.google.com/#q=robot+industrial&hl=en&prmd=ivns&sou
rce=univ&tbs=vid:1&tbo=u&sa=X&ei=UMVyTeHDAs208QPZ1amvCA
&sqi=2&ved=0CGQQqwQ&fp=a924d6aaad554860
Fondamenti di robotica - Introduzione - G. Magnani [2]
Robotica avanzata e industriale
Robotica
• studia le macchine che possano sostituire l’uomo nell’esecuzione di un
compito, sia in termini di attività fisica che decisionale.
• studia la connessione intelligente tra percezione e azione
Si distingue tra:
Robotica di servizio
• applicazioni domestiche, assistenza medica, robotica per protesi mediche,
intrattenimento, agricoltura, education, …
•applicazioni in ambiente ostile (spaziale, sottomarino, nucleare, militare…)
Robotica industriale
• applicazioni dei robot in ambito industriale
• tecnologia matura e affidabile
Fondamenti di robotica - Introduzione - G. Magnani [3]
Il robot industriale
Il robot è un manipolatore multifunzionale
riprogrammabile, progettato per muovere
materiali, parti, attrezzi o dispositivi
specialistici attraverso movimenti
programmati variabili, per l’esecuzione di
una varietà di compiti
(Robot Institute of America, 1980)
Componente di qualità dei sistemi di
produzione automatizzati
(soft automation vs. hard automation)
Comunanze nelle funzioni di controllo, nel
software e nel hardware con diversi altri
componenti dei sistemi di produzione …
COMAU SpA
Fondamenti di robotica - Introduzione - G. Magnani [4]
Il robot industriale
Il robot si compone di:
Struttura meccanica:
catena meccanica, attuatori
e sensori
Unità di governo
COMAU SpA
COMAU SpA
Fondamenti di robotica - Introduzione - G. Magnani [5]
Il sistema meccanico
La catena meccanica è costituito da una serie di
corpi rigidi (link) connessi da giunti
Un’estremità della catena (primo link) è costituita
dalla BASE, di norma fissata a terra.
All’ultimo link (flangia terminale) si collega
l’END EFFECTOR (pinza, strumento di lavoro)
o organo terminale
Ogni giunto è un grado di libertà del robot
Nella catena meccanica si individua una
struttura portante che garantisce il
posizionamento ed un POLSO che fornisce i
gradi di libertà di orientamento dell’EE
Fondamenti di robotica - Introduzione - G. Magnani [6]
La catena meccanica
Terminologia essenziale
7 gradi di libertà o mobilità (7 dof)
giunto
braccio
link
polso
flangia
link
spalla
giunto di
rotazione
base
Fondamenti di robotica - Introduzione - G. Magnani [7]
Strutture portanti
Manipolatore cartesiano
• Tre giunti prismatici
• Ad ogni grado di libertà ai giunti corrisponde un
grado di libertà cartesiano
• Molto rigido meccanicamente
Manipolatore a portale
• Per la manipolazione di oggetti di
peso rilevante
I disegni sono tratti dal testo:
L.Sciavicco, B.Siciliano
Robotica industriale – Modellistica e controllo di robot manipolatori (2a ed.)
Mc Graw-Hill, 2000
Fondamenti di robotica - Introduzione - G. Magnani [8]
Strutture portanti
Manipolatore cilindrico
• Un giunto rotoidale e due prismatici
• Coordinate cilindriche
• Buona rigidezza meccanica
Manipolatore sferico
• Due giunti rotoidali ed uno prismatico
• Coordinate sferiche
• Discreta rigidezza meccanica
I disegni sono tratti dal testo:
L.Sciavicco, B.Siciliano
Robotica industriale – Modellistica e controllo di robot manipolatori (2a ed.)
Mc Graw-Hill, 2000
Fondamenti di robotica - Introduzione - G. Magnani [9]
Strutture portanti
Manipolatore SCARA
• Due giunti rotoidali e uno prismatico
• Rigido a carichi verticali e cedevole a carichi
orizzontali
• “Selective Compliance Assembly Robot Arm”
Manipolatore antropomorfo
• Tre giunti rotoidali
• Struttura destra
• Rigidezza meccanica variabile con la
configurazione
I disegni sono tratti dal testo:
L.Sciavicco, B.Siciliano
Robotica industriale – Modellistica e controllo di robot manipolatori (2a ed.)
Mc Graw-Hill, 2000
Fondamenti di robotica - Introduzione - G. Magnani [10]
Polso sferico
3 gradi di libertà di rotazione
Assi di rotazione che si intersecano in un solo punto
flangia
utensile pinza
Fondamenti di robotica - Introduzione - G. Magnani [11]
Esempi di robot industriali
AdeptOne XL
• Struttura SCARA
• Quattro giunti
• Portata 12 Kg
• Ripetibilità: 0.025÷0.038 mm
COMAU SMART S2
• Struttura antropomorfa
• Sei giunti
• Portata 16 Kg
• Ripetibilità: 0.1 mm
Gli esempi sono tratti dal testo:
L.Sciavicco, B.Siciliano
Robotica industriale – Modellistica e controllo di robot manipolatori (2a ed.)
Mc Graw-Hill, 2000
Fondamenti di robotica - Introduzione - G. Magnani [12]
Esempi di robot industriali
ABB IRB 4400
• Struttura antropomorfa con parallelogramma
• Sei giunti
• Portata 60 Kg
• Ripetibilità: 0.07÷0.1 mm
Unità lineare Kuka KL 250 con robot KR 15/2
• Struttura antropomorfa montata su slitta con
installazione a portale
• Sei giunti + giunto lineare
• Portata 25 Kg
• Ripetibilità: 0.1 mm
Gli esempi sono tratti dal testo:
L.Sciavicco, B.Siciliano
Robotica industriale – Modellistica e controllo di robot manipolatori (2a ed.)
Mc Graw-Hill, 2000
Fondamenti di robotica - Introduzione - G. Magnani [13]
Esempi di robot industriali
Robotics Research K-1207i
• Struttura antropomorfa
• Sette giunti
• Giunto addizionale rotoidale: aumenta destrezza
e consente di ripiegare
FANUC I-21i
• Struttura antropomorfa
• Sei giunti
• Sensore di forza
• Sistema di visione 3D
Gli esempi sono tratti dal testo:
L.Sciavicco, B.Siciliano
Robotica industriale – Modellistica e controllo di robot manipolatori (2a ed.)
Mc Graw-Hill, 2000
Fondamenti di robotica - Introduzione - G. Magnani [14]
Componenti dei robot industriali
Integrati nella o applicati alla catena meccanica
• attuatori (motori elettrici, riduttori)
• sensori propriocettivi (di posizione dei motori e raramente dei link)
• sensori eterocettivi (di visione, forza, prossimità, distanza)
• organo terminale (end-effector) - es. pinze di presa e di saldatura a
punti, saldatore ad arco, pistole di verniciatura, spalmatori, ecc
esempi
http://www.youtube.com/watch?v=DkNVhtOCcrE
Fondamenti di robotica - Introduzione - G. Magnani [15]
Dexarm
jfr_paper_dexarm.pdf
Fondamenti di robotica - Introduzione - G. Magnani [16]
Elettronica
Fondamenti di robotica - Introduzione - G. Mgnani [17]
Applicazioni tipiche (COMAU SpA)
File comau
Assemblaggio
Saldatura a Punti
Carico – Scarico
Macchine
Saldatura ad arco
Automazione Linee
Interpresse
Movimentazione
Sigillatura - Siliconatura
Lavorazione
Fondamenti di robotica - Introduzione - G. Magnani [18]
Il sistema di controllo
E’ un sistema elettronico - informatico complesso
e sofisticato.
Funzioni principali:
• Interfaccia con l’operatore (MMI)
• Programmazione dei compiti
• Pianificazione delle traiettorie
• Controllo in tempo reale del moto dei giunti
• Immagazzinamento dati
• Gestione dell’interazione con altre macchine
• Diagnostiche, gestione malfunzionamenti
Hardware
• Unità di elaborazione e controllo (multi-microprocessore)
• Elettronica di potenza
• Dispositivo d’interfaccia uomo macchina e programmazione (teach pendant)
• Interfacce di I/O e comunicazione
Fondamenti di robotica - Introduzione - G. Magnani [19]
Programmazione
I compiti dei robot si programmano con linguaggi simili a quelli usati per i computer
Possono essere fornite interfacce specifiche per applicazioni frequenti (es. saldatura,
verniciatura)
Ambiente di programmazione integrata (teaching-by-doing con comando manuale)
Sistemi di coordinate
• giunto
• terna base (cartesiane)
• utensile (tool) (cartesiane)
http://www.youtube.com/watch?v=ghV1xkUR8JU
Tipi di movimenti
• punto a punto nei giunti
• punto a punto nello spazio operativo
• secondo traiettorie lineari, circolari o interpolate
Fondamenti di robotica - Introduzione - G. Magnani [20]
Programmazione
Esempio di programma
Il robot prende un pezzo dal
nastro trasportatore e lo
trasferisce o su una tavola o
nel contenitore di scarto a
seconda di $DIN(2)
PROGRAM pezzo
VAR riposo, trasp, tavola, scarto : POSITION
BEGIN CYCLE
MOVE TO riposo
OPEN HAND 1
WAIT FOR $DIN(1) = ON % trasportatore pronto
MOVE TO trasp
CLOSE HAND 1
IF $DIN(2) = OFF THEN % se il pezzo è buono
MOVE TO tavola
ELSE
MOVE TO scarico
ENDIF
OPEN HAND
% depone il pezzo su tavola o in cont. scarti
END pezzo
Fondamenti di robotica - Introduzione - G. Magnani [21]
Argomenti del corso
Il corso è orientato al controllo dei robot industriali
Gli argomenti corrispondono alle principali funzioni di controllo
• Cinematica (diretta ed inversa)
• Cinematica differenziale e statica
• Pianificazione di traiettorie
• Dinamica (casi semplici + laboratorio informatizzato / simulazione)
• Controllo
• “livello servo” (controllo del moto dei singoli giunti)
(laboratorio informatizzato / simulazione)
• controllo multivariabile e con sensori eterocettivi (cenni)
Per confronto: Introduction to Robotics , prof. Oussama Khatib, Stanford Univ.
http://see.stanford.edu/see/courseinfo.aspx?coll=86cc8662-f6e4-43c3-a1be-b30d1d179743
Fondamenti di robotica - Introduzione - G. Magnani [22]
Cinematica
Studio analitico del moto della catena (dell'organo terminale)
indipendentemente dalle forze / coppie che lo determinano.
Legame tra le variabili di giunto e posizione e orientamento dell'end-effector
q = [q1
′ cinematica diretta
q2 ... qn ] <=============>
P = P ( x, y , z , α , β , γ )
cinematica inversa
Inversione cinematica
⇒ elemento centrale di un controllore
⇒ presenta diverse problematiche (soluzione non unica, punti
singolari)
Fondamenti di robotica - Introduzione - G. Magnani [23]
Cinematica diretta: esempio
y
q2
x = l1 cos(q1 ) + l 2 cos(q1 + q 2 )
y = l1 sin (q1 ) + l 2 sin (q1 + q 2 )
q1
x
Per manipolatori a più gradi di libertà occorrono procedimenti sistematici per
ricavare le equazioni della cinematica diretta.
Fondamenti di robotica - Introduzione - G. Magnani [24]
Cinematica differenziale
Studia il legame tra le velocità dei giunti e la “velocità” dell‘organo terminale
q& = [q&1
q& 2
cinematica differenziale
′
... q& n ] <=============>
& ω
p,
p&
q&1
Il legame è espresso da una matrice, detta Jacobiano del manipolatore
Fondamenti di robotica - Introduzione - G. Magnani [25]
Statica
Esprime il legame tra un vettore di forze F applicate all’end effector e il
corrispondente vettore di coppie generalizzate τ che tiene in equilibrio il
sistema.
[
F = Fx Fy Fz τx τ y τz
Fa
y
′
τ =[τ1 τ2 τ3 ... τn−1 τn ]
τ 1 = −(l1 sin (q1 ) + l2 sin (q1 + q2 ))Fa
τ 2 = −l2 sin (q1 + q2 )Fa
q2
q1
]′
x
Fondamenti di robotica - Introduzione - G. Magnani [26]
Dinamica
Legame analitico tra le forze / coppie applicate ai giunti (della catena) e il
moto della catena.
dinamica diretta
τ(t) <=============> q(t)
dinamica inversa
′
τ =[τ1 τ2 τ3 ... τn−1 τn ]
coppie generalizzate
dinamica diretta: interesse per simulazione
dinamica inversa: interesse per controllo
La derivazione del modello dinamico è operazione molto complessa
(tecniche automatiche e/o elaborazione simbolica)
Fondamenti di robotica - Introduzione - G. Magnani [27]
Pianificazione della traiettoria
Obiettivo:
calcolare i movimenti (leggi di moto) dei giunti (q(t)) affinché
⇒ l’organo terminale segua traiettorie desiderate nello
spazio di lavoro
⇒ il robot si muova in modo regolare smooth
Generare (calcolare):
⇒ leggi di moto compatibili con i limiti di velocità e
accelerazione dei motori, di durata minima o compatibile
con le esigenze operative
⇒ traiettorie rettilinee, circolari, interpolanti ...
Fondamenti di robotica - Introduzione - G. Magnani [28]
Architettura di controllo del movimento
Controllo del movimento
Si adotta un’architettura costituita da tre moduli:
Generazione della
traiettoria
xd
Inversione
cinematica
τ
qd
Controllo d'asse
q
Fondamenti di robotica - Introduzione - G. Magnani [29]
Controllo indipendente dei giunti
Il controllo d’asse nei controllori robotici
industriali tipicamente prevede che
ciascuna coordinata di giunto venga
controllata indipendentemente
(servomeccanismo di posizione)
qd1
τ1
R1
q1
qd2
R2
τ2
q2
qdn
Rn
τn
qn
I singoli problemi di controllo sono assimilabili a quelli del controllo di
servomeccanismi, il che giustifica l’approfondimento che sarà fatto su questo
argomento.
Fondamenti di robotica - Introduzione - G. Magnani [30]
Controllo indipendente dei giunti
I servomeccanismo di posizione si trovano in una varietà di macchine per
produrre:
⇒ macchine utensili (frese, torni, rettifiche, taglio laser, produzione stampi,
piegatura e foratura lamiere, ecc)
⇒ macchine lavorazione legno, pietre, alluminio …
⇒ macchine tessili, per imballaggio, stampa …
⇒ macchine di movimentazione (transfer)
e sono realizzati con la stessa componentistica di quelli robotici
Comunanze anche con sistemi avionici e di difesa, informatici, consumer,
automobilistici, ferroviari, ecc
Ampia tematica ⇒ “motion control”
Fondamenti di robotica - Introduzione - G. Magnani [31]
Macchine utensili
Macchine utensili a 5 assi
Fondamenti di robotica - Introduzione - G. Magnani [32]
I testi
Robotica_6322-2.pdf
Testo di riferimento
Testo per la parte di controllo del
moto
Introduzione
Cinematica
SS Cap.1 (leggere)
SS Cap. 2 esclusi 2.6, 2.8.3, 2.9.2, 2.11
Sito web con materiale aggiuntivo:
http://home.dei.polimi.it/magnani/fondrobotica.htm
Fondamenti di robotica - Introduzione - G. Magnani [33]
Aspetti organizzativi
• Calendario e argomenti da fare / non fare sulla pagina
web http://home.dei.polimi.it/magnani/fondrobotica.htm
• Laboratori in aula informatizzata
Modalità d’esame
• Esame scritto con domande ed esercizi (vietato l’utilizzo di
dispositivi elettronici di qualsiasi tipo, incluse calcolatrici)
• Possibile un prova intermedia – non obbligatoria – sulla
prima parte del corso. Chi fa la prova intermedia al primo
appello fa l’esame solo sulla seconda parte
•Chi fa la prova intermedia con esito negativo non perde la
possibilità di fare l’esame al primo appello sul programma
completo
Fondamenti di robotica - Introduzione - G. Magnani [34]
LINK utili
www.controleng.com (informazioni su prodotti)
http://www.fieramilanoeditore.it/riviste/riviste.asp#divisi
onetechnology Altre riviste del settore
http://www.ieee-ras.org/ IEEE- Robotics and Automation
Society
Siti di costruttori:
comau, fanucrobotics, abbrobotics, kuka, reis, staubli, …
Altro sui robot e la robotica: http://wiki.ieee-
ras.org/student
Fondamenti di robotica - Introduzione - G. Magnani [35]