This doctoral dissertation studies the manipulation of objects using pushing: a manipulation technique from the class of non-prehensile manipulations. Techniques from this class exploit the geometry of the object to manipulate together with its dynamics and the surrounding environment to achieve the task at hand. Starting from present literature, the first problem approached was the generation of an optimal pushing plan for manipulating a polygonal object using pushing actions by a single mobile robot. The proposed solution is a two-layer planning algorithm. The first layer evaluates the feasibility of the manipulation by computing a path to the target pose of the object, considering the dimentions of both robot and object. This initial path is then used as a guide to search for a set of pushing trajectories for the robot. These trajectories are obtained through an optimization problem that generates the shortest possible trajectory that satisfies the pushing constraints. The next step is to generate a control algorithm that ensures that the motion of the robot during the manipulation satisfies the pushing constraints. This is achieved using Model Predictive Control. The controller makes use of a model of the system to predict the future state and optimize its behaviour. With MPC it is also possible to impose a set of constraints on the system motion. In particular, the interest here is imposing a constraint to maintain a sticking contact between the object and the robot during the manipulation. This is achieved at first by including the contact forces in the inputs of the system in order to predict the motion of the pushed object. A constraint is then formulated to ensure that the motion of the robot and the object are compatible. However, since the prediction of the motion of a pushed object is often unreliable due to the indeterminacy of the factors involved, and the formulation of the constraint is nonlinear. This increases the complexity of the solution of the optimization algorithm and therefore its time requirements. An improved version of the control algorithm was then designed transforming the constraint into an equivalent linear formulation, easier to compute. The last component necessary for a single robot to perform a manipulation by pushing is a monitoring algorithm. The proposed design defines a finite state machine for the execution of the pushing trajectories, monitoring the manipulation and handling edge cases and possible failures. The study of pushing manipulation with multi-robot system was split in two research direction, differentiated by the size of the robot group. When only a few robots are available to complete the assigned planar pushing task, it is necessary to carefully displace them around the object according to the assigned task. A characterization of the quality of a grasp configuration was defined to aid this decision. Its validity has been studied with statistical analysis from simulation data. The iterative optimization of a given configuration for a task was also studied, therefore proposing a procedure to optimize a pushing configuration. The proposed optimization makes use of the characterization as well as other forms of estimation of the quality of a configuration. When the number of robots is higher and it may be necessary to have the robots push on each other to combine the efforts, a different approach is necessary. A hierarchical control law was then proposed to address these cases. The control law makes use of established control schemes to coordinate the group of robots as if they were a probability distribution, therefore capable to adapt to any object shape and size. Experiments were carried out to validate the strategy on different objects and different group numerosity.

Questa tesi di dottorato studia la manipolazione di oggetti mediante la spinta: una tecnica di manipolazione appartenente alla classe delle manipolazioni non prensili. Le tecniche di questa classe sfruttano la geometria dell'oggetto da manipolare insieme alle sue dinamiche e all'ambiente circostante per raggiungere il compito da svolgere. Partendo dalla letteratura attuale, il primo problema affrontato è la generazione di un piano di spinta ottimale per manipolare un oggetto poligonale tramite azioni di spinta sui suoi lati da parte di un singolo robot mobile. La soluzione proposta è un algoritmo di pianificazione a due livelli. Il primo livello valuta la fattibilità della manipolazione calcolando un percorso verso la posa target dell'oggetto, considerando sia le dimensioni del robot che dell'oggetto. Questo percorso iniziale viene quindi utilizzato come guida per la ricerca di una serie di traiettorie di spinta per il robot. Queste traiettorie sono ottenute attraverso un problema di ottimizzazione che genera la traiettoria più corta possibile che soddisfi i vincoli di spinta. Il passo successivo è generare un algoritmo di controllo che assicuri che il movimento del robot durante la manipolazione soddisfi i vincoli di spinta. Ciò si ottiene utilizzando il controllo predittivo. Il controller utilizza un modello del sistema per prevedere lo stato futuro e ottimizzarne il comportamento. Con MPC è anche possibile imporre dei vincoli al movimento del sistema. In particolare, si è imposto un vincolo per mantenere un contatto stabile tra l'oggetto e il robot durante la manipolazione. Ciò si ottiene inizialmente includendo le forze di contatto negli ingressi del sistema per prevedere il movimento dell'oggetto spinto. Tuttavia, siccome la previsione del moto di un oggetto spinto è spesso inaffidabile a causa dell'indeterminatezza dei fattori coinvolti, e la formulazione del vincolo è non lineare, la complessità della soluzione dell'ottimizzazione risulta alta. È stata quindi progettata una versione migliorata dell'algoritmo di controllo trasformando il vincolo in una formulazione lineare equivalente, più facile da calcolare. L'ultimo componente necessario affinché un singolo robot esegua una manipolazione spingendo è un algoritmo di monitoraggio. Il progetto proposto definisce una macchina a stati finiti per l'esecuzione delle traiettorie di spinta, il monitoraggio della manipolazione e la gestione dei casi limite e dei possibili guasti. Lo studio della manipolazione della spinta con il sistema multi-robot è stato suddiviso in due direzioni di ricerca. Quando sono disponibili solo pochi robot per completare l'attività di spinta planare assegnata, è necessario disporli con attenzione attorno all'oggetto in base all'attività assegnata. Una caratterizzazione della qualità di una configurazione di contatto è stata definita per aiutare questa decisione, validata con metodi statistici. È stata studiata anche l'ottimizzazione iterativa di una data configurazione per un task, proponendo quindi una procedura per ottimizzare una configurazione. L'ottimizzazione proposta si avvale della caratterizzazione e di altre forme di stima della qualità di una configurazione. Quando il numero di robot è maggiore e potrebbe essere necessario che i robot spingano l'uno sull'altro, è necessario un approccio diverso. È stata quindi proposta una legge di controllo gerarchico per affrontare questi casi. La legge di controllo si avvale di schemi di controllo consolidati per coordinare il gruppo di robot secondo una distribuzione di probabilità, definita in base alla spinta da applicare. Sono stati condotti esperimenti per validare la strategia su diverse forme e differenti numerosità dei gruppi di robot.

