Autonomous mobile robots are increasingly vital in outdoor industrial settings, demanding reliability, safety, and reproducibility. This thesis documents the transformation of a partially non-functional robotic prototype into a coherent, deployment-ready system capable of executing reliable, obstacle-aware coverage missions. The initial prototype suffered from significant limitations, including mixed ROS 2 (Robot Operating System) distributions, unreliable navigation due to a single-antenna GNSS (Global Navigation Satellite System), and a software stack tightly coupled to the host OS, hindering reproducibility. To address these challenges, we implemented a three-layered approach. At the infrastructure layer, we adopted a container-first architecture using Docker, which decouples the ROS 2 environment from the host operating system, ensuring parity between development and deployment. This refactor involved migrating the entire stack to a single ROS 2 distribution, establishing clear image boundaries, and confining network traffic to enhance stability and maintainability. At the perception and localization layer, we upgraded the sensor suite by integrating a dual-antenna RTK GNSS (Real Time Kinematics) to provide an absolute, motion-independent yaw estimate and a 3D LiDAR for robust obstacle detection. The absolute heading is fused with wheel odometry using an Extended Kalman Filter (EKF), significantly improving pose stability, especially at low speeds and during turns. Both sensor pipelines are containerized and provide stable and standardized interfaces to the rest of the system. At the planning and navigation layer, we stabilized the coverage planning pipeline, which is based on the Fields2Cover library. We introduced a semi-automatic workflow for aligning field perimeters with obstacles and developed a collinearity-aware resampling algorithm to generate controller-friendly trajectories that are dense in turns and sparse on straights. We also implemented configuration-level mitigations for known planner limitations, such as merging complex obstacle clusters to prevent the generation of unsafe paths. For navigation, we transitioned from Regulated Pure Pursuit (RPP) to a Model Predictive Path Integral (MPPI) controller, which demonstrated superior performance in simulation. A redesigned Behavior Tree improves the reliability of multi-goal execution. The resulting system was validated end-to-end in the Gazebo simulator and through bench tests, confirming that the containerized architecture is portable, reproducible, and ready for field demonstrations. This work provides a solid foundation for future quantitative evaluation and operational deployment.

I robot mobili autonomi sono sempre più cruciali in contesti industriali all'aperto, dove affidabilità, sicurezza, e riproducibilità sono requisiti fondamentali. Questa tesi documenta la trasformazione di un prototipo robotico parzialmente non funzionante in un sistema coerente e pronto per l'impiego, in grado di eseguire missioni di copertura affidabili e consapevoli degli ostacoli. Il prototipo iniziale presentava limitazioni significative, tra cui una combinazione di diverse distribuzioni di ROS 2 (Robot Operating System), una navigazione inaffidabile a causa di un GNSS (Global Navigation Satellite System) a singola antenna, e uno stack software strettamente accoppiato al sistema operativo ospite, che ne comprometteva la riproducibilità. Per affrontare queste sfide, abbiamo implementato un approccio a tre livelli. Al livello infrastrutturale, abbiamo adottato un'architettura basata su container utilizzando Docker, che disaccoppia l'ambiente ROS 2 dal sistema operativo ospite e garantisce la parità tra sviluppo e deployment. Questo refactoring ha comportato la migrazione dell'intero stack a una singola distribuzione di ROS 2, la definizione di confini chiari tra le immagini software e l'isolamento del traffico di rete per migliorare stabilità e manutenibilità. Al livello di percezione e localizzazione, abbiamo aggiornato la suite di sensori integrando un GNSS RTK (Real Time Kinematics) a doppia antenna per fornire una stima assoluta dell'orientamento (yaw) indipendente dal movimento, e un LiDAR 3D per un robusto rilevamento degli ostacoli. L'orientamento assoluto viene fuso con l'odometria delle ruote tramite un Extended Kalman Filter (EKF), migliorando significativamente la stabilità della posa, specialmente a basse velocità e durante le curve. Entrambe le pipeline dei sensori sono containerizzate e forniscono interfacce stabili e standardizzate al resto del sistema. Al livello di pianificazione e navigazione, abbiamo stabilizzato la pipeline di pianificazione della copertura, basata sulla libreria Fields2Cover. Abbiamo introdotto un flusso di lavoro semi-automatico per allineare i perimetri dei campi con gli ostacoli e sviluppato un algoritmo di ricampionamento consapevole della collinearità per generare traiettorie ottimizzate per il controllore, dense nelle curve e rade nei rettilinei. Abbiamo anche implementato mitigazioni a livello di configurazione per limitazioni note del pianificatore, come l'aggregazione di gruppi di ostacoli complessi per prevenire la generazione di percorsi non sicuri. Per la navigazione, siamo passati da un controller Regulated Pure Pursuit (RPP) a un Model Predictive Path Integral (MPPI), che ha dimostrato prestazioni superiori in simulazione. Un Behavior Tree riprogettato migliora l'affidabilità dell'esecuzione di missioni a pose multiple. Il sistema risultante è stato validato end-to-end nel simulatore Gazebo e tramite test sul campo, confermando che l'architettura containerizzata è portabile, riproducibile e pronta per le dimostrazioni sul campo. Questo lavoro fornisce una solida base per future valutazioni quantitative e per l'impiego operativo.

An approach for the container-based deployment of an autonomous coverage robot

ONORI, ALESSIO
2025/2026

Abstract

