[Documentation] [TitleIndex] [WordIndex

Requisitos previos

Para este tutorial, inspeccionaremos un paquete en ros-tutorials, instálelo usando

$ sudo apt-get install ros-<distro>-ros-tutorials

Reemplace '<distro>' (incluido el '<>') con el nombre de su Distribución ROS (por ejemplo: indigo, kinetic, lunar etc.)

Descripción general rápida de los conceptos del sistema de archivos

Herramientas del sistema de archivos

El código se distribuye en muchos paquetes ROS. Navegar con herramientas de línea de comandos como ls y cd puede ser muy tedioso, por lo que ROS proporciona herramientas para ayudarlo.

Usando rospack

rospack le permite obtener información sobre paquetes. En este tutorial, solo cubriremos la opción buscar, que devuelve la ruta al paquete.

Uso:

$ rospack find [package_name]

Ejemplo:

$ rospack find roscpp

resultado:

Si instaló ROS Kinetic desde apt en Ubuntu Linux, verá exactamente:

/opt/ros/kinetic/share/roscpp

Usando roscd

roscd es parte de la suite rosbash. Le permite cambiar el directorio (cd) directamente a un paquete o una pila.

Uso:

$ roscd <package-or-stack>[/subdir]

Para verificar que hemos cambiado al directorio del paquete roscpp, ejecute este ejemplo:

$ roscd roscpp

Ahora imprimamos el directorio de trabajo usando el comando Unix pwd:

$ pwd

Usted debería ver:

2574 / 5000 Resultados de traducción Puede ver que YOUR_INSTALL_PATH / share / roscpp es la misma ruta que rospack find dio en el ejemplo anterior.

Tenga en cuenta que roscd, al igual que otras herramientas ROS, solo encontrará paquetes ROS que estén dentro de los directorios enumerados en su ROS_PACKAGE_PATH. Para ver qué hay en su ROS_PACKAGE_PATH, escriba:

$ echo $ROS_PACKAGE_PATH

Su ROS_PACKAGE_PATH debe contener una lista de directorios donde tiene paquetes ROS separados por dos puntos. Un típico ROS_PACKAGE_PATH podría verse así:

De manera similar a otras rutas de entorno, puede agregar directorios adicionales a su ROS_PACKAGE_PATH, con cada ruta separada por dos puntos ':'.

Subdirectorios

roscd también puede moverse a un subdirectorio de un paquete o pila.

Intente:

$ roscd roscpp/cmake
$ pwd

Usted debería ver:

roscd log

roscd log lo llevará a la carpeta donde ROS almacena los archivos de registro. Tenga en cuenta que si aún no ha ejecutado ningún programa ROS, se producirá un error que indica que aún no existe.

Si ha ejecutado algún programa ROS antes, intente:

$ roscd log

Usando rosls

roslses parte de la suite rosbash. Le permite ls directamente en un paquete por nombre en lugar de por ruta absoluta.

Uso:

$ rosls <package-or-stack>[/subdir]

Ejemplo:

$ rosls roscpp_tutorials

devolverá:

Completado de línea de comando

Puede resultar tedioso escribir el nombre de un paquete completo. En el ejemplo anterior, roscpp_tutorials es un nombre bastante largo. Afortunadamente, algunas herramientas ROS son compatibles con Completado de línea de comando.

Empiece escribiendo:

$ roscd roscpp_tut<<< now push the TAB key >>>

Después de presionar la tecla 'TAB' , la línea de comando debe completar el resto:

$ roscd roscpp_tutorials/

Esto funciona porque roscpp_tutorials es actualmente el único paquete ROS que comienza con roscpp_tut.

ahora trate de escribir:

$ roscd tur<<< now push the TAB key >>>

Después de presionar la tecla 'TAB' , la línea de comando debe completar tanto como sea posible:

$ roscd turtle

Sin embargo, en este caso hay varios paquetes que comienzan con turtle. Intente escribir 'TAB' en otro momento. Esto debería mostrar todos los paquetes ROS que comienzan con turtle:

turtle_actionlib/  turtlesim/         turtle_tf/

En la línea de comando aún debería tener:

$ roscd turtle

Ahora escribe una s después de turtle y luego presiona 'TAB' :

$ roscd turtles<<< now push the TAB key >>>

Dado que solo hay un paquete que comienza con turtles, deberías ver:

$ roscd turtlesim/

Si desea ver una lista de todos los paquetes instalados actualmente, también puede usar la opción de completar con tabulación para eso:

$ rosls <<< now push the TAB key twice >>>

Observaciones

Es posible que haya notado un patrón con el nombre de las herramientas ROS:

Este patrón de nomenclatura se aplica a muchas de las herramientas ROS.


2024-12-07 14:46