A spasso su Marte: modelli software per la cinematica di robot mobili Davide Brugali Incontri Scientifici in Facoltà 30 Gennaio 2008
Didattica e Ricerca Corso di Laurea Specialistica in Ingegneria Informatica II anno Robotica Progetto di Robotica Software for Experimental Robotics Laboratory Book: Software Engineering for Experimental Robotics
Robot mobili
Caratteristiche di un robot mobile Dispositivo meccatronico molto complesso, paragonabile ad un telaio
Caratteristiche di un robot mobile Dispositivo meccatronico molto complesso, paragonabile ad un telaio Ha una struttura meccanica con elementi rigidi interconnessi da giunti Ha attuatori che trasmettono movimento a giunti e ruote Ha sensori che misurano grandezze fisiche Ha uno o più processori interconnessi in rete Software che implementa leggi di controllo Ha un interfaccia per l interazione con l operatore
L ambiente operativo fa la differenza
L ambiente operativo fa la differenza Il robot opera autonomamente in ambienti Non strutturati: l ambiente non è stato progettato per rendere il lavoro del robot più semplice Dinamici: le condizioni ambientali possono cambiare inaspettatamente (illuminazione, ostacoli imprevisti, oggetti in movimento, ecc.) Parzialmente osservabili: lo spazio di movimento è molto più ampio dello spazio di osservazione Incerti: I sensori sono imperfetti, le informazioni dipendono dalle condizioni ambientali, l effetto delle azioni degli attuatori non è deterministico Inaccessibili all uomo: ambienti pericolosi, irraggiungibili
La missione NASA/MER Due robot gemelli esplorano due regioni opposte di Marte La missione è iniziata nel Gennaio 2004. Scopo: esaminare la superficie di Marte. Controllo semi-autonomo: nuovi target vengono inviati dalla terra una volta al giorno. I robot raggiungono autonomamente i target I robot inviano sulla terra immagini e altri dati sensoriali Ritardo nella comunicazione Terra-Marte-Terra: 20 minuti Distanza percorsa in 21 mesi terrestri da ognuno dei due robot 5 Km
Supervisione a terra: JPL Pasadena
Navigazione autonoma
Navigazione autonoma Velocità media : 35 m/h Per la localizzazione, i robot usano un sistema di visione stereoscopica, i sensori di movimento delle ruote, potenziometri per le sospensioni, sensore di orientamento solare, accelerometro 3D. Accuratezza : errore < 10% della distanza (< 100m)
Sistema meccanico per la mobilità Requisiti: essere in grado di: Avanzare sopra ostacoli alti 25 cm Avanzare lungo salite con pendenza di 20 Sostare su pendii di 45 Avanzare in piano alla velocità massima di 4.6 cm/s Dimensioni Lunghezza 1.4 m, Larghezza 1.2 m Altezza 1.5 m, Distanza dal suolo 0.3 m Peso: 176.5 Kg Configurazione 6 ruote motrici, 4 sterzabili Sospensione Rocker-Bogie con differenziale
Il problema cinematico Data la traiettoria, calcolare le velocità dei motori Destinazione Posizione corrente Misure dai sensori Navigazione Modello cinematico Traiettoria Comandi ai motori
Mobilità ibrida zampe + ruote
Modelli software del Robot fisico Embodiment Model Robot Control Mechanical Structure Locomotion Localization Mapping Sensors / Actuators Motion Control Obstacle Avoid Navigation Processing hw The robot mechanical structure greatly influences the requirements of the software applications that control it The mechanical structure information are scattered among different functional modules Goal: to make software dependencies to the mechanical structure explicit
AnyMorphology Model : AnyElement and AnyPort
AnyMorphology Model: AnyPair
AnyMorphology Model: AnyMechanism
AnyMorphology Model: hierarchy
Hierarchical customization
Generic kinematics algorithm
Mechanism state
Current implementation Java implementation Model data structure Kinematics generic algorithm Collision detection XML data storage 3D VRML model visualization Graphical Editor