sviluppo di ambienti in realtà virtuale per il monitoraggio remoto di robot articolati

13
Sviluppo di ambienti Sviluppo di ambienti in realtà virtuale per in realtà virtuale per il monitoraggio remoto il monitoraggio remoto di Robot Articolati di Robot Articolati Relatore: Relatore: Laureando: Laureando: Prof. Luca Zaccarian Prof. Luca Zaccarian Roberto Antonelli Roberto Antonelli

Upload: abedi

Post on 07-Jan-2016

28 views

Category:

Documents


0 download

DESCRIPTION

Sviluppo di ambienti in realtà virtuale per il monitoraggio remoto di Robot Articolati. Relatore: Laureando: Prof. Luca Zaccarian Roberto Antonelli. Obiettivo. Sviluppo di una libreria grafica per la rappresentazione prospettica di robot antropomorfi in ambiente Linux. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Sviluppo di ambienti in realtà virtuale per il monitoraggio remoto di Robot Articolati

Sviluppo di ambienti in realtà Sviluppo di ambienti in realtà virtuale per il monitoraggio virtuale per il monitoraggio remoto di Robot Articolatiremoto di Robot Articolati

Relatore:Relatore: Laureando: Laureando:

Prof. Luca ZaccarianProf. Luca Zaccarian Roberto Antonelli Roberto Antonelli

Page 2: Sviluppo di ambienti in realtà virtuale per il monitoraggio remoto di Robot Articolati

ObiettivoObiettivo

Sviluppo di una libreria grafica per la rappresentazione Sviluppo di una libreria grafica per la rappresentazione prospettica di robot antropomorfi in ambiente Linuxprospettica di robot antropomorfi in ambiente Linux

Scortec-ER IScortec-ER I Scorbot-ERScorbot-ER

Page 3: Sviluppo di ambienti in realtà virtuale per il monitoraggio remoto di Robot Articolati

Campi di ApplicazioneCampi di Applicazione

• Monitoraggio RemotoMonitoraggio Remoto

• Azionamento RemotoAzionamento Remoto

• SimulazioneSimulazione

Verifica del comportamento del Verifica del comportamento del robot senza essere vincolati robot senza essere vincolati alla vicinanza fisicaalla vicinanza fisica

Specificazione dei compiti Specificazione dei compiti assegnati al robot in ambienteassegnati al robot in ambienteuser friendlyuser friendly

Simulazione del comportamentoSimulazione del comportamentodel robot in seguito ad uno del robot in seguito ad uno spostamento, prima di spostamento, prima di compierlo realmentecompierlo realmente

Page 4: Sviluppo di ambienti in realtà virtuale per il monitoraggio remoto di Robot Articolati

Legge ProspetticaLegge Prospettica

• Intuizione:Intuizione: Più un oggetto è lontano, più tende a rimpicciolirsiPiù un oggetto è lontano, più tende a rimpicciolirsi

• Formalizzazione:Formalizzazione: Trasformazione ProspetticaTrasformazione Prospettica

Page 5: Sviluppo di ambienti in realtà virtuale per il monitoraggio remoto di Robot Articolati

Rappresentazione ProspetticaRappresentazione Prospettica

Struttura ComplessaStruttura Complessa

Ciascun ElementoCiascun Elemento

Insieme di ElementiInsieme di Elementi

Insieme di VerticiInsieme di Vertici

Page 6: Sviluppo di ambienti in realtà virtuale per il monitoraggio remoto di Robot Articolati

Rappresentazione dei Robot ArticolatiRappresentazione dei Robot Articolati

Scorbot-ERScorbot-ER

15 Elementi15 Elementi2170 vertici2170 vertici

12 Elementi12 Elementi1036 vertici1036 vertici

Scortec-ER IScortec-ER I

• Scomposizione Scomposizione dei robot in dei robot in elementielementi

• Scomposizione Scomposizione degli elementi in degli elementi in verticivertici

Page 7: Sviluppo di ambienti in realtà virtuale per il monitoraggio remoto di Robot Articolati

Rappresentazione dei Robot ArticolatiRappresentazione dei Robot Articolati

Robot tridimensionaleRobot tridimensionale

Elementi Costituenti del Elementi Costituenti del Robot 3DRobot 3D

Rappresentazionetridimensionaledel robot Scorbot-ER

RappresentazioneRappresentazionetridimensionaletridimensionaledel robot del robot Scortec-ER IScortec-ER I

Vertici di ciascun elementoVertici di ciascun elemento

Page 8: Sviluppo di ambienti in realtà virtuale per il monitoraggio remoto di Robot Articolati

Libreria OpenGLLibreria OpenGL

• Per creare una scena, la libreria OpenGL si basa su due concetti Per creare una scena, la libreria OpenGL si basa su due concetti fondamentali:fondamentali:

• Insieme di funzioni chiamabili da un programma personalizzatoInsieme di funzioni chiamabili da un programma personalizzato

• Permette di produrre su un display una rappresentazione di una scena Permette di produrre su un display una rappresentazione di una scena tridimensionale.tridimensionale.

•PuntiPunti•LineeLinee•QuadrilateriQuadrilateri•PoligoniPoligoni

Forme PrimitiveForme Primitive Sorgenti di IlluminazioneSorgenti di Illuminazione

Direzionale:Direzionale: la sorgente viene considerata la sorgente viene considerata come un punto all’infinitocome un punto all’infinito

Puntiforme:Puntiforme: i raggi vengono generati i raggi vengono generati uniformemente in tutte le direzioni uniformemente in tutte le direzioni a partire da un puntoa partire da un punto

Spot:Spot: come le sorgenti puntiformi ma l’emissione come le sorgenti puntiformi ma l’emissione dei raggi è limitata ad un cono con vertice dei raggi è limitata ad un cono con vertice nel punto della sorgentenel punto della sorgente

