Robot Operating System (ROS) è un insieme di strumenti e librerie software dedicati allo sviluppo di applicazioni robotiche. Lanciato nel 2007, questo framework open source ha rivoluzionato il settore della robotica e non solo. Nel 2017, è stata rilasciata la nuova versione, ROS2, con l’intento di migliorare, tra gli altri aspetti, l’architettura del sistema e il processamento dei dati in real-time. ROS2, infatti, utilizza un’architettura DDS (Data Distribution Service), contrapposta la struttura Master-Slave di ROS1, per offrire maggiore efficienza, affidabilità e scalabilità e, contestualmente, una minore latenza. Unity è un motore di gioco multipiattaforma sviluppato da Unity Technologies e rilasciato per la prima volta nel 2005. Grazie al suo framework di interazione VR, è possibile creare applicazioni per la realtà virtuale. Il framework supporta un’ampia gamma di visori VR tra i quali l’Oculus Quest e Quest2. Partendo da questi sistemi, l’obiettivo del nostro progetto è stato quello di esplorare una possibile integrazione tra ROS2 e Unity, al fine di stabilire una connessione bidirezionale tra il visore e il robot. Sono state analizzate due possibili soluzioni, partendo da quella ufficiale, sviluppata da Unity, e proseguendo con una alternativa che, anziché utilizzare una connessione bridged (connessione TCP) impiega lo stack middleware di ROS2. Ciascuna soluzione è stata sottoposta ad una serie di test per analizzare le prestazioni in diverse condizioni di lavoro, prestando particolare attenzione ai tempi di latenza, che risultano essere un aspetto cruciale in questo campo di ricerca.

Integrazione tra ROS2 e Unity: analisi delle prestazioni

RETTORE, RICCARDO
2022/2023

Abstract

Robot Operating System (ROS) è un insieme di strumenti e librerie software dedicati allo sviluppo di applicazioni robotiche. Lanciato nel 2007, questo framework open source ha rivoluzionato il settore della robotica e non solo. Nel 2017, è stata rilasciata la nuova versione, ROS2, con l’intento di migliorare, tra gli altri aspetti, l’architettura del sistema e il processamento dei dati in real-time. ROS2, infatti, utilizza un’architettura DDS (Data Distribution Service), contrapposta la struttura Master-Slave di ROS1, per offrire maggiore efficienza, affidabilità e scalabilità e, contestualmente, una minore latenza. Unity è un motore di gioco multipiattaforma sviluppato da Unity Technologies e rilasciato per la prima volta nel 2005. Grazie al suo framework di interazione VR, è possibile creare applicazioni per la realtà virtuale. Il framework supporta un’ampia gamma di visori VR tra i quali l’Oculus Quest e Quest2. Partendo da questi sistemi, l’obiettivo del nostro progetto è stato quello di esplorare una possibile integrazione tra ROS2 e Unity, al fine di stabilire una connessione bidirezionale tra il visore e il robot. Sono state analizzate due possibili soluzioni, partendo da quella ufficiale, sviluppata da Unity, e proseguendo con una alternativa che, anziché utilizzare una connessione bridged (connessione TCP) impiega lo stack middleware di ROS2. Ciascuna soluzione è stata sottoposta ad una serie di test per analizzare le prestazioni in diverse condizioni di lavoro, prestando particolare attenzione ai tempi di latenza, che risultano essere un aspetto cruciale in questo campo di ricerca.
2022
Integration between ROS2 and Unity: performance analysis
ROS2
Unity
analisi prestazioni
File in questo prodotto:
File Dimensione Formato  
Rettore_Riccardo.pdf

accesso aperto

Dimensione 910.66 kB
Formato Adobe PDF
910.66 kB Adobe PDF Visualizza/Apri

The text of this website © Università degli studi di Padova. Full Text are published under a non-exclusive license. Metadata are under a CC0 License

Utilizza questo identificativo per citare o creare un link a questo documento: https://hdl.handle.net/20.500.12608/48726