CONTROLLO CONTROLLO DIDI ROBOT …...Controllo di Robot Industriali Cristian Secchi Pag. 12...
Transcript of CONTROLLO CONTROLLO DIDI ROBOT …...Controllo di Robot Industriali Cristian Secchi Pag. 12...
Controllo di Robot Industriali
Cristian Secchi Pag. 1
CONTROLLO DI ROBOT INDUSTRIALILaurea Magistrale in Ingegneria Meccatronica
CONTROLLO CONTROLLO DIDI ROBOT INDUSTRIALI ROBOT INDUSTRIALI INTRODUZIONEINTRODUZIONE
Ing. Cristian SecchiTel. 0522 522235
e-mail: [email protected]://www.dismi.unimo.it/Members/csecchi
Controllo di Robot industrialiControllo di Robot industriali
• Testi consigliati:
• Rinaldi S., Teoria dei Sistemi, CLUP 1977
• M G T i d i Si t i d l C t ll Z i h lli 1989• Marro G., Teoria dei Sistemi e del Controllo, Zanichelli 1989
• Sciavicco L., Siciliano B., Robotica Industriale – Modellistica e Controllo dei manipolatori, Mac Graw-Hill Libri Italia, 2000
• Spong M., Hutchinson S., Vidyasagar M., Robot Modeling and Control, Wiley 2006
Introduzione -- 2Cristian Secchi
• “Utili” nozioni e concetti dei corsi di:• Analisi matematica e geometria • Fisica generale • Controlli Automatici• Modellazione Cinematica e Dinamica delle Macchine
Controllo di Robot Industriali
Cristian Secchi Pag. 2
Controllo di Robot industrialiControllo di Robot industriali
• Orario:
Lunedì: 11-13 Aula 1.6Mercoledì : 10-13 Aula 0.4Gi dì 11 13 A l 1 6Giovedì: 11-13 Aula 1.6
• Ricevimento: Mercoledì dalle 8.30 alle 10.00 durante il periodo delle lezioni, altrimenti su appuntamento da fissare via mail (PREFERITO)
• Esami: Orale.
Introduzione -- 3Cristian Secchi
• Esercitazioni: Esercitazioni su Robot Industriale e Robotica Mobile in Laboratorio
• Lucidi: I lucidi proiettati a lezione possono essere scaricati dal sito http://www.automazione.ingre.unimore.it/ selezionando, alla voce corsi, il corso di Controllo di Robot Industriali.
Programma del CorsoProgramma del Corso• Introduzione ai sistemi
• Sistemi lineari e robot cartesiani• Robot antropomorfi
• Sistemi lineari• La stabilità secondo Lyapunov
• Teoria generale• Teoria generale• Caso dei sistemi lineari
• Controllabilità e di Raggiungibilità• Problema del controllo
• Osservabilità• Osservatori dello stato• Filtro di Kalman
• Sintesi del controllore mediante retroazione dell’uscita• Robotica Mobile
Introduzione -- 4Cristian Secchi Controllo di Sistemi Robotici
• Robotica Mobile• Cinematica e Pianificazione• SLAM e Navigazion
• Controllo di Robot Industriali• Regolazione e tracking di robot antropomorfi
• Robotica avanzata
Controllo di Robot Industriali
Cristian Secchi Pag. 3
RoboticaRobotica
• Un robot è un sistema complesso costituito da• Un sistema meccanico per l’interazione con l’ambiente• Un sistema di attuazione per l’esecuzione di compiti• Un sistema sensoriale per l’acquisizione delle informazioni• Un sistema di governo per il controllo e la programmazione
Un robot è un sistema meccatronico
Introduzione -- 5Cristian Secchi
Per costruire e controllare un robot occorrono competenze in vari campi della scienza
Applicazioni della RoboticaApplicazioni della Robotica
• Primi dispositivi robotici negli anni ’50 per la manipolazione di materiali radioattivi ( Telemanipolazione)
• Robot “moderni” a partire dagli anni ’70
• Inizialmente diffusi solo in ambito industriale (saldatura, assemblaggio,…)
• Oggi diffusi in vari campi• Medicina• Training
R. Goertz, dell’ Argonne National Laboratory, dove è stato sviluppato anche il primo reattore nucleare
Introduzione -- 6Cristian Secchi
Training• Applicazioni Spaziali• Intrattenimento• Applicazioni militari• …
(1948)
Controllo di Robot Industriali
Cristian Secchi Pag. 4
Robot nell’industriaRobot nell’industria
http://www.abb.com
Introduzione -- 7Cristian Secchi
Problematiche: Controllo traiettoria, velocità di esecuzione
http://www.reisrobotics.de
Robot nell’industriaRobot nell’industria
Introduzione -- 8Cristian Secchi
Controllo di Robot Industriali
Cristian Secchi Pag. 5
Robot nella medicinaRobot nella medicina
Introduzione -- 9Cristian Secchi
Problematiche: Elevata precisione, interazione con l’uomo
http://www.intuitivesurgical.com
Robot nella medicinaRobot nella medicina
Introduzione -- 10Cristian Secchi
Controllo di Robot Industriali
Cristian Secchi Pag. 6
Robot nello spazioRobot nello spazio
Grossi bracci robotici per svolgere attività extra-veicolari sia in autonomia che in collaborazione con gli astronautigli astronauti
Problematiche: Precisione di posizionamento, assenza di gravità
Introduzione -- 11Cristian Secchi
Canadarm 2
http://www.space.gc.ca/
Robot nello spazio e RoverRobot nello spazio e Rover
NASA JPL Sojourner (1998)http://mpfwww.jpl.nasa.gov/default.html
NASA JPL Opportunity (2004)http://marsrovers.jpl.nasa.gov/home/
Problematiche: navigazione, SLAM (Simultaneous Localization and Map Building )
Introduzione -- 12Cristian Secchi
Controllo di Robot Industriali
Cristian Secchi Pag. 7
Robot nello spazio e RoverRobot nello spazio e Rover
Introduzione -- 13Cristian Secchi
Haptics e TelemanipolazioneHaptics e Telemanipolazione
Introduzione -- 14Cristian Secchi
Problematiche: Ritorno di forza (telepresenza), stabilità, precisione di posizionamento
Controllo di Robot Industriali
Cristian Secchi Pag. 8
Haptics e TelemanipolazioneHaptics e Telemanipolazione
Justin (DLR, www.dlr.de)
Introduzione -- 15Cristian Secchi
Manutenzione remota di satelliti
ManipolazioneManipolazione
DLR Hand UB-Hand III
Introduzione -- 16Cristian Secchi
Problematiche: Grasping, controllo di forza, manipolazione dell’oggetto.
Controllo di Robot Industriali
Cristian Secchi Pag. 9
Robot con gambeRobot con gambe
Introduzione -- 17Cristian Secchi
Problematiche: Controllo dell’equilibrio, interazione con l’ambiente e con l’uomo.
Robot con gambeRobot con gambe
Introduzione -- 18Cristian Secchi
Controllo di Robot Industriali
Cristian Secchi Pag. 10
Robot Robot MobiliMobili
Introduzione -- 19Cristian Secchi
RoboticaRobotica a Reggio Emiliaa Reggio Emilia
Automation, Robotics and Systems Control labhttp://www.arscontrol.unimore.it/
• Controllo di robot antropomorfi
• Controllo e coordinazione di gruppi di robot mobili
• Teleoperazione Bilaterale
Introduzione -- 20
Teleoperazione Bilaterale
• Robotica chirurgica
Cristian Secchi
Controllo di Robot Industriali
Cristian Secchi Pag. 11
VisualVisual Servoing per mosaiciServoing per mosaici
GOAL: Costruire un isola robotica dotata di un robot antropomorfo per la composizione automatica di un mosaico
Introduzione -- 21
Filmato
PresaPresa didi oggettioggetti in in ambientiambienti non non strutturatistrutturati
• Per un essere umano identificare un oggetto e la sua forma, prenderlo e spostarlo sono compiti molto semplicispostarlo sono compiti molto semplici
• Per un robot le cose sono
Introduzione -- 22Cristian Secchi
molto più lente e complesse
STAIR Lab, Stanford
Controllo di Robot Industriali
Cristian Secchi Pag. 12
ControlloControllo didi presapresa efficienteefficiente
GOAL: Identificare la forma di un oggetto sconosciuto, pianificare i punti di presa e controllare la forza di presa in un ambiente industriale.
Schunk, 3 finger hand
APPLICAZIONI
Introduzione -- 23Cristian Secchi
APPLICAZIONI
1) Sgombro aree di lavoro2) Manipolazione di oggetti complessi3) Assemblaggi di componenti complesse
ControlloControllo del del TrafficoTraffico didi AGVsAGVs
• AGV gestiscono lo stoccaggio e lastoccaggio e la consegna della merce
• Più di un AGV deve essere usato per soddisfare le esigenze di consegna
Introduzione -- 24Cristian Secchi
• AGV e muletti guidati dall’uome spesso coesistono
Controllo di Robot Industriali
Cristian Secchi Pag. 13
ControlloControllo del del TrafficoTraffico didi AGVsAGVs
gli AGV devono raggiungere la loro destinazione nel minor tempo possibile, in modo sicuro e senzapossibile, in modo sicuro e senza mai bloccarsi.
Regole di traffico impostatemanualmente:
Introduzione -- 25Cristian Secchi
1) Ingegneri sul sito per l’installazione (€€€)
2) Possibilità di blocco del sistemacausato da eventi imprevisti
LGV2 Goals2
bγ
AGV2 Goal
AGV1 Goalb2
a b
Coordination DiagramsCoordination Diagrams
a1
a2
s1b1
b2
LGV1 Goal
AGV1
AGV2
γ1
γ2a2
a1 b1
1) Prestazioni comparabili in d i
Introduzione -- 26
modo automatico
2) Riconfigurazione del traffico a fronte di eventi imprevisti
Controllo di Robot Industriali
Cristian Secchi Pag. 14
MultiMulti--Robot Robot systems e systems e SwarmsSwarms
Gruppi di creature
Utilizzare robot low cost (con limitate capacità)
Introduzione -- 27
Gruppi di creature semplici e con limitate capacità possono ottenere compiti complessi riunendosi in sciami
per costruire un gruppo che consenta di implementare una data serie di comporamenti complessi
ApplicazioniApplicazioni
• Copertura sensoriale: • Esplorazione di ambienti sconosciuti• Condivisione di informazioni
• Logistica: • Gruppi di Robot mobili per la movimentazione di merci in magazzini• Gruppi di Robot mobili per la movimentazione di merci in magazzini
automatici• Gruppi di Robot per il caricamento automatico dei camion
• Rendez-vous• Portare in modo ottimale tutti i robot in un punto• Coordinare il movimento del gruppo
• Flocking e Swarming• Portare e muovere il gruppo in una data formazione e far mantenere la
Introduzione -- 28
Portare e muovere il gruppo in una data formazione e far mantenere la formazione anche in caso di disurbi e/o ostacoli che il gruppo deve aggirare
• Esplorazione e manutenzione di ambienti angusti e/o troppo piccoli• Nanorobotica e applicazioni mediche (drug delivery)• Applicazioni low cost distribuite (irrigazione, applicazioni agricole)
Controllo di Robot Industriali
Cristian Secchi Pag. 15
ControlloControllo didi formazioneformazione
GOAL: Sviluppo e test di algoritmi per il formation control quando i robot scambiano dati tramite canali con ritardo e perdita di pacchetti. La formazione deve evitare ostacoli statici e dinamici durante il percorso.
Introduzione -- 29Cristian Secchi
ControlloControllo didi Formazione e Formazione e CooperazioneCooperazione
Introduzione -- 30Cristian Secchi
Controllo di Robot Industriali
Cristian Secchi Pag. 16
SLAM e SLAM e NavigazioneNavigazione
Quale strategia uso per tagliare l’erba di tutto il giardino?
PRO: Bastano gli encoder sulle ruote bassa complessità, robustezzaCONTRO: sovradimensionamento del motore alto costo!
Introduzione -- 31Cristian Secchi
CONTRO: sovradimensionamento del motore alto costo!
GOAL: Utilizzare sensori low cost e strategie di navigazione avanzate per ottimizzare il percorso di copertura del prato. Questo consentirà di mantenere la stessa vita del prodotto utilizzando motori più economici.
SLAM e SLAM e NavigazioneNavigazione
Introduzione -- 32Cristian Secchi
GOAL: Utilizzare gli scanner laser montati sul robot per mappare l’ambiente circostante e pianificarvi il proprio movimento. Questo eliminerà una parte di lavoro in fase di installazione (definizione della roadmap) e renderà i robot più flessibili.
Controllo di Robot Industriali
Cristian Secchi Pag. 17
Telemanipolazione Telemanipolazione BilateraleBilaterale
Un sistema di telemanipolazione è costituito da due (o più) robot interconnessi tramite un canale di comunicazione caratterizzato da un certo ritardo. L’utente, tramite un dispositivo robotico locale (master), controlla i
Introduzione -- 33
movimenti di un robot remoto (slave) che, a sua volta, deve trasmettere al dispositivo locale la forza derivante dall’interazione con l’ambiente remoto che verrà riprodotta sul master in modo da dare all’operatore la sensazione di interagire con l’ambiente remoto. Sono stati sviluppati algoritmi che hanno ottenuto riconoscimenti a livello internazionale. Prossimamente si implementerà un setup sperimentale su cui testare tali algoritmi
MultiMulti--Slave TeleoperationSlave Teleoperation
Immaginate di essere lì…
Introduzione -- 34Cristian Secchi
da soli e senza provviste!
Un solo uomo o anche un solo robot potrebbero essere non sufficienti per trovarvi in tempo…
Controllo di Robot Industriali
Cristian Secchi Pag. 18
MultiMulti--Slave TeleoperationSlave Teleoperation
GOAL: Teleoperare una flotta di elicotteri autonomi che possono costruire una mappa dell’ambiente esplorato, coordinarsi al fine di non passare più volte per la stessa zona, evitare ostacoli…
Introduzione -- 35Cristian Secchi
Altre applicazioni: sorveglianza in ambienti urbani, ispezione di ambienti pericolosi (es.: dopo disastri naturali),…
RoboticaRobotica ChirurgicaChirurgica
GOAL: Sviluppo di algoritmi di controllo bilaterale per consentire al chirurgo GOAL: Sviluppo di algoritmi di controllo bilaterale per consentire al chirurgo
Introduzione -- 36Cristian Secchi
di vedere e sentire l’operazione sia nel caso in cui chirurgo e robot siano nella stessa stanza che nel caso in cui chirugo e robot siano in luoghi distanti.
di vedere e sentire l’operazione sia nel caso in cui chirurgo e robot siano nella stessa stanza che nel caso in cui chirugo e robot siano in luoghi distanti.
Controllo di Robot Industriali
Cristian Secchi Pag. 19
AssociazioniAssociazioni
http://www.ifr.org/ International Federation of Roboticshttp://www.robotics.org USAhttp://www.jara.jp/e/index.html Giapponehttp://www.robosiri.it/ Italia: SIRI – ASS. IT. DI ROBOTICAhttp://www.cs.uow.edu.au/isase/ara/ Australiahttp://www.cs.uow.edu.au/isase/ara/ Australiahttp://www.bara.org.uk/ Inghilterra: Robotica & Automazionehttp://www.euron.org/ Robotica in Europa (ricerca)http://www.robotics-in-europe.org/ Robotica in Europa (tutti)
http://www.robocup.org/http://www.fira.net/
Introduzione -- 37Cristian Secchi
Struttura e componenti di un robotStruttura e componenti di un robot
Un robot è un sistema costituito da:
Una parte meccanica, detta manipolatore
Un sistema per la sua programmazione e controllo
detta manipolatore.
Teach-pendant
Introduzione -- 38Cristian Secchi
Controllo di Robot Industriali
Cristian Secchi Pag. 20
Il sistema di controlloIl sistema di controllo
Il sistema di controllo di un robot è il “cervello” del sistema. Esso decide quali movimenti deve compiere il manipolatore in base alle informazioni che gli arrivano dai sensori e agli algoritmi di controllo che implementa.
E’ un sistema molto complesso, in generale multiprocessore, collegato in rete con altri dispositivi di controllo, monitoraggio e immagazzinamento dati.
Le funzioni base che esso deve implementare sono:
• Interazione con l’operatore
Introduzione -- 39Cristian Secchi
• Interazione con l operatore• Immagazzinamento dati• Pianificazione dei movimenti del manipolatore• Controllo in tempo reale del moto dei giunti• Interazione con altri dispositivi• Monitoraggio dei sensori
Il sistema di movimentazioneIl sistema di movimentazione
E’ la parte che interagisce con il mondo esterno. Il manipolatore è costituito da:
• una serie di corpi rigidi, detti link• una serie di snodi attuati detti giunti
PolsoEnd-effector
• una serie di snodi attuati, detti giunti
Il manipolatore ha una base che può essere fissata nell’ambiente di lavoro oppure posta su una piattaforma mobile.
All’estremità del manipolatore è posto l’end-effector, cioè l’attrezzo con cui è eseguito il lavoro. Esistono vari
Introduzione -- 40Cristian Secchi
Base
tipi di end-effector: pinze, saldatori, mani,…
L’end-effector è collegato al manipolatore tramite uno snodo, il polso, che che consente di orientarlo arbitrariamente.
Controllo di Robot Industriali
Cristian Secchi Pag. 21
Strutture meccaniche per i robotStrutture meccaniche per i robot
Per la costruzione di robot, vengono adottate diverse strutture meccaniche. Tra le più comuni si hanno:
Configurazione Cartesiana Configurazione Cilindrica
Introduzione -- 41Cristian Secchi
Configurazione SCARA Configurazione Antropomorfa
Strutture meccaniche per i robotStrutture meccaniche per i robot
Configurazione Cartesiana Configurazione Cilindrica
Introduzione -- 42Cristian Secchi
Configurazione SCARA Configurazione Antropomorfa
Controllo di Robot Industriali
Cristian Secchi Pag. 22
Strutture meccaniche per i robotStrutture meccaniche per i robot
Le strutture più diffuse sono la struttura cartesiana e quella antropomorfa.
• La struttura cartesiana è molto robusta. E’ molto adatta per compiti in cui ci siano pesi molto elevati da trasportare ed ha buone caratteristiche di ripetibilità (cioè capacità di riportarsi in posizioni predefinite). Lo svantaggio di questa configurazione è l’ingombro e la scarsa destrezza.
• La struttura antropomorfa è poco robusta e può sollevare solo pesi non molto elevati Tuttavia essa è di poco ingombro ed ha un’elevata
Introduzione -- 43Cristian Secchi
non molto elevati. Tuttavia essa è di poco ingombro ed ha un elevata destrezza, cioè può raggiungere punti anche molto distanti dalla base.
Spazio di lavoro di un robotSpazio di lavoro di un robot
Lo spazio di lavoro di un robot è l’insieme dei punti raggiungibili dall’end-effector del robot. Esso dipenda dalle dimensioni dei link, dal tipo di giunti e dal loro limite di movimento.
Introduzione -- 44Cristian Secchi
Controllo di Robot Industriali
Cristian Secchi Pag. 23
Tipi di giuntoTipi di giunto
Ci sono due tipi fondamentali di giunto:• giunto prismatico, il cui moto è una traslazione (giunto T)• giunto rotoidale, il cui moto è una rotazione (giunto R)
Giunti prismatici
Giunti rotoidali
Introduzione -- 45Cristian Secchi
Giunti più complessi (sferici, elicoidali, …) possono essere ottenuti mediante opportune combinazioni di giunti rotoidali e giunti prismatici.
Tipi di giuntoTipi di giunto
TTT RT
Introduzione -- 46Cristian Secchi
RRT RRR
Controllo di Robot Industriali
Cristian Secchi Pag. 24
Gradi di libertà (GDL o DOF) di un manipolatoreGradi di libertà (GDL o DOF) di un manipolatore
I gradi di libertà di un manipolatore sono il numero dei suoi giunti. Se un manipolatore ha n giunti allora ha n gradi di libertà. Intuitivamente i gradi di libertà di un manipolatore rappresentano la dimensione dello spazio in cui si può muovere l’end-effector.
• Per un manipolatore il numero di gradi di libertà n può essere• Per un manipolatore, il numero di gradi di libertà n può essere qualsiasi. La dimensione dello spazio di lavoro al massimo è m=6.
• Un caso molto comune è m=n, cioè il manipolatore ha tanti gradi di libertà quanto la dimensione dello spazio di lavoro. In tal modo l’end-effector può essere portato in qualsiasi punto dello spazio di lavoro.
• Se n<m, allora si parla di manipolatori difettivi, cioè tali per cui
Introduzione -- 47Cristian Secchi
, p p , pl’end-effector non può essere portato in ogni punto dello spazio di lavoro.
• Se n>m, allora si parla di manipolatori ridondanti, cioè tali per cui l’end-effector può essere portato in ogni punto dello spazio di lavoro in più modi.
Spazio di giunto e spazio di lavoroSpazio di giunto e spazio di lavoro
• Solitamente ogni giunto è motorizzato ed è, quindi, possibile controllare la posizione di ogni giunto.
• Ad ogni giunto è associata una variabile di giunto qi che rappresenta la posizione relativa del link i-esimo rispetto a quello i-pp p p q1-esimo
Tutte le possibili configurazioni che può assumere un robot costituiscono lo spazio di giunto
Un robot può avere in general n giunti e, quindi, lo spazio in cui vivono le variabili di giunto è in generale Rn
Introduzione -- 48Cristian Secchi
variabili di giunto è in generale Rn
Controllo di Robot Industriali
Cristian Secchi Pag. 25
Spazio di giunto e spazio di lavoroSpazio di giunto e spazio di lavoro
La parte del robot che interessa controllare (cioè quella che compie lavoro) è l’end-effector.
Posizione e orientamento dell’end-effector sono funzioni in generale NON LINEARI delle variabili di giunto.
Introduzione -- 49Cristian Secchi
Determinare la configurazione dell’end-effector a partire dalla configurazione dei giunti e viceversa è un problema cinematico.
Problematiche in roboticaProblematiche in robotica
• Problemi cinematici• Cinematica diretta
Modellazione cinematica e• Cinematica inversa• Cinematica differenziale
• Problemi dinamici• Modellistica dinamica di un robot
• Controllo di un robot• Controllo di posizione• Controllo di Forza
Modellazione cinematica e dinamica delle macchine
Controllo Robot Industriali
Introduzione -- 50Cristian Secchi
Controllo di Robot Industriali
Cristian Secchi Pag. 26
Controllo di sistemi roboticiControllo di sistemi robotici
Controllare un robot significa fare in modo che evolva verso un comportamento o una configurazione desiderata.
Per controllare un robot è prima necessario modellare il suo comportamento in assenza di controllo.
Un robot è un particolare sistema dinamico e il suo comportamento può essere descritto da un sistema di equazioni differenziali, in generale non lineari.
Introduzione -- 51Cristian Secchi
Esistono svariati modelli dinamici per i robot (Eulero-Lagrange, Newton-Eulero,…) ciascuno con i suoi pregi e i suoi difetti. Il più generale e utilizzato nel controllo di robot è il modello di Eulero-Lagrange.
Esempi di robot cartesiani a antropomorfiEsempi di robot cartesiani a antropomorfi
Introduzione -- 52Cristian Secchi
Controllo di Robot Industriali
Cristian Secchi Pag. 27
Modelli dei robotModelli dei robot
Introduzione -- 53Cristian Secchi
Possiamo usare le tecniche di Controlli Automatici?Possiamo usare le tecniche di Controlli Automatici?
)(sY
Nel corso di Controlli Automatici modellavamo il plant mediante una funzione di trasferimento
)()()(
sUsYsG =
Il controllore era dato da un’altra funzione di trasferimento che legava l’ingresso di controllo all’errore di regolazione E(s)=R(s)-Y(s). Avevamo che:
Introduzione -- 54Cristian Secchi
)()()(
sEsUsC =
Controllo di Robot Industriali
Cristian Secchi Pag. 28
Possiamo usare le tecniche di Controlli Automatici?Possiamo usare le tecniche di Controlli Automatici?
R(s)C(s) G(s)
Y(s)E(s) U(s)
-
+
Introduzione -- 55Cristian Secchi
Possiamo usare le tecniche di Controlli Automatici?Possiamo usare le tecniche di Controlli Automatici?
Funzioni di Trasferimento
Robot Antropomorfi Robot Cartesiani
Vicoli su ingressi e Un solo ingresso ePiù ingressi (le coppie ai giunti) e più uscite
Più ingressi (le coppie ai giunti) e più usciteVicoli su ingressi e
usciteUn solo ingresso e una sola uscita
ai giunti) e più uscite (es.: posizioni e/o velocità ai giunti)
ai giunti) e più uscite (es.: posizioni e/o velocità ai giunti)
Vincoli su modello ingresso uscita del sistema
Descritto da un’equazione differenziale lineare
Descritto da un’equazione differenziale non lineare
Descritto da un’equazionedifferenziale lineare
Controllori Legano duegrandezze scalari
Legano duegrandezze vettoriali
Legano duegrandezze vettoriali
Introduzione -- 56Cristian Secchi
Non è possibile utilizzare i concetti di controlli automatici né per modellare né per controllare un sistema robotico.
Controllo di Robot Industriali
Cristian Secchi Pag. 29
Concetto di SistemaConcetto di Sistema
Cos’è un sistema?
Nell’ambito della modellistica e del controllo, un sistema è un ente la cui ècaratteristica principale è quella di evolvere nel tempo. Per questa loro
caratteristica i sistemi vengono detti anche sistemi dinamici.
Nel caso più generale, si rappresenta un sistema come un ente sul quale agisce un ingresso u, la causa, e dal quale, come reazione a tale causa, viene fornita una certa uscita y, l’effetto.
Introduzione -- 57Cristian Secchi
u y
ingresso uscita
SSistema
Concetto di SistemaConcetto di Sistema
Ad ogni sistema è associato un insieme ordinato T, detto insieme dei tempi, tale che per ogni t∈T sono definiti un ingresso u(t) e un’uscita y(t) entrambi appartenenti al rispettivo insieme di ingresso U e di uscita Y.
T
u(t)U
Y
t
Introduzione -- 58Cristian Secchi
Yy(t)
Controllo di Robot Industriali
Cristian Secchi Pag. 30
Concetto di SistemaConcetto di Sistema
In generale, il modo di evolvere nel tempo delle funzioni u e y non è del tutto libero e, quindi, anche le funzioni di ingresso e di uscita sono costrette ad appartenere a due prefissati insiemi di funzioni, rispettivamente indicati con Ω e Γ
Notazione: Con u(·) indicheremo la funzione di ingresso mentre con u(t) intenderemo il valore che tale funzione assume all’istante t. La stessa cosa vale per y(·) e y(t).
Introduzione -- 59Cristian Secchi
Concetto di SistemaConcetto di Sistema
Si consideri il seguente circuito
RI
Cu y
R=1 ΩC=1 F
Introduzione -- 60Cristian Secchi
Controllo di Robot Industriali
Cristian Secchi Pag. 31
Concetto di SistemaConcetto di Sistema
Condensatore Scarico (Ep=1/2Cq2=0 J) Condensatore Carico (Ep=1/2Cq2=1 J)
Introduzione -- 61Cristian Secchi
Concetto di SistemaConcetto di Sistema
Nonostante forniamo al sistema lo stesso ingresso le uscite nei due casi sono diverse. Perché?
Sia q la carica sul condensatore:
Legge di Kirchhoff sulla maglia
Legge costitutiva del condensatore
Introduzione -- 62Cristian Secchi
L’uscita dipende dal segnale in ingresso E dalla carica sul condensatore
Controllo di Robot Industriali
Cristian Secchi Pag. 32
Concetto di SistemaConcetto di Sistema
In generale, l’uscita all’istante t NON può essere determinata dal valore assunto dall’ingresso allo stesso istante. L’uscita è frutto dell’intera storia subita dal sistema e non è, quindi, semplicemente legata all’ingresso.
Esiste una grandezza, detta stato, che racchiude sinteticamente in séEsiste una grandezza, detta stato, che racchiude sinteticamente in sé l’informazione sul passato e sul presente del sistema. Il valore x(t) assunto dallo stato all’istante t deve essere sufficiente, eventualmente assieme all’ingresso u(t), alla determinazione dell’uscita all’istante t. Inoltre, l’informazione contenuta in x(t) deve essere sufficiente per determinare l’andamento futuro sia della stessa variabile di stato che dell’uscita per istanti successivi a quello considerato. Pertanto, noto x(t1) e u(·) nell’intervallo [t1,t2], deve essere possibile calcolare x(t2) e y(t2) per ogni t t
Introduzione -- 63Cristian Secchi
t2 ¸ t1.
Concetto di sistemaConcetto di sistema
Lo stato di un sistema è l’informazione che occorre in ogni istante per poter predire l’effetto della storia passata del sistema sul suo comportamento futuro.
Lo stato può possedere varie componenti, dette variabili di stato. Ogni i bil di i d ll i d l i L’i i di li
Introduzione -- 64Cristian Secchi
variabile di stato riassume parte della storia del sistema. L’insieme di tali variabili racchiude tutte le informazioni necessarie per poter determinare il comportamento del sistema e forma lo stato.
Controllo di Robot Industriali
Cristian Secchi Pag. 33
Scelta delle variabili di statoScelta delle variabili di stato
Quali variabili devono essere scelte come variabili di stato?
Nei sistemi fisici la condizione del sistema è determinata da accumuli di i tità di t i di ò tenergia, quantità di moto o massa e, quindi, può essere opportuno
scegliere come variabili di stato quelle variabili da cui questi accumuli dipendono. Ad esempio:
• Tensioni ai capi del condensatore (Ec=0.5CV2)• Correnti negli induttori (EL=0.5Li2)• Velocità di una massa (Ek=0.5mv2)• Posizione di una massa (Ep=mgx)
Introduzione -- 65Cristian Secchi
Posizione di una massa (Ep mgx)
Tuttavia esistono infiniti modi di scegliere le variabili di stato. Altre scelte, rispetto a quelle suggerite,potrebbero essere migliori. Il problema va affrontato caso per caso. Spesso la scelta suggerita è un buon punto di partenza per la modellazione di sistemi fisici.
Esempi di Sistemi Esempi di Sistemi –– Semplice Circuito ElettricoSemplice Circuito Elettrico
R1
R2
A E
C
u y
x
B F
Introduzione -- 66Cristian Secchi
L’ingresso è la tensione tra i morsetti A e B e l’uscita è la tensione tra i morsetti C e D. Lo stato x è la tensione ai capi del condensatore C. Si noti che x è associato al fenomeno di accumulo di energia potenziale nel condensatore.
Controllo di Robot Industriali
Cristian Secchi Pag. 34
Esempi di Sistemi Esempi di Sistemi –– Sistema MeccanicoSistema Meccanico
x1 x2
km
x2u
y
b
Introduzione -- 67Cristian Secchi
L’ingresso u è la forza applicata alla massa e l’uscita y è la posizione della massa. Ci sono due variabili di stato: x1 è la sovraelongazione della molla (associata all’immagazzinamento di energia potenziale meccanica) e x2 è la velocità della massa (associata all’immagazzinamento di energia cinetica. E’ presente, inoltre, l’attrito tra la massa e il terreno.
Esempi di Sistemi Esempi di Sistemi –– Robot antropomorfo a 2 gdlRobot antropomorfo a 2 gdl
Il sistema ha 2 ingressi, le coppie τ1 e τ2 applicate ai giunti. L’uscita y è la
Introduzione -- 68Cristian Secchi
1 2posizione dell’end-effector. Ci sono 4 variabili di stato: x1 e x2 rappresentano la configurazione dei link (associate all’immagazzinamento di energia potenziale gravitazionale) mentre x3 e x4 rappresentano la velocità dei link (associate all’immagazzinamento di energia cinetica)
Controllo di Robot Industriali
Cristian Secchi Pag. 35
Definizione di sistemaDefinizione di sistema
Un sistema dinamico è definito dai seguenti oggetti:
• Un insieme ordinato dei tempi T
• Un insieme di valori di ingresso U• Un insieme di valori di ingresso U
• Un insieme Ω di funzioni di ingresso ammissibili del tipo u(·)∈ Ω | u(·): T U
• Un insieme di valori di stato X
• Un insieme di valori di uscita Y
Introduzione -- 69Cristian Secchi
• Un insieme Γ di funzioni di uscita ammissibili del tipoy(·) ∈ Γ | y(·):T Y
E dalle seguenti funzioni:
Definizione di sistemaDefinizione di sistema
• Funzione di transizione dello stato:
x(t)=φ(t,t0,x(t0),u(·))Dove
1) t0 ∈ T è l’istante iniziale1) t0 ∈ T è l istante iniziale2) t ∈ T è l’istante attuale3) x(t0) ∈ X è lo stato iniziale4) x(t) ∈ X è lo stato attuale 5) u(·) ∈ Ω è la funzione che definisce la sequenza dei valori di ingresso nell’intervallo [t0,t]
• Funzione di uscita:
Introduzione -- 70Cristian Secchi
y(t)=η(t,x(t),u(t))Dove
1) t ∈ T è l’istante attuale 2) x(t) ∈ X è lo stato attuale3) u(t) ∈ U è l’ingresso attuale
Controllo di Robot Industriali
Cristian Secchi Pag. 36
Definizione di sistemaDefinizione di sistema
Se la funzione di uscita non dipende dall’ingresso u(t), cioè se
il sistema viene detto strettamente proprio (o puramente dinamico)
Se T=R il sistema è a tempo continuo,menre se T=Z il sistema è a tempo discreto.
Introduzione -- 71Cristian Secchi
Durante il corso verranno introdotti i risultati nel caso a tempo continuo e poi si illustrerà la loro estensione al tempo discreto
Proprietà di scomposizioneProprietà di scomposizione
E’ possibile scomporre in sistema in due parti distinte:
u(¢) x(t) y(t)
Parte dinamica Parte algebrica
u(t)
• Parte dinamica del sistema: la funzione di transizione permette di riassumere la storia passata del sistema nelle sue variabili di stato ad un
Introduzione -- 72Cristian Secchi
riassumere la storia passata del sistema nelle sue variabili di stato ad un certo istante t
• Parte algebrica del sistema: La funzione di uscita esprime l’uscitautilizzando le grandezza note all’istante t
Controllo di Robot Industriali
Cristian Secchi Pag. 37
Movimento, traiettoria ed equilibrioMovimento, traiettoria ed equilibrio
• Definiamo evento la coppia tempo-stato:
• Definiamo movimento (o moto) considerato nell’intervallo t 2 [t t ]• Definiamo movimento (o moto), considerato nell intervallo t 2 [t0,t1], l’insieme degli eventi definiti dalla funzione di transizione, cioè:
Il movimento è, quindi, definito in T ∈ X
• Definiamo traiettoria l’immagine in X della funzione di transizione
Introduzione -- 73Cristian Secchi
gnell’intervallo t 2 [t0,t1], cioè
La traiettoria è, quindi, definita in X
Movimento, traiettoria ed equilibrioMovimento, traiettoria ed equilibrio
x0
(t0,x0)(t1,x1)
x1 x2
(t2,x2)
X
T
Traiettoria
Movimento
Introduzione -- 74Cristian Secchi
(t3,x2)
(t4,x2)
Movimento
Controllo di Robot Industriali
Cristian Secchi Pag. 38
Movimento, traiettoria ed equilibrioMovimento, traiettoria ed equilibrio
Tra i vari movimenti sono di interesse quelli costanti, caratterizzati, quindi, da un unico stato x detto stato di equilibrio. Uno stato x è di equilibrio quando si ha la possibilità di agire sul sistema mediante un ingresso in modo che partendo dallo stato iniziale x(t0)=x si possa rimaneremodo che partendo dallo stato iniziale x(t0) x si possa rimanere indefinitamente in x. Formalmente, è possibile dare la seguente definizione:
Uno stato x ∈ X si dice di equilibrio se per ogni t0 ∈ T esiste una funzione u(·) ∈ Ω tale che :
Introduzione -- 75Cristian Secchi
Sistemi regolariSistemi regolari
Un sistema si dice a dimensioni finite se U, X, e Y sono spazi vettoriali a dimensioni finite.
Un sistema si dice regolare se:
• Gli insiemi U, Ω, X, Y e Γ sono spazi vettoriali
• La funzione di transizione φ è continua in tutti i suoi argomenti e la sua derivata rispetto al tempo esiste ed è continua rispetto a t
Introduzione -- 76Cristian Secchi
• La funzione di uscita è continua nei suoi argomenti
Controllo di Robot Industriali
Cristian Secchi Pag. 39
Rappresentazione di Sistemi regolariRappresentazione di Sistemi regolari
Il movimento x(t)=φ(t,t0,x(t0),u(·)) è la soluzione di un’equazione differenziale vettoriale del tipo
C id i il di i t l i bili di t t
Introduzione -- 77Cristian Secchi
Consideriamo il caso di un sistema regolare con n variabili di stato, m ingressi e p uscite. Esso è rappresentabile dalle seguenti equazioni:
Rappresentazione di Sistemi RegolariRappresentazione di Sistemi Regolari
Introduzione -- 78Cristian Secchi
Controllo di Robot Industriali
Cristian Secchi Pag. 40
Rappresentazione di Sistemi RegolariRappresentazione di Sistemi Regolari
I vettori
sono, rispettivamente, i vettori di
• Stato: x(t) ∈ X, X=Rn
• Ingresso: u(t) ∈ U, U=Rm
Introduzione -- 79Cristian Secchi
Ingresso: u(t) ∈ U, U R
• Uscita: y(t) ∈ Y, Y=Rp
all’ istante t ∈ T=R
Rappresentazione di Sistemi RegolariRappresentazione di Sistemi Regolari
Compattando la notazione, scriveremo le equazioni che rappresentano un sistema regolare come:
dove x(t), u(t) e y(t) sono vettori e f e g sono vettori di funzioni. f è detta funzione di stato mentre g è detta funzione di uscita
Introduzione -- 80Cristian Secchi
Il sistema descritto da queste equazioni è detto di dimensione n con m ingressi e p uscite.
Controllo di Robot Industriali
Cristian Secchi Pag. 41
Sistemi tempoSistemi tempo--invarianti (o stazionari)invarianti (o stazionari)
Un sistema si dice tempo-invariante (o stazionario) se l’evoluzione del sistema non dipende dal particolare istante iniziale.
In generale, le equazioni che rappresentano un sistema dinamico tempo-invariante sono:
Introduzione -- 81Cristian Secchi
Il tempo non appare esplicitamente né nella funzione di stato né nella funzione di uscita.
SistemiSistemi a tempo a tempo discretodiscreto
• La teoria presentata per i sistemi tempo continui, vale anche per i sistemi tempo discreti
• Nel caso tempo discreto, il concetto di derivata dello stato è sostituito dal concetto di stato all’istante successivo
• Un sistema regolare tempo invariante a tempo discreto può sempre• Un sistema regolare, tempo invariante a tempo discreto può sempre essere rappresentato come:
⎩⎨⎧
==+
))(),(()())(),(()1(
kukxgkykukxfkx
Introduzione -- 82
• dove k ∈ Z, rappresenta il tempo discreto. Nel caso di sistemi a dati campionati, con k si può sottointender kT, dove T è il periodo di campionamento
Cristian Secchi
Controllo di Robot Industriali
Cristian Secchi Pag. 42
Esempio: Manipolatore a n gradi di libertàEsempio: Manipolatore a n gradi di libertà
Le variabili di stato sono le posizioni e le velocità di giunto. Se
Introduzione -- 83Cristian Secchi
sono i vettori delle variabili di giunto e delle coppie, la dinamica del manipolatore è data da:
Esempio: Manipolatore a n gradi di libertàEsempio: Manipolatore a n gradi di libertà
Ponendo
le equazioni dinamiche del sistema possono essere riscritte come
Introduzione -- 84Cristian Secchi
Controllo di Robot Industriali
Cristian Secchi Pag. 43
Tipologie di sistemiTipologie di sistemi
Si possono distinguere, in base al numero di ingressi e di uscite, i seguenti tipi di sistema:
• MIMO (Multiple Input Multiple Output): sistema con m (>1) ingressi e p (>1) uscite
• MISO (Multiple Input Single Output): sistema con m (>1) ingressi e un’uscita sola (p=1)
• SIMO (Single Input Multiple Output): sistema con un solo ingresso (m=1) e p (>1) uscite
Introduzione -- 85Cristian Secchi
(m=1) e p (>1) uscite
• SISO (Single Input Single Output): sistema con un solo ingresso (m=1) e una sola uscita (p=1)
Tipologie di sistemi regolariTipologie di sistemi regolari
I sistemi dinamici possono essere classificati in base alla struttura delle equazioni che li rappresentano.
Sistemi lineari: Le equazioni Robot Cartesiani, qdifferenziali sono lineari nell’ingresso e nello stato
Sistemi non lineari: Le equazioni differenziali non sono lineari
,sistemi elettrici, sistemi idraulici, ecc.
Altri tipi di robot (es.: antropomorfo), sistemi molto complessi, ecc.
Introduzione -- 86Cristian Secchi
Il problema del controllo è in buona parte risolto per sistemi lineari mentre è ancora aperto per sistemi non lineari generici. Esistono tuttavia algoritmi di controllo per i robot, particolari sistemi non lineari.
Controllo di Robot Industriali
Cristian Secchi Pag. 44
CONTROLLO DI ROBOT INDUSTRIALILaurea Magistrale in Ingegneria Meccatronica
CONTROLLO DI SISTEMI ROBOTICICONTROLLO DI SISTEMI ROBOTICIINTRODUZIONEINTRODUZIONE
Ing. Cristian SecchiTel. 0522 522235
e-mail: [email protected]://www.dismi.unimo.it/Members/csecchi