TUTORIAL 6
Entendiendo los TOPICS de ROS
1. SE EJECUTA ROS, ESCRIBIENDO EN EL TERMINAL
$ roscore
2. SE ABRE LA VENTANA DE LA TORTUGA “turtlesim”
SE ABRE UN NUEVO TERMINAL Y SE ESCRIBE EL SIGUIENTE COMANDO
$ rosrun turtlesim turtlesim_node
3. MOVILIDAD DE LA TORTUGA USANDO LAS FLECHAS DEL TECLADO, TELEOPERACION
SE ABRE UN NUEVO TERMINAL Y SE ESCRIBE EL SIGUIENTE CÓDIGO
$ rosrun turtlesim turtle_teleop_key
4. VISUALIZAR LOS NODOS EN FUNCIONAMIENTO Y SU TOPICO
EN UN NUEVO TERMINAL SE ESCRIBE
$ sudo apt-get install ros-<distro>-rqt
$ sudo apt-get install ros-<distro>-rqt-common-plugins
PARA LA DISTRO DE KINETIC QUEDARÍA DE LA SIGUIENTE FORMA
$ sudo apt-get install ros-kinetic-rqt
$ sudo apt-get install ros-kinetic-rqt-common-plugins
SE EJECUTA RQT
$ rosrun rqt_graph rqt_graph
5. VISUALIZAR LOS DATOS PUBLICADOS POR UN TOPICO
SE REVISA LOS SUB COMANDO DE ROSTOPIC
$ rostopic -h
rostopic bw display bandwidth used by topic
rostopic echo print messages to screen
rostopic hz display publishing rate of topic
rostopic list print information about active topics
rostopic pub publish data to topic
rostopic type print topic type
rostopic echo- MUESTRA LOS DATOS PUBLICADOS POR UN TOPICO
REVISIÓN DE LOS DATOS DEL TOPICO DE LA TORTUGA, HAY QUE TENER CLARO EL NOMBRE EL
TOPICO
SE ABRE UN NUEVO TERMINAL
$ rostopic echo /turtle1/cmd_vel
PARA VISUALIZAR TANTO EL NODO DE LA TORTUGA, EL NODO DE LA FUNCIÓN DEL TECLADO Y EL
NODO DE LA VISUALIZACION DEL TOPICO SE ABRE OTRA TERMINAL Y SE ESCRIBE
$ rosrun rqt_graph rqt_graph
6. REVISAR LA LISTA DE TÓPICOS
SE ABRE UN NUEVO TERMINAL Y PRIMER SE REVISA LOS SUB COMANDO DE rostopic list
$ rostopic list -h
-h, --help show this help message and exit
-b BAGFILE, --bag=BAGFILE
list topics in .bag file
-v, --verbose list full details about each topic
-p list only publishers
-s list only subscribers
EN EL ULTIMO TERMINAL ABIERTO SE ESCRIBE
$ rostopic list -v
7. MENSAJES DE ROS
SE REVISA EL TIPO DE MENSAJE SOBRE EL QUE TRABAJA EL TÍPICO QUE COMUNICA LOS NODOS
$ rostopic type /turtle1/cmd_vel
CONOCIENDO EL TIPO DE MENSAJE ENVIADO, PARA VER LOS DETALLES DEL MENSAJE SE UTILIZA EL
COMANDO
$ rosmsg show geometry_msgs/Twist
EL RESULTADO OBTENIDO DEBE DE SER EL SIGUIENTE
geometry_msgs/Vector3 linear
float64 x
float64 y
float64 z
geometry_msgs/Vector3 angular
float64 x
float64 y
float64 z
8. ROSTOPIC PUBLICACION DE MENSAJES
PRIMERO SE CIERRAN TODAS LAS TERMINALES PARA NO TENER ACUMULACIÓN
SE ABRE UNA TERMINAL Y SE EJECUTA roscore, después se abre otra terminal y se ejecuta el
comando de la tortuga, posteriormente se abre otra terminal y se ejecuta el comando a revisar.
ESTRUCTURA
rostopic pub [topic] [msg_type] [args]
PARA MOVER LA TORTUGA EN LINEA RECTA
$ rostopic pub -1 /turtle1/cmd_vel geometry_msgs/Twist -- '[2.0, 0.0, 0.0]'
'[0.0, 0.0, 1.8]'
PARA QUE LA TORTUGA SE MUEVA EN BUCLE EN CIRCULO
$ rostopic pub /turtle1/cmd_vel geometry_msgs/Twist -r 1 -- '[2.0, 0.0, 0.0
]' '[0.0, 0.0, -1.8]'
SI SE QUIERE REVISAR LOS PUNTOS POR LOS QUE TRANSITA LA TORTUGA O LOS DATOS DEL
PUBLICADOS POR EL NODO, EN ESTE CASO POR LA TORTUGA
rostopic echo /turtle1/pose
9. REVISIÓN DE LA FRECUENCIA DE FLUJO CONSTANTE DE 1 Hz PARA EL MOVIMIENTO
CONTINUO DE LA TORTUGA
ESTRUCTURA
rostopic hz [topic]
SE DEBE DE IDENTIFICAR EL TOPICO DEL MENSAJE, EN ESE CASO SE
$ rostopic hz /turtle1/pose
ESTRUCTURA
rostopic hz [topic]
SE DEBE DE IDENTIFICAR EL TOPICO DEL MENSAJE, EN ESE CASO SE
$ rostopic hz /turtle1/pose
average rate: 62.521
min: 0.014s max: 0.018s std dev: 0.00065s window: 63
average rate: 62.485
min: 0.014s max: 0.018s std dev: 0.00060s window: 125
average rate: 62.507
min: 0.013s max: 0.018s std dev: 0.00068s window: 188
average rate: 62.508
min: 0.013s max: 0.018s std dev: 0.00066s window: 250
10. GRAFICAR LA FRECUENCIA DE FLUJO
$ rosrun rqt_plot rqt_plot