Page 9: Sviluppo di ambienti in realtà virtuale per il monitoraggio remoto di Robot Articolati

FramebufferFramebuffer

• Finestra di memoria mappata sulla scheda videoFinestra di memoria mappata sulla scheda video

• Per rendere fluida la visualizzazione del Per rendere fluida la visualizzazione del movimento si lavora in parallelo su due movimento si lavora in parallelo su due pagine video, utilizzando pagine video, utilizzando il “framebuffer”:il “framebuffer”:

Pagina 1Pagina 1 Schermo effettivoSchermo effettivoPagina 0Pagina 0 Schermo virtualeSchermo virtuale

• Nella pagina 2 si traccia il fotogramma;Nella pagina 2 si traccia il fotogramma;a tracciamento completato si scambiano le a tracciamento completato si scambiano le due pagine ottenendo visualizzazione due pagine ottenendo visualizzazione immediata:immediata:

Pagina 1Pagina 1 Schermo virtualeSchermo virtualePagina 0Pagina 0 Schermo effettivoSchermo effettivo

Page 10: Sviluppo di ambienti in realtà virtuale per il monitoraggio remoto di Robot Articolati

Generazione di un frame del RobotGenerazione di un frame del Robot

InizializzazioneInizializzazioneVerticiVertici

RicostruzioneRicostruzioneElementiElementi

LetturaLetturaEncoderEncoder

VerificaVerificaMovimentoMovimento

Coordinate 3DCoordinate 3Ddegli elementidegli elementi

Tabella Tabella PrecendenzePrecendenze

SwapSwap

SISI

NONO

Vengono caricati inVengono caricati inmemoria tutti i verticimemoria tutti i verticidi tutti gli elementidi tutti gli elementi

RappresentazioneRappresentazione3D sul framebuffer3D sul framebuffer

Viene determinato l’ordine diViene determinato l’ordine divisualizzazione sullo schermovisualizzazione sullo schermodegli elementi in modo da otteneredegli elementi in modo da ottenereuna sovrapposizione correttauna sovrapposizione corretta

Si verifica se il robot Si verifica se il robot fisico e la suafisico e la suarappresentazione 3Drappresentazione 3Dsi trovano nella stessasi trovano nella stessaposizioneposizione

Si raggruppano i verticiSi raggruppano i verticiin insiemi prestabilitiin insiemi prestabilitiper ricostruire per ricostruire ogni elementoogni elemento

Vengono acquisiteVengono acquisitele posizioni angolarile posizioni angolaridei giunti del robotdei giunti del robot

Per ogni elemento delPer ogni elemento delrobot si calcola la robot si calcola la posizione e l’orientamentoposizione e l’orientamentonello spazio 3Dnello spazio 3D

Gli elementi del robot 3DGli elementi del robot 3Dvengono tracciati sullovengono tracciati sulloschermo virtuale schermo virtuale nell’ordine prestabilitonell’ordine prestabilitoTrasferimento del framebuffer Trasferimento del framebuffer sullo schermosullo schermo

Page 11: Sviluppo di ambienti in realtà virtuale per il monitoraggio remoto di Robot Articolati

Utilizzo esterno della libreriaUtilizzo esterno della libreria

• La libreria è costruita per essere facilmente impiegata in un programma CLa libreria è costruita per essere facilmente impiegata in un programma C

• Due modalità di impiego:Due modalità di impiego:1. Modalità Statica:1. Modalità Statica:

viene inserita nel main() del programma principaleviene inserita nel main() del programma principale ScortInitGrafica(ScortInitGrafica(parametri della finestra di visualizzazioneparametri della finestra di visualizzazione)

• Inizializzazione:Inizializzazione:

• Tracciamento frame:Tracciamento frame: viene inserita quando si vuole visualizzare il robotviene inserita quando si vuole visualizzare il robot ScortMovimento(ScortMovimento(AngoliAngoli di giunto,di giunto, Stato effettore)Stato effettore)

2. Modalità Dinamica:2. Modalità Dinamica:• Inizializzazione:Inizializzazione:

• Impostazione animazione:Impostazione animazione: per creare una scena animata si deve inserire il per creare una scena animata si deve inserire il tracciamento del frame in una procedura dedicatatracciamento del frame in una procedura dedicatavoid ScortMain()void ScortMain()

• Tracciamento frame:Tracciamento frame: viene inserita quando si vuole visualizzare il robotviene inserita quando si vuole visualizzare il robot ScortMovimento(ScortMovimento(AngoliAngoli di giunto,di giunto, Stato effettore)Stato effettore)

viene inserita nel main() del programma principaleviene inserita nel main() del programma principale ScortInitGrafica(ScortInitGrafica(parametri della finestra di visualizzazioneparametri della finestra di visualizzazione)

Page 12: Sviluppo di ambienti in realtà virtuale per il monitoraggio remoto di Robot Articolati

Esempio di ApplicazioneEsempio di Applicazione

Ripresa da Webcam Ripresa da Webcam posizionata davanti posizionata davanti

allo Scortec-ER Iallo Scortec-ER I

Ripresa da Webcam Ripresa da Webcam posizionata davanti allo posizionata davanti allo

schermo del PCschermo del PC

Page 13: Sviluppo di ambienti in realtà virtuale per il monitoraggio remoto di Robot Articolati

ConclusioniConclusioni

• Rappresentazione 3D robot Scorbot-ERRappresentazione 3D robot Scorbot-ER

• Creazione libreria Grafica interfacciabileCreazione libreria Grafica interfacciabile

• Rappresentazione 3D robot Scortec-ER IRappresentazione 3D robot Scortec-ER I

Scortec-ER I virtuale Scorbot-ER virtuale