41
Controllo dei Sistemi Robotici Cristian Secchi Pag. 1 CONTROLLO DI SISTEMI ROBOTICI Laurea Specialistica in Ingegneria Meccatronica CONTROLLO DI SISTEMI ROBOTICI CONTROLLO DI SISTEMI ROBOTICI INTRODUZIONE INTRODUZIONE Ing. Cristian Secchi Tel. 0522 522235 e-mail: [email protected] http://www.dismi.unimo.it/Members/csecchi Controllo di Sistemi Robotici Controllo di Sistemi Robotici Testi consigliati: Rinaldi S., Teoria dei Sistemi, CLUP 1977 M G T i d iSi t i dlC 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 “Utili” nozioni e concetti dei corsi di: A li i t ti ti Introduzione -- 2 Cristian Secchi Controllo di Sistemi Robotici Analisi matematica e geometria Fisica generale Controlli Automatici Modellazione Cinematica e Dinamica delle Macchine

CONTROLLO DI SISTEMI ROBOTICI INTRODUZIONE...• Sciavicco L., Siciliano B., Robotica Industriale – Modellistica e Controllo dei manipolatori, Mac Graw-Hill Libri Italia, 2000 •

  • Upload
    others

  • View
    12

  • Download
    0

Embed Size (px)

Citation preview

  • Controllo dei Sistemi Robotici

    Cristian Secchi Pag. 1

    CONTROLLO DI SISTEMI ROBOTICILaurea Specialistica 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

    Controllo di Sistemi RoboticiControllo di Sistemi Robotici

    • 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

    • “Utili” nozioni e concetti dei corsi di:• A li i t ti t i

    Introduzione -- 2Cristian Secchi Controllo di Sistemi Robotici

    • Analisi matematica e geometria • Fisica generale • Controlli Automatici• Modellazione Cinematica e Dinamica delle Macchine

  • Controllo dei Sistemi Robotici

    Cristian Secchi Pag. 2

    Controllo di Sistemi RoboticiControllo di Sistemi Robotici

    • Orario:

    Martedì: 11-13 Aula 0.4Mercoledì : 11-13 Aula 0.4Gi dì 14 17 A l 0 4Giovedì: 14-17 Aula 0.4

    • Ricevimento: Mercoledì dalle 9 alle 11 durante il periodo delle lezioni, altrimenti su appuntamento da fissare via mail (PREFERITO!)

    • Esami: Orale.

    Introduzione -- 3Cristian Secchi Controllo di Sistemi Robotici

    • 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 dei Sistemi Robotici.

    Programma del CorsoProgramma del Corso

    • Introduzione ai sistemi• Sistemi lineari e robot cartesiani• Robot antropomorfi

    • Analisi dei sistemi lineari• L t bilità d L• La stabilità secondo Lyapunov

    • Teoria generale• Caso dei sistemi lineari

    • Proprietà di Controllabilità e di Raggiungibilità• Problema del controllo

    • Proprietà di osservabilità• Osservatori dello stato

    • Sintesi del controllore mediante retroazione dell’uscita

    Introduzione -- 4Cristian Secchi Controllo di Sistemi Robotici

    • Sintesi del controllore mediante retroazione dell uscita• Controllo di Robot Industriali

    • Regolazione e tracking di robot antropomorfi• Robotica avanzata

    • Robotica Mobile, Interfacce haptics, sistemi di telemanipolazione, algoritmi di presa per mani robotiche.

  • Controllo dei Sistemi Robotici

    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 Controllo di Sistemi Robotici

    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

    Introduzione -- 6Cristian Secchi Controllo di Sistemi Robotici

    g• Applicazioni Spaziali• Intrattenimento• Applicazioni militari• …

  • Controllo dei Sistemi Robotici

    Cristian Secchi Pag. 4

    Robot nell’industriaRobot nell’industria

    http://www.abb.com

    Introduzione -- 7Cristian Secchi Controllo di Sistemi Robotici

    Problematiche: Controllo traiettoria, velocità di esecuzione

    http://www.reisrobotics.de

    Robot nell’industriaRobot nell’industria

    Introduzione -- 8Cristian Secchi Controllo di Sistemi Robotici

  • Controllo dei Sistemi Robotici

    Cristian Secchi Pag. 5

    Robot nella medicinaRobot nella medicina

    Introduzione -- 9Cristian Secchi Controllo di Sistemi Robotici

    Problematiche: Elevata precisione, interazione con l’uomo

    http://www.intuitivesurgical.com

    Robot nella medicinaRobot nella medicina

    Introduzione -- 10Cristian Secchi Controllo di Sistemi Robotici

  • Controllo dei Sistemi Robotici

    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 Controllo di Sistemi Robotici

    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 Sistemi Robotici

  • Controllo dei Sistemi Robotici

    Cristian Secchi Pag. 7

    Robot nello spazio e RoverRobot nello spazio e Rover

    Introduzione -- 13Cristian Secchi Controllo di Sistemi Robotici

    Haptics e TelemanipolazioneHaptics e Telemanipolazione

    Introduzione -- 14Cristian Secchi Controllo di Sistemi Robotici

    Problematiche: Ritorno di forza (telepresenza), stabilità, precisione di posizionamento

  • Controllo dei Sistemi Robotici

    Cristian Secchi Pag. 8

    Haptics e TelemanipolazioneHaptics e Telemanipolazione

    Introduzione -- 15Cristian Secchi Controllo di Sistemi Robotici

    ManipolazioneManipolazione

    DLR Hand UB-Hand III

    Introduzione -- 16Cristian Secchi Controllo di Sistemi Robotici

    Problematiche: Grasping, controllo di forza, manipolazione dell’oggetto.

  • Controllo dei Sistemi Robotici

    Cristian Secchi Pag. 9

    Robot con gambeRobot con gambe

    Introduzione -- 17Cristian Secchi Controllo di Sistemi Robotici

    Problematiche: Controllo dell’equilibrio, interazione con l’ambiente e con l’uomo.

    Robot con gambeRobot con gambe

    Asimo HDTV videos

    Introduzione -- 18Cristian Secchi Controllo di Sistemi Robotici

    Sony QRIO Movies

  • Controllo dei Sistemi Robotici

    Cristian Secchi Pag. 10

    Robotica a Reggio Emilia Robotica a Reggio Emilia –– HapticsHaptics per per AutomotiveAutomotive

    Maggior numero di servizi e funzionalità

    Necessità di inserire dati o prestare attenzione anche durante la guida

    Minore attenzione alla strada

    Introduzione -- 19Cristian Secchi Controllo di Sistemi Robotici

    IDEA: Utilizzare un dispositivo haptics che faciliti l’inserimento di dati utilizzando delle virtual fixtures, diminuendo l’attenzione visiva richiesta al driver.

    Robotica a Reggio Emilia Robotica a Reggio Emilia –– HapticsHaptics per per AutomotiveAutomotive

    E’ stata costruita un'interfaccia virtuale (es.: per l'inserimento di località in un navigatore satellitare) con la quale interagire con il robot Phantom OMNI. L'interfaccia è dotata di un sistema di guide virtuali che aiutano il driver a inserire i dati (compito secondario) mentre sta guidando (compito primario) minimizzando in tal modo la distrazione.

    Introduzione -- 20Cristian Secchi Controllo di Sistemi Robotici

  • Controllo dei Sistemi Robotici

    Cristian Secchi Pag. 11

    Robotica a Reggio Emilia Robotica a Reggio Emilia –– HapticsHaptics per per AutomotiveAutomotive

    Introduzione -- 21Cristian Secchi Controllo di Sistemi Robotici

    Robotica a Reggio Emilia: Robotica a Reggio Emilia: VisualVisual ServoingServoing per mosaiciper mosaici

    GOAL: Costruire un isola robotica dotata di un robot antropomorfo per la composizione automatica di un mosaico

    Introduzione -- 22

    Filmato

  • Controllo dei Sistemi Robotici

    Cristian Secchi Pag. 12

    Robotica a Reggio Emilia: Programmazione Robot IndustrialiRobotica a Reggio Emilia: Programmazione Robot Industriali

    Introduzione -- 23Cristian Secchi Controllo di Sistemi Robotici

    RoboticaRobotica a Reggio Emilia: Multia Reggio Emilia: Multi--Robot Robot systems e systems e SwarmsSwarms

    Gruppi di creature

    Utilizzare robot low cost (con limitate capacità)

    Introduzione -- 24

    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

  • Controllo dei Sistemi Robotici

    Cristian Secchi Pag. 13

    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 -- 25

    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)

    Coordinazione di AGVCoordinazione di AGV

    La ricerca su questi sistemi è in collaborazione con Elettric80 s.p.a., leader nella produzione e gestione di veicoli AGV

    Introduzione -- 26Cristian Secchi Controllo di Sistemi Robotici

  • Controllo dei Sistemi Robotici

    Cristian Secchi Pag. 14

    CoordinazioneCoordinazione didi AGVAGV

    C di iCoordinazione ottimale del gruppo di robot mobili per evitare contri e deadlock

    Introduzione -- 27Cristian Secchi Controllo di Sistemi Robotici

    ControlloControllo didi formazioneformazione

    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 -- 28Cristian Secchi Controllo di Sistemi Robotici

  • Controllo dei Sistemi Robotici

    Cristian Secchi Pag. 15

    SLAMSLAM

    • Differential DrivePRO

    Stiamo costruendo un robot mobile in collaborazione con l’Università di Ferrara.

    • PRO:Easier to design and manufactureSteering and linear motion decoupled

    • CON:Not suitable for

    Introduzione -- 29

    Not suitable for rough terrainsCastor wheels may cause instabilities

    Control system architectureControl system architecture

    • Low-level control: • In-house developed motion control card, with two H-

    bridge drivers (3 A each) and encoder-based closed-loopRS 232 Eth t d CAN i ti li k• RS-232, Ethernet and CAN communication links

    • High-level control:• Any kind of embedded PC (PC/104, XTX, PDA, etc.)

    supporting Linux or other RTOS• Enabled for inertial navigation, vision based SLAM, etc.

    Introduzione -- 30

  • Controllo dei Sistemi Robotici

    Cristian Secchi Pag. 16

    Communication linksCommunication links

    RS-232

    MicrochipdsPIC30F6015

    MAX203ELevel shifter

    MCP2551transceiver

    CAN

    Introduzione -- 31

    3,3 – 5 VLevel shifter

    XPORTSerial-to-Ethernet

    ETHERNET

    TTL levels3,3 V supply

    SLAMSLAM

    SLAM: Simultaneous Localization and Mapping

    Il robot mobile deve localizzarsi rispetto all’ambiente in cui si trova (e che non conosce o conosce solo parzialmente) e, contemporaneamente, deve costruire una mappa dell’ambiente in cui si muove tramite il/I sensori di cui è dotato (sonar, laser, etc.).

    Introduzione -- 32Cristian Secchi Controllo di Sistemi Robotici

  • Controllo dei Sistemi Robotici

    Cristian Secchi Pag. 17

    Robotica a Reggio Emilia: Robotica a Reggio Emilia: TelemanipolazioneTelemanipolazione 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

    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 -- 34Cristian Secchi Controllo di Sistemi Robotici

  • Controllo dei Sistemi Robotici

    Cristian Secchi Pag. 18

    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 -- 35Cristian Secchi Controllo di Sistemi Robotici

    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 -- 36Cristian Secchi Controllo di Sistemi Robotici

    • 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

  • Controllo dei Sistemi Robotici

    Cristian Secchi Pag. 19

    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 -- 37Cristian Secchi Controllo di Sistemi Robotici

    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.

    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 -- 38Cristian Secchi Controllo di Sistemi Robotici

    Configurazione SCARA Configurazione Antropomorfa

  • Controllo dei Sistemi Robotici

    Cristian Secchi Pag. 20

    Strutture meccaniche per i robotStrutture meccaniche per i robot

    Configurazione Cartesiana Configurazione Cilindrica

    Introduzione -- 39Cristian Secchi Controllo di Sistemi Robotici

    Configurazione SCARA Configurazione Antropomorfa

    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 -- 40Cristian Secchi Controllo di Sistemi Robotici

    non molto elevati. Tuttavia essa è di poco ingombro ed ha un elevata destrezza, cioè può raggiungere punti anche molto distanti dalla base.

  • Controllo dei Sistemi Robotici

    Cristian Secchi Pag. 21

    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 -- 41Cristian Secchi Controllo di Sistemi Robotici

    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 -- 42Cristian Secchi Controllo di Sistemi Robotici

    Giunti più complessi (sferici, elicoidali, …) possono essere ottenuti mediante opportune combinazioni di giunti rotoidali e giunti prismatici.

  • Controllo dei Sistemi Robotici

    Cristian Secchi Pag. 22

    Tipi di giuntoTipi di giunto

    TTT RT

    Introduzione -- 43Cristian Secchi Controllo di Sistemi Robotici

    RRT RRR

    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 nm, 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.

  • Controllo dei Sistemi Robotici

    Cristian Secchi Pag. 23

    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 -- 45Cristian Secchi Controllo di Sistemi Robotici

    variabili di giunto è in generale Rn

    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 -- 46Cristian Secchi Controllo di Sistemi Robotici

    Determinare la configurazione dell’end-effector a partire dalla configurazione dei giunti e viceversa è un problema cinematico.

  • Controllo dei Sistemi Robotici

    Cristian Secchi Pag. 24

    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 di sistemi robotici

    Introduzione -- 47Cristian Secchi Controllo di Sistemi Robotici

    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 -- 48Cristian Secchi Controllo di Sistemi Robotici

    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.

  • Controllo dei Sistemi Robotici

    Cristian Secchi Pag. 25

    Esempi di robot cartesiani a antropomorfiEsempi di robot cartesiani a antropomorfi

    Controllo di Sistemi Robotici

    Introduzione -- 49Cristian Secchi

    Modelli dei robotModelli dei robot

    Introduzione -- 50Cristian Secchi Controllo di Sistemi Robotici

  • Controllo dei Sistemi Robotici

    Cristian Secchi Pag. 26

    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 -- 51Cristian Secchi Controllo di Sistemi Robotici

    )()()(

    sEsUsC =

    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 -- 52Cristian Secchi Controllo di Sistemi Robotici

  • Controllo dei Sistemi Robotici

    Cristian Secchi Pag. 27

    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 scalariLegano duegrandezze vettoriali

    Legano duegrandezze vettoriali

    Introduzione -- 53Cristian Secchi Controllo di Sistemi Robotici

    Non è possibile utilizzare i concetti di controlli automatici né per modellare né per controllare un sistema robotico.

    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 -- 54Cristian Secchi Controllo di Sistemi Robotici

    u y

    ingresso uscita

    SSistema

  • Controllo dei Sistemi Robotici

    Cristian Secchi Pag. 28

    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 -- 55Cristian Secchi Controllo di Sistemi Robotici

    Yy(t)

    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 -- 56Cristian Secchi Controllo di Sistemi Robotici

  • Controllo dei Sistemi Robotici

    Cristian Secchi Pag. 29

    Concetto di SistemaConcetto di Sistema

    Si consideri il seguente circuito

    RI

    Cu y

    R=1 ΩC=1 F

    Introduzione -- 57Cristian Secchi Controllo di Sistemi Robotici

    Concetto di SistemaConcetto di Sistema

    Condensatore Scarico (Ep=1/2Cq2=0 J) Condensatore Carico (Ep=1/2Cq2=1 J)

    Introduzione -- 58Cristian Secchi Controllo di Sistemi Robotici

  • Controllo dei Sistemi Robotici

    Cristian Secchi Pag. 30

    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 -- 59Cristian Secchi Controllo di Sistemi Robotici

    L’uscita dipende dal segnale in ingresso E dalla carica sul condensatore

    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 -- 60Cristian Secchi Controllo di Sistemi Robotici

    t2 ≥ t1.

  • Controllo dei Sistemi Robotici

    Cristian Secchi Pag. 31

    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 -- 61Cristian Secchi Controllo di Sistemi Robotici

    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.

    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 -- 62Cristian Secchi Controllo di Sistemi Robotici

    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.

  • Controllo dei Sistemi Robotici

    Cristian Secchi Pag. 32

    Esempi di Sistemi Esempi di Sistemi –– Semplice Circuito ElettricoSemplice Circuito Elettrico

    R1

    R2

    A E

    C

    u y

    x

    B F

    Introduzione -- 63Cristian Secchi Controllo di Sistemi Robotici

    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.

    Esempi di Sistemi Esempi di Sistemi –– Sistema MeccanicoSistema Meccanico

    x1 x2

    km

    x2u

    y

    b

    Introduzione -- 64Cristian Secchi Controllo di Sistemi Robotici

    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.

  • Controllo dei Sistemi Robotici

    Cristian Secchi Pag. 33

    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 -- 65Cristian Secchi Controllo di Sistemi Robotici

    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)

    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 -- 66Cristian Secchi Controllo di Sistemi Robotici

    • Un insieme Γ di funzioni di uscita ammissibili del tipoY(·) ∈ Γ | y(·):T → Y

    E dalle seguenti funzioni:

  • Controllo dei Sistemi Robotici

    Cristian Secchi Pag. 34

    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 -- 67Cristian Secchi Controllo di Sistemi Robotici

    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

    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 -- 68Cristian Secchi Controllo di Sistemi Robotici

    Durante il corso verranno studiati i sistemi a tempo continuo

  • Controllo dei Sistemi Robotici

    Cristian Secchi Pag. 35

    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 -- 69Cristian Secchi Controllo di Sistemi Robotici

    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

    Movimento, traiettoria ed equilibrioMovimento, traiettoria ed equilibrio

    • Definiamo evento la coppia tempo-stato:

    • Definiamo movimento (o moto) considerato nell’intervallo t ∈ [t t ]• Definiamo movimento (o moto), considerato nell intervallo t ∈ [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 -- 70Cristian Secchi Controllo di Sistemi Robotici

    gnell’intervallo t ∈ [t0,t1], cioè

    La traiettoria è, quindi, definita in X

  • Controllo dei Sistemi Robotici

    Cristian Secchi Pag. 36

    Movimento, traiettoria ed equilibrioMovimento, traiettoria ed equilibrio

    x0

    (t0,x0)(t1,x1)

    x1 x2

    (t2,x2)

    X

    T

    Traiettoria

    Movimento

    Introduzione -- 71Cristian Secchi Controllo di Sistemi Robotici

    (t3,x2)

    (t4,x2)

    Movimento

    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 -- 72Cristian Secchi Controllo di Sistemi Robotici

  • Controllo dei Sistemi Robotici

    Cristian Secchi Pag. 37

    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 -- 73Cristian Secchi Controllo di Sistemi Robotici

    • La funzione di uscita è continua nei suoi argomenti

    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 -- 74Cristian Secchi Controllo di Sistemi Robotici

    Consideriamo il caso di un sistema regolare con n variabili di stato, m ingressi e p uscite. Esso è rappresentabile dalle seguenti equazioni:

  • Controllo dei Sistemi Robotici

    Cristian Secchi Pag. 38

    Rappresentazione di Sistemi RegolariRappresentazione di Sistemi Regolari

    Introduzione -- 75Cristian Secchi Controllo di Sistemi Robotici

    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 -- 76Cristian Secchi Controllo di Sistemi Robotici

    g esso u(t) ∈ U, U

    • Uscita: y(t) ∈ Y, Y=Rp

    all’ istante t ∈ T=R

  • Controllo dei Sistemi Robotici

    Cristian Secchi Pag. 39

    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 -- 77Cristian Secchi Controllo di Sistemi Robotici

    Il sistema descritto da queste equazioni è detto di dimensione n con m ingressi e p uscite.

    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 -- 78Cristian Secchi Controllo di Sistemi Robotici

    sono i vettori delle variabili di giunto e delle coppie, la dinamica del manipolatore è data da:

  • Controllo dei Sistemi Robotici

    Cristian Secchi Pag. 40

    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 -- 79Cristian Secchi Controllo di Sistemi Robotici

    Tipologie di sistemi regolariTipologie di sistemi regolari

    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 -- 80Cristian Secchi Controllo di Sistemi Robotici

    (m=1) e p (>1) uscite

    • SISO (Single Input Single Output): sistema con un solo ingresso (m=1) e una sola uscita (p=1)

  • Controllo dei Sistemi Robotici

    Cristian Secchi Pag. 41

    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 -- 81Cristian Secchi Controllo di Sistemi Robotici

    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 SISTEMI ROBOTICILaurea Specialistica 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