Corso di Laboratorio Ciberfisico Modulo di Robot Programming...
Transcript of Corso di Laboratorio Ciberfisico Modulo di Robot Programming...
![Page 1: Corso di Laboratorio Ciberfisico Modulo di Robot Programming …profs.scienze.univr.it/~bloisi/corsi/lezionicf/2.2... · 2018. 5. 1. · The worldwide number of domestic household](https://reader035.fdocuments.in/reader035/viewer/2022071113/5fea1b895f4bbb01fd525855/html5/thumbnails/1.jpg)
Simulatori Docente:Domenico DanieleBloisi
Ma
gg
io 2
01
8
Corso di Laboratorio CiberfisicoModulo di Robot Programming with ROS
![Page 2: Corso di Laboratorio Ciberfisico Modulo di Robot Programming …profs.scienze.univr.it/~bloisi/corsi/lezionicf/2.2... · 2018. 5. 1. · The worldwide number of domestic household](https://reader035.fdocuments.in/reader035/viewer/2022071113/5fea1b895f4bbb01fd525855/html5/thumbnails/2.jpg)
Service robots in the World
https://ifr.org/ifr-press-releases/news/31-million-robots-helping-in-households-worldwide-by-2019
The worldwide number of domestic household robots will rise to 31 million between 2016 and 2019
The sales value of robots cleaning floors, mowing lawns, and cleaning swimming pools will grow to about 13 billion US dollars in this period
![Page 3: Corso di Laboratorio Ciberfisico Modulo di Robot Programming …profs.scienze.univr.it/~bloisi/corsi/lezionicf/2.2... · 2018. 5. 1. · The worldwide number of domestic household](https://reader035.fdocuments.in/reader035/viewer/2022071113/5fea1b895f4bbb01fd525855/html5/thumbnails/3.jpg)
Sales and forecast numbers for service robots 2014-2019
https://ifr.org/ifr-press-releases/news/31-million-robots-helping-in-households-worldwide-by-2019
![Page 4: Corso di Laboratorio Ciberfisico Modulo di Robot Programming …profs.scienze.univr.it/~bloisi/corsi/lezionicf/2.2... · 2018. 5. 1. · The worldwide number of domestic household](https://reader035.fdocuments.in/reader035/viewer/2022071113/5fea1b895f4bbb01fd525855/html5/thumbnails/4.jpg)
Perché usare un simulatore?
https://www.dis.uniroma1.it/~nardi/Didattica/CAI/matdid/Randelli_Robotic_Simulators_20121009.pdf
![Page 5: Corso di Laboratorio Ciberfisico Modulo di Robot Programming …profs.scienze.univr.it/~bloisi/corsi/lezionicf/2.2... · 2018. 5. 1. · The worldwide number of domestic household](https://reader035.fdocuments.in/reader035/viewer/2022071113/5fea1b895f4bbb01fd525855/html5/thumbnails/5.jpg)
Scegliere il giusto simulatore
https://www.dis.uniroma1.it/~nardi/Didattica/CAI/matdid/Randelli_Robotic_Simulators_20121009.pdf
![Page 6: Corso di Laboratorio Ciberfisico Modulo di Robot Programming …profs.scienze.univr.it/~bloisi/corsi/lezionicf/2.2... · 2018. 5. 1. · The worldwide number of domestic household](https://reader035.fdocuments.in/reader035/viewer/2022071113/5fea1b895f4bbb01fd525855/html5/thumbnails/6.jpg)
Turtlebot 3 – Architettura del sistema
![Page 7: Corso di Laboratorio Ciberfisico Modulo di Robot Programming …profs.scienze.univr.it/~bloisi/corsi/lezionicf/2.2... · 2018. 5. 1. · The worldwide number of domestic household](https://reader035.fdocuments.in/reader035/viewer/2022071113/5fea1b895f4bbb01fd525855/html5/thumbnails/7.jpg)
Turtlebot 3 – teleoperation
![Page 8: Corso di Laboratorio Ciberfisico Modulo di Robot Programming …profs.scienze.univr.it/~bloisi/corsi/lezionicf/2.2... · 2018. 5. 1. · The worldwide number of domestic household](https://reader035.fdocuments.in/reader035/viewer/2022071113/5fea1b895f4bbb01fd525855/html5/thumbnails/8.jpg)
Turtlebot 3 – Pc Software
http://emanual.robotis.com/docs/en/platform/turtlebot3/pc_setup/
Installare il software che girerà sul pc remoto seguendo la guida
Ubuntu 16.04.3 LTS (Xenial Xerus)http://releases.ubuntu.com/16.04
ROS Kinetic Kamehttp://wiki.ros.org/kinetic
Requisiti software per il pc remoto:
![Page 9: Corso di Laboratorio Ciberfisico Modulo di Robot Programming …profs.scienze.univr.it/~bloisi/corsi/lezionicf/2.2... · 2018. 5. 1. · The worldwide number of domestic household](https://reader035.fdocuments.in/reader035/viewer/2022071113/5fea1b895f4bbb01fd525855/html5/thumbnails/9.jpg)
Turtlebot 3 – simulation
http://emanual.robotis.com/docs/en/platform/turtlebot3/simulation
Se non è possibile avere a disposizione il robot reale, è possibile lavorare allo sviluppo del software del robot utilizzando un simulatore
Con il tutlebot3 utilizzeremo il simulatore Gazebo
Una guida all’uso di Gazebo con il Turtlebot3 è disponibile qui
http://gazebosim.org/
![Page 10: Corso di Laboratorio Ciberfisico Modulo di Robot Programming …profs.scienze.univr.it/~bloisi/corsi/lezionicf/2.2... · 2018. 5. 1. · The worldwide number of domestic household](https://reader035.fdocuments.in/reader035/viewer/2022071113/5fea1b895f4bbb01fd525855/html5/thumbnails/10.jpg)
Turtlebot3 - simulation
in simulata, lavoreremo sul Remote PC e non sulprocessore che si trova a bordo del Turtlebot
![Page 11: Corso di Laboratorio Ciberfisico Modulo di Robot Programming …profs.scienze.univr.it/~bloisi/corsi/lezionicf/2.2... · 2018. 5. 1. · The worldwide number of domestic household](https://reader035.fdocuments.in/reader035/viewer/2022071113/5fea1b895f4bbb01fd525855/html5/thumbnails/11.jpg)
Turtlebot3 – run a simulation
Per poter simulare il Turtlebot 3 sul Remote PC è necessario utilizzare lo specifico ROS packageTurtleBot3 Simulation
$ cd ~/catkin_ws/src
$ git clone https://github.com/ROBOTIS-GIT/turtlebot3_simulations.git
$ cd ~/catkin_ws
$ catkin_make
http://emanual.robotis.com/docs/en/platform/turtlebot3/simulation/#simulation
![Page 12: Corso di Laboratorio Ciberfisico Modulo di Robot Programming …profs.scienze.univr.it/~bloisi/corsi/lezionicf/2.2... · 2018. 5. 1. · The worldwide number of domestic household](https://reader035.fdocuments.in/reader035/viewer/2022071113/5fea1b895f4bbb01fd525855/html5/thumbnails/12.jpg)
Turtlebot3 – fake nodeTurtleBot3 fake node è un nodo di simulazione che può essere eseguito senza necessità di avere un robot fisico.
Il TurtleBot3 virtuale può essere controllato in RVizcon un teleop node.
https://youtu.be/iHXZSLBJHMg
![Page 13: Corso di Laboratorio Ciberfisico Modulo di Robot Programming …profs.scienze.univr.it/~bloisi/corsi/lezionicf/2.2... · 2018. 5. 1. · The worldwide number of domestic household](https://reader035.fdocuments.in/reader035/viewer/2022071113/5fea1b895f4bbb01fd525855/html5/thumbnails/13.jpg)
Turtlebot3 – run a simulation$ export TURTLEBOT3_MODEL=waffle
$ roslaunch turtlebot3_fake turtlebot3_fake.launch
![Page 14: Corso di Laboratorio Ciberfisico Modulo di Robot Programming …profs.scienze.univr.it/~bloisi/corsi/lezionicf/2.2... · 2018. 5. 1. · The worldwide number of domestic household](https://reader035.fdocuments.in/reader035/viewer/2022071113/5fea1b895f4bbb01fd525855/html5/thumbnails/14.jpg)
Turtlebot3 – run a simulation$ export TURTLEBOT3_MODEL=waffle
$ roslaunch turtlebot3_fake turtlebot3_fake.launch
![Page 15: Corso di Laboratorio Ciberfisico Modulo di Robot Programming …profs.scienze.univr.it/~bloisi/corsi/lezionicf/2.2... · 2018. 5. 1. · The worldwide number of domestic household](https://reader035.fdocuments.in/reader035/viewer/2022071113/5fea1b895f4bbb01fd525855/html5/thumbnails/15.jpg)
Turtlebot3 – run a simulation$ export TURTLEBOT3_MODEL=waffle
$ roslaunch turtlebot3_fake turtlebot3_fake.launch
![Page 16: Corso di Laboratorio Ciberfisico Modulo di Robot Programming …profs.scienze.univr.it/~bloisi/corsi/lezionicf/2.2... · 2018. 5. 1. · The worldwide number of domestic household](https://reader035.fdocuments.in/reader035/viewer/2022071113/5fea1b895f4bbb01fd525855/html5/thumbnails/16.jpg)
Turtlebot3 – teleop in simulation$ export TURTLEBOT3_MODEL=waffle
$ roslaunch turtlebot3_teleop turtlebot3_teleop_key.launch
Apriamo un nuovo terminal
![Page 17: Corso di Laboratorio Ciberfisico Modulo di Robot Programming …profs.scienze.univr.it/~bloisi/corsi/lezionicf/2.2... · 2018. 5. 1. · The worldwide number of domestic household](https://reader035.fdocuments.in/reader035/viewer/2022071113/5fea1b895f4bbb01fd525855/html5/thumbnails/17.jpg)
Turtlebot3 – teleop in simulation$ export TURTLEBOT3_MODEL=waffle
$ roslaunch turtlebot3_teleop turtlebot3_teleop_key.launch
![Page 18: Corso di Laboratorio Ciberfisico Modulo di Robot Programming …profs.scienze.univr.it/~bloisi/corsi/lezionicf/2.2... · 2018. 5. 1. · The worldwide number of domestic household](https://reader035.fdocuments.in/reader035/viewer/2022071113/5fea1b895f4bbb01fd525855/html5/thumbnails/18.jpg)
Turtlebot3 – teleop in simulation$ export TURTLEBOT3_MODEL=waffle
$ roslaunch turtlebot3_teleop turtlebot3_teleop_key.launch
Per poter controllare il robot da tastiera, il terminal con il nodo teleop deve essere selezionato
![Page 20: Corso di Laboratorio Ciberfisico Modulo di Robot Programming …profs.scienze.univr.it/~bloisi/corsi/lezionicf/2.2... · 2018. 5. 1. · The worldwide number of domestic household](https://reader035.fdocuments.in/reader035/viewer/2022071113/5fea1b895f4bbb01fd525855/html5/thumbnails/20.jpg)
Turtlebot3 – empty world$ export TURTLEBOT3_MODEL=waffle
$ roslaunch turtlebot3_gazebo turtlebot3_empty_world.launch
Apriamo un nuovo terminal
![Page 21: Corso di Laboratorio Ciberfisico Modulo di Robot Programming …profs.scienze.univr.it/~bloisi/corsi/lezionicf/2.2... · 2018. 5. 1. · The worldwide number of domestic household](https://reader035.fdocuments.in/reader035/viewer/2022071113/5fea1b895f4bbb01fd525855/html5/thumbnails/21.jpg)
Turtlebot3 – empty world
![Page 22: Corso di Laboratorio Ciberfisico Modulo di Robot Programming …profs.scienze.univr.it/~bloisi/corsi/lezionicf/2.2... · 2018. 5. 1. · The worldwide number of domestic household](https://reader035.fdocuments.in/reader035/viewer/2022071113/5fea1b895f4bbb01fd525855/html5/thumbnails/22.jpg)
Turtlebot3 – empty world
![Page 23: Corso di Laboratorio Ciberfisico Modulo di Robot Programming …profs.scienze.univr.it/~bloisi/corsi/lezionicf/2.2... · 2018. 5. 1. · The worldwide number of domestic household](https://reader035.fdocuments.in/reader035/viewer/2022071113/5fea1b895f4bbb01fd525855/html5/thumbnails/23.jpg)
Turtlebot3 – empty world
![Page 24: Corso di Laboratorio Ciberfisico Modulo di Robot Programming …profs.scienze.univr.it/~bloisi/corsi/lezionicf/2.2... · 2018. 5. 1. · The worldwide number of domestic household](https://reader035.fdocuments.in/reader035/viewer/2022071113/5fea1b895f4bbb01fd525855/html5/thumbnails/24.jpg)
Turtlebot3 – Turtlebot3 World$ export TURTLEBOT3_MODEL=waffle
$ roslaunch turtlebot3_gazebo turtlebot3_world.launch
![Page 25: Corso di Laboratorio Ciberfisico Modulo di Robot Programming …profs.scienze.univr.it/~bloisi/corsi/lezionicf/2.2... · 2018. 5. 1. · The worldwide number of domestic household](https://reader035.fdocuments.in/reader035/viewer/2022071113/5fea1b895f4bbb01fd525855/html5/thumbnails/25.jpg)
Turtlebot3 – Turtlebot3 World
![Page 26: Corso di Laboratorio Ciberfisico Modulo di Robot Programming …profs.scienze.univr.it/~bloisi/corsi/lezionicf/2.2... · 2018. 5. 1. · The worldwide number of domestic household](https://reader035.fdocuments.in/reader035/viewer/2022071113/5fea1b895f4bbb01fd525855/html5/thumbnails/26.jpg)
Turtlebot3 – Turtlebot3 World
![Page 27: Corso di Laboratorio Ciberfisico Modulo di Robot Programming …profs.scienze.univr.it/~bloisi/corsi/lezionicf/2.2... · 2018. 5. 1. · The worldwide number of domestic household](https://reader035.fdocuments.in/reader035/viewer/2022071113/5fea1b895f4bbb01fd525855/html5/thumbnails/27.jpg)
Teleoperation in Turtlebot3 World
![Page 28: Corso di Laboratorio Ciberfisico Modulo di Robot Programming …profs.scienze.univr.it/~bloisi/corsi/lezionicf/2.2... · 2018. 5. 1. · The worldwide number of domestic household](https://reader035.fdocuments.in/reader035/viewer/2022071113/5fea1b895f4bbb01fd525855/html5/thumbnails/28.jpg)
Teleoperation in Turtlebot3 World
Per poter controllare il robot da tastiera, il terminal con il nodo teleop deve essere selezionato
![Page 29: Corso di Laboratorio Ciberfisico Modulo di Robot Programming …profs.scienze.univr.it/~bloisi/corsi/lezionicf/2.2... · 2018. 5. 1. · The worldwide number of domestic household](https://reader035.fdocuments.in/reader035/viewer/2022071113/5fea1b895f4bbb01fd525855/html5/thumbnails/29.jpg)
Esercizio Turtlebot3 WorldUtilizzando il nodo di teleoperazione, provare a posizionare il robot su una sola ruota
![Page 30: Corso di Laboratorio Ciberfisico Modulo di Robot Programming …profs.scienze.univr.it/~bloisi/corsi/lezionicf/2.2... · 2018. 5. 1. · The worldwide number of domestic household](https://reader035.fdocuments.in/reader035/viewer/2022071113/5fea1b895f4bbb01fd525855/html5/thumbnails/30.jpg)
Esercizio Turtlebot3 WorldEsempio
![Page 31: Corso di Laboratorio Ciberfisico Modulo di Robot Programming …profs.scienze.univr.it/~bloisi/corsi/lezionicf/2.2... · 2018. 5. 1. · The worldwide number of domestic household](https://reader035.fdocuments.in/reader035/viewer/2022071113/5fea1b895f4bbb01fd525855/html5/thumbnails/31.jpg)
Turtlebot3 – collision avoidanceTerminale 1.Lanciare il nodo per la simulazione del Turtlebot3 World
$ TURTLEBOT3_MODEL=waffle
$ roslaunch turtlebot3_gazebo turtlebot3_world.launch
Terminale 2.Lanciare il nodo per l’autonomous drive
$ TURTLEBOT3_MODEL=${TB3_MODEL}
$ roslaunch turtlebot3_gazebo turtlebot3_simulation.launch
![Page 32: Corso di Laboratorio Ciberfisico Modulo di Robot Programming …profs.scienze.univr.it/~bloisi/corsi/lezionicf/2.2... · 2018. 5. 1. · The worldwide number of domestic household](https://reader035.fdocuments.in/reader035/viewer/2022071113/5fea1b895f4bbb01fd525855/html5/thumbnails/32.jpg)
Turtlebot3 – collision avoidance
![Page 33: Corso di Laboratorio Ciberfisico Modulo di Robot Programming …profs.scienze.univr.it/~bloisi/corsi/lezionicf/2.2... · 2018. 5. 1. · The worldwide number of domestic household](https://reader035.fdocuments.in/reader035/viewer/2022071113/5fea1b895f4bbb01fd525855/html5/thumbnails/33.jpg)
Turtlebot3 – collision avoidance
![Page 34: Corso di Laboratorio Ciberfisico Modulo di Robot Programming …profs.scienze.univr.it/~bloisi/corsi/lezionicf/2.2... · 2018. 5. 1. · The worldwide number of domestic household](https://reader035.fdocuments.in/reader035/viewer/2022071113/5fea1b895f4bbb01fd525855/html5/thumbnails/34.jpg)
Turtlebot3 – collision avoidance
E’ possibile lanciare un nodo per teleoperare il nodo mentre il robot si muove in modalitàdi navigazione autonoma?
![Page 35: Corso di Laboratorio Ciberfisico Modulo di Robot Programming …profs.scienze.univr.it/~bloisi/corsi/lezionicf/2.2... · 2018. 5. 1. · The worldwide number of domestic household](https://reader035.fdocuments.in/reader035/viewer/2022071113/5fea1b895f4bbb01fd525855/html5/thumbnails/35.jpg)
Turtlebot3 – rqt_graph
![Page 36: Corso di Laboratorio Ciberfisico Modulo di Robot Programming …profs.scienze.univr.it/~bloisi/corsi/lezionicf/2.2... · 2018. 5. 1. · The worldwide number of domestic household](https://reader035.fdocuments.in/reader035/viewer/2022071113/5fea1b895f4bbb01fd525855/html5/thumbnails/36.jpg)
Turtlebot3 – RVizRViz può essere usato per visualizzare I topic che vengono pubblicati mentre la simulazione è in esecuzione.
Per lanciare RViz, apriamo un nuovo terminal e digitiamo i comandi seguenti.
$ TURTLEBOT3_MODEL=waffle
$ roslaunch turtlebot3_gazebo turtlebot3_gazebo_rviz.launch
![Page 37: Corso di Laboratorio Ciberfisico Modulo di Robot Programming …profs.scienze.univr.it/~bloisi/corsi/lezionicf/2.2... · 2018. 5. 1. · The worldwide number of domestic household](https://reader035.fdocuments.in/reader035/viewer/2022071113/5fea1b895f4bbb01fd525855/html5/thumbnails/37.jpg)
Turtlebot3 – RViz$ TURTLEBOT3_MODEL=waffle
$ roslaunch turtlebot3_gazebo turtlebot3_gazebo_rviz.launch
![Page 38: Corso di Laboratorio Ciberfisico Modulo di Robot Programming …profs.scienze.univr.it/~bloisi/corsi/lezionicf/2.2... · 2018. 5. 1. · The worldwide number of domestic household](https://reader035.fdocuments.in/reader035/viewer/2022071113/5fea1b895f4bbb01fd525855/html5/thumbnails/38.jpg)
Turtlebot3 – RViz
![Page 39: Corso di Laboratorio Ciberfisico Modulo di Robot Programming …profs.scienze.univr.it/~bloisi/corsi/lezionicf/2.2... · 2018. 5. 1. · The worldwide number of domestic household](https://reader035.fdocuments.in/reader035/viewer/2022071113/5fea1b895f4bbb01fd525855/html5/thumbnails/39.jpg)
Turtlebot3 – RViz
laserscan
![Page 40: Corso di Laboratorio Ciberfisico Modulo di Robot Programming …profs.scienze.univr.it/~bloisi/corsi/lezionicf/2.2... · 2018. 5. 1. · The worldwide number of domestic household](https://reader035.fdocuments.in/reader035/viewer/2022071113/5fea1b895f4bbb01fd525855/html5/thumbnails/40.jpg)
Turtlebot3 – adding camera sensor
![Page 41: Corso di Laboratorio Ciberfisico Modulo di Robot Programming …profs.scienze.univr.it/~bloisi/corsi/lezionicf/2.2... · 2018. 5. 1. · The worldwide number of domestic household](https://reader035.fdocuments.in/reader035/viewer/2022071113/5fea1b895f4bbb01fd525855/html5/thumbnails/41.jpg)
Esercizio – TurtleBot3 House
1. Lanciare il nodo per la simulazione della Turtlebot3 House
2. Lanciare la navigazione autonoma del turtlebot waffle nella Turtlebot3 House
3. Lanciare la teleoperazione da tastiera del robot
4. Visualizzare in RViz i dati provenienti dal laser e dalla telecamera
![Page 42: Corso di Laboratorio Ciberfisico Modulo di Robot Programming …profs.scienze.univr.it/~bloisi/corsi/lezionicf/2.2... · 2018. 5. 1. · The worldwide number of domestic household](https://reader035.fdocuments.in/reader035/viewer/2022071113/5fea1b895f4bbb01fd525855/html5/thumbnails/42.jpg)
Esercizio – cyberlab
https://github.com/dbloisi/cyber_lab_gazebo
![Page 43: Corso di Laboratorio Ciberfisico Modulo di Robot Programming …profs.scienze.univr.it/~bloisi/corsi/lezionicf/2.2... · 2018. 5. 1. · The worldwide number of domestic household](https://reader035.fdocuments.in/reader035/viewer/2022071113/5fea1b895f4bbb01fd525855/html5/thumbnails/43.jpg)
Esercizio – cyberlab
![Page 44: Corso di Laboratorio Ciberfisico Modulo di Robot Programming …profs.scienze.univr.it/~bloisi/corsi/lezionicf/2.2... · 2018. 5. 1. · The worldwide number of domestic household](https://reader035.fdocuments.in/reader035/viewer/2022071113/5fea1b895f4bbb01fd525855/html5/thumbnails/44.jpg)
Esercizio – cyberlab
![Page 45: Corso di Laboratorio Ciberfisico Modulo di Robot Programming …profs.scienze.univr.it/~bloisi/corsi/lezionicf/2.2... · 2018. 5. 1. · The worldwide number of domestic household](https://reader035.fdocuments.in/reader035/viewer/2022071113/5fea1b895f4bbb01fd525855/html5/thumbnails/45.jpg)
Esercizio – cyberlab
![Page 46: Corso di Laboratorio Ciberfisico Modulo di Robot Programming …profs.scienze.univr.it/~bloisi/corsi/lezionicf/2.2... · 2018. 5. 1. · The worldwide number of domestic household](https://reader035.fdocuments.in/reader035/viewer/2022071113/5fea1b895f4bbb01fd525855/html5/thumbnails/46.jpg)
Simulatori Docente:Domenico DanieleBloisi
Ma
gg
io 2
01
8
Corso di Laboratorio CiberfisicoModulo di Robot Programming with ROS