Autonomous mobile robots are increasingly vital in outdoor industrial settings, demanding reliability, safety, and reproducibility. This thesis documents the transformation of a partially non-functional robotic prototype into a coherent, deployment-ready system capable of executing reliable, obstacle-aware coverage missions. The initial prototype suffered from significant limitations, including mixed ROS 2 (Robot Operating System) distributions, unreliable navigation due to a single-antenna GNSS (Global Navigation Satellite System), and a software stack tightly coupled to the host OS, hindering reproducibility. To address these challenges, we implemented a three-layered approach. At the infrastructure layer, we adopted a container-first architecture using Docker, which decouples the ROS 2 environment from the host operating system, ensuring parity between development and deployment. This refactor involved migrating the entire stack to a single ROS 2 distribution, establishing clear image boundaries, and confining network traffic to enhance stability and maintainability. At the perception and localization layer, we upgraded the sensor suite by integrating a dual-antenna RTK GNSS (Real Time Kinematics) to provide an absolute, motion-independent yaw estimate and a 3D LiDAR for robust obstacle detection. The absolute heading is fused with wheel odometry using an Extended Kalman Filter (EKF), significantly improving pose stability, especially at low speeds and during turns. Both sensor pipelines are containerized and provide stable and standardized interfaces to the rest of the system. At the planning and navigation layer, we stabilized the coverage planning pipeline, which is based on the Fields2Cover library. We introduced a semi-automatic workflow for aligning field perimeters with obstacles and developed a collinearity-aware resampling algorithm to generate controller-friendly trajectories that are dense in turns and sparse on straights. We also implemented configuration-level mitigations for known planner limitations, such as merging complex obstacle clusters to prevent the generation of unsafe paths. For navigation, we transitioned from Regulated Pure Pursuit (RPP) to a Model Predictive Path Integral (MPPI) controller, which demonstrated superior performance in simulation. A redesigned Behavior Tree improves the reliability of multi-goal execution. The resulting system was validated end-to-end in the Gazebo simulator and through bench tests, confirming that the containerized architecture is portable, reproducible, and ready for field demonstrations. This work provides a solid foundation for future quantitative evaluation and operational deployment.
FROSI, MATTEO
GARGANI, LEONARDO
ING - Scuola di Ingegneria Industriale e dell'Informazione
23-ott-2025
2025/2026
I robot mobili autonomi sono sempre più cruciali in contesti industriali all'aperto, dove affidabilità, sicurezza, e riproducibilità sono requisiti fondamentali. Questa tesi documenta la trasformazione di un prototipo robotico parzialmente non funzionante in un sistema coerente e pronto per l'impiego, in grado di eseguire missioni di copertura affidabili e consapevoli degli ostacoli. Il prototipo iniziale presentava limitazioni significative, tra cui una combinazione di diverse distribuzioni di ROS 2 (Robot Operating System), una navigazione inaffidabile a causa di un GNSS (Global Navigation Satellite System) a singola antenna, e uno stack software strettamente accoppiato al sistema operativo ospite, che ne comprometteva la riproducibilità. Per affrontare queste sfide, abbiamo implementato un approccio a tre livelli. Al livello infrastrutturale, abbiamo adottato un'architettura basata su container utilizzando Docker, che disaccoppia l'ambiente ROS 2 dal sistema operativo ospite e garantisce la parità tra sviluppo e deployment. Questo refactoring ha comportato la migrazione dell'intero stack a una singola distribuzione di ROS 2, la definizione di confini chiari tra le immagini software e l'isolamento del traffico di rete per migliorare stabilità e manutenibilità. Al livello di percezione e localizzazione, abbiamo aggiornato la suite di sensori integrando un GNSS RTK (Real Time Kinematics) a doppia antenna per fornire una stima assoluta dell'orientamento (yaw) indipendente dal movimento, e un LiDAR 3D per un robusto rilevamento degli ostacoli. L'orientamento assoluto viene fuso con l'odometria delle ruote tramite un Extended Kalman Filter (EKF), migliorando significativamente la stabilità della posa, specialmente a basse velocità e durante le curve. Entrambe le pipeline dei sensori sono containerizzate e forniscono interfacce stabili e standardizzate al resto del sistema. Al livello di pianificazione e navigazione, abbiamo stabilizzato la pipeline di pianificazione della copertura, basata sulla libreria Fields2Cover. Abbiamo introdotto un flusso di lavoro semi-automatico per allineare i perimetri dei campi con gli ostacoli e sviluppato un algoritmo di ricampionamento consapevole della collinearità per generare traiettorie ottimizzate per il controllore, dense nelle curve e rade nei rettilinei. Abbiamo anche implementato mitigazioni a livello di configurazione per limitazioni note del pianificatore, come l'aggregazione di gruppi di ostacoli complessi per prevenire la generazione di percorsi non sicuri. Per la navigazione, siamo passati da un controller Regulated Pure Pursuit (RPP) a un Model Predictive Path Integral (MPPI), che ha dimostrato prestazioni superiori in simulazione. Un Behavior Tree riprogettato migliora l'affidabilità dell'esecuzione di missioni a pose multiple. Il sistema risultante è stato validato end-to-end nel simulatore Gazebo e tramite test sul campo, confermando che l'architettura containerizzata è portabile, riproducibile e pronta per le dimostrazioni sul campo. Questo lavoro fornisce una solida base per future valutazioni quantitative e per l'impiego operativo.
File allegati
File Dimensione Formato  
2025_10_Onori.pdf

non accessibile

Dimensione 20.97 MB
Formato Adobe PDF
20.97 MB Adobe PDF   Visualizza/Apri

I documenti in POLITesi sono protetti da copyright e tutti i diritti sono riservati, salvo diversa indicazione.

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