Table of Contents
ROS Sistema operativo per robot
ROS è un meta-sistema operativo per robot. Si installa come una applicazione su GNU/Linux. Rispetto ad altri sistemi di controllo per robot, come Player, è più potente e flessibile, ma per questo motivo è più difficile da apprendere e usare. I processi avviati all'interno di ROS comunicano in rete (PEER-to-PEER) e sono debolmente accoppiati. ROS fornisce servizi come ogni altro sistema operativo: astrazione hardware, funzioni comuni, inter-process comunication, gestore di pacchetti. Ha proprie librerie e un proprio compilatore (rosgcc). Genera un programma in C++ a partire da un metalinguaggio.
ROS industrial
ROS-Industrial è un progetto open-source che estende le funzioni avanzate di ROS per la produzione industriale. ROS Industrial Consortium Europe promuove il trasferimento delle conoscenze dall'ambito della ricerca a quello industriale. Punta a definire una strategia tecnica che porti a soddisfare i requisiti delle industrie europee.
Caratteristiche di ROS
- Installando ROS, vengono create anche nuove cartelle (un nuovo file system Linux all'interno di una tradizionale cartella).
- I programmi eseguiti in ROS sono organizzati a loro volta in package (come si fa anche su Linux) (vedi packages)
- I processi in ROS sono detti node e comunicano tramite:
- pubblicazione e sottoscrizione di messaggi attraverso topic (vedere ros nodes e gazebo libreria trasporto)
- parametri
- servizi
Obiettivi ROS
- riuso del codice
- leggerezza del codice
Tutorial ROS
http://wiki.ros.org/ROS/Tutorials
- ros installazione (febbraio 2015)
- ros file system (aprile 2015)
- ros packages (aprile 2015)
- ros nodes e topics (aprile 2015)
- ros Publishers and Subscribers (luglio 2016)
- ros services e parametri (aprile 2015)
- (vedi gazebo)
- » roscpp tutorial (giugno 2015)
- ros rqt_console (aprile 2015)
- ros roslaunch (aprile 2015)
- ros file.msg file.srv (aprile 2015)
Applicazioni ROS
- rqt - GUI Qt -
- rqt_graph - si avvia come: rosrun rqt_graph rqt_graph
- rqt_plot - si avvia come: rosrun rqt_plot rqt_plot
- rviz - Interfaccia per 3D (usa Ogree) - supporta hardware stereoscopico -
- Gazebo un simulatore 3D, oggi completamente separato da ROS.
- MoveIt funzionalità per la manipolazione: http://moveit.ros.org/documentation/concepts/