Manipolazione sul Piano tramite spinta: uno studio su manipolazione non prensile con un singolo robot mobile e con robot mobili multipli / Filippo Bertoncelli , 2022 May 16. 34. ciclo, Anno Accademico 2020/2021.

### Manipolazione sul Piano tramite spinta: uno studio su manipolazione non prensile con un singolo robot mobile e con robot mobili multipli

#### Abstract

This doctoral dissertation studies the manipulation of objects using pushing: a manipulation technique from the class of non-prehensile manipulations. Techniques from this class exploit the geometry of the object to manipulate together with its dynamics and the surrounding environment to achieve the task at hand. Starting from present literature, the first problem approached was the generation of an optimal pushing plan for manipulating a polygonal object using pushing actions by a single mobile robot. The proposed solution is a two-layer planning algorithm. The first layer evaluates the feasibility of the manipulation by computing a path to the target pose of the object, considering the dimentions of both robot and object. This initial path is then used as a guide to search for a set of pushing trajectories for the robot. These trajectories are obtained through an optimization problem that generates the shortest possible trajectory that satisfies the pushing constraints. The next step is to generate a control algorithm that ensures that the motion of the robot during the manipulation satisfies the pushing constraints. This is achieved using Model Predictive Control. The controller makes use of a model of the system to predict the future state and optimize its behaviour. With MPC it is also possible to impose a set of constraints on the system motion. In particular, the interest here is imposing a constraint to maintain a sticking contact between the object and the robot during the manipulation. This is achieved at first by including the contact forces in the inputs of the system in order to predict the motion of the pushed object. A constraint is then formulated to ensure that the motion of the robot and the object are compatible. However, since the prediction of the motion of a pushed object is often unreliable due to the indeterminacy of the factors involved, and the formulation of the constraint is nonlinear. This increases the complexity of the solution of the optimization algorithm and therefore its time requirements. An improved version of the control algorithm was then designed transforming the constraint into an equivalent linear formulation, easier to compute. The last component necessary for a single robot to perform a manipulation by pushing is a monitoring algorithm. The proposed design defines a finite state machine for the execution of the pushing trajectories, monitoring the manipulation and handling edge cases and possible failures. The study of pushing manipulation with multi-robot system was split in two research direction, differentiated by the size of the robot group. When only a few robots are available to complete the assigned planar pushing task, it is necessary to carefully displace them around the object according to the assigned task. A characterization of the quality of a grasp configuration was defined to aid this decision. Its validity has been studied with statistical analysis from simulation data. The iterative optimization of a given configuration for a task was also studied, therefore proposing a procedure to optimize a pushing configuration. The proposed optimization makes use of the characterization as well as other forms of estimation of the quality of a configuration. When the number of robots is higher and it may be necessary to have the robots push on each other to combine the efforts, a different approach is necessary. A hierarchical control law was then proposed to address these cases. The control law makes use of established control schemes to coordinate the group of robots as if they were a probability distribution, therefore capable to adapt to any object shape and size. Experiments were carried out to validate the strategy on different objects and different group numerosity.
##### Scheda breve Scheda completa Scheda completa (DC)
Planar Pushing: a study of non-prehensile manipulation with single and multiple mobile robots
16-mag-2022
SABATTINI, Lorenzo
File in questo prodotto:
File
Tesi definitiva Bertoncelli Filippo.pdf

Open access

Descrizione: Tesi definitiva Bertoncelli Filippo.pdf
Tipologia: Tesi di dottorato
Dimensione 20.04 MB
Utilizza questo identificativo per citare o creare un link a questo documento: `https://hdl.handle.net/11380/1277918`