Instale ROS Melodic en Ubuntu 18.04 (Biónico)

introducción

Este artículo presenta el proceso de instalación de ROS Melodic en el sistema operativo Ubuntu18.04 (Bionic), así como los problemas y soluciones encontrados durante el proceso de instalación.

1. Documentos de orientación oficiales

http://wiki.ros.org/melodic/Installation/Ubuntu

inserte la descripción de la imagen aquí

1. Preste atención para distinguir el paquete de funciones de ROS (paquetes originales de ROS) en el almacén de ROS y el paquete de funciones de ROS (paquetes de ROS ascendentes) en el almacén de Debian/Ubuntu.

(1) El paquete de funciones de ROS en el repositorio de Debian/Ubuntu está adaptado de los paquetes de ROS originales, pero no todos los paquetes de ROS originales están adaptados.

(2) Cuando los paquetes de funciones ROS de los dos almacenes funcionan juntos, pueden entrar en conflicto entre sí, por lo que se recomienda no mezclar los paquetes de funciones ROS de los dos almacenes.

2. Preste atención a la versión de Ubuntu y la arquitectura de la CPU compatibles con ROS Melodic.

3. ROS Melodic tiene dos métodos de instalación: instalación desde el almacén de software de Ubuntu (recomendado), instalación del código fuente.


Aquí se explica cómo instalar ROS Melodic desde los repositorios de Ubuntu:

2. Proceso de instalación

1.1 Preparativos antes de instalar ROS

1. Primero prepare una computadora (que puede ser una máquina virtual) y la arquitectura de la CPU debe cumplir con los requisitos de ROS Melodic.

2. Instale el sistema operativo Ubuntu 18.04 en la computadora.

3. Abra la configuración del Actualizador de software de Ubuntu (Configuración); asegúrese de que "restringido", "universo" y "multiverso" estén marcados; reemplace el almacén de software de Ubuntu con un almacén doméstico, como: el almacén de Ubuntu de Alibaba Cloud; finalmente haga clic en Haga clic en Cerrar.

inserte la descripción de la imagen aquí

inserte la descripción de la imagen aquí

inserte la descripción de la imagen aquí

1.2 Pasos de instalación

1.2.1 Establecer la fuente de instalación

sudo sh -c 'echo "deb http://packages.ros.org/ros/ubuntu $(lsb_release -sc) main" > /etc/apt/sources.list.d/ros-latest.list'

El comando anterior es para establecer la fuente de instalación de ROS en la fuente de instalación oficial de ROS, pero la velocidad de instalación de ROS desde la fuente de instalación oficial puede ser más lenta. Se recomienda establecer la fuente de instalación del paquete de funciones ROS en una fuente espejo doméstica.

http://wiki.ros.org/ROS/Installation/UbuntuMirrors

(1) Imagen especular de la USTC

sudo sh -c '. /etc/lsb-release && echo "deb http://mirrors.ustc.edu.cn/ros/ubuntu/ `lsb_release -cs` main" > /etc/apt/sources.list.d/ros-latest.list'

(2) Imagen especular de la Universidad de Tsinghua

sudo sh -c '. /etc/lsb-release && echo "deb http://mirrors.tuna.tsinghua.edu.cn/ros/ubuntu/ `lsb_release -cs` main" > /etc/apt/sources.list.d/ros-latest.list'

(3) Imagen especular de la Universidad de Estudios Extranjeros de Beijing

sudo sh -c '. /etc/lsb-release && echo "deb http://mirrors.bfsu.edu.cn/ros/ubuntu/ `lsb_release -cs` main" > /etc/apt/sources.list.d/ros-latest.list'

(4) Imagen especular de la Universidad Jiao Tong de Shanghai

sudo sh -c '. /etc/lsb-release && echo "deb http://mirrors.sjtug.sjtu.edu.cn/ros/ubuntu/ `lsb_release -cs` main" > /etc/apt/sources.list.d/ros-latest.list'

1.2.2 Establecer la clave

sudo apt install curl 
curl -s https://raw.githubusercontent.com/ros/rosdistro/master/ros.asc | sudo apt-key add -

1.2.3 Instalar ros-melodic-desktop-full

sudo apt install ros-melodic-desktop-full

El oficial proporciona tres configuraciones de instalación: Desktop-Full , Desktop , ROS-Base , elegimos instalar Desktop-Full aquí .

inserte la descripción de la imagen aquí

Si desea instalar un paquete de funciones ROS específico, puede usar el siguiente comando:

sudo apt install ros-melodic-PACKAGE

Nota: El nombre del paquete de funciones de ROS será PACKAGEreemplazado, pero los guiones bajos (guiones bajos) en el nombre serán reemplazados por guiones. Por ejemplo: slam_gmappingel comando para instalar el paquete ROS es el siguiente,

sudo apt install ros-melodic-slam-gmapping

El comando para encontrar el paquete de funciones de ROS es:

apt search ros-melodic

1.2.4 Configuración de variables de entorno

Si está utilizando bash,

echo "source /opt/ros/melodic/setup.bash" >> ~/.bashrc
source ~/.bashrc

Si está utilizando zsh,

echo "source /opt/ros/melodic/setup.zsh" >> ~/.zshrc
source ~/.zshrc

1.2.5 Instalar algunas herramientas y dependencias de ROS

sudo apt install python-rosdep python-rosinstall python-rosinstall-generator python-wstool build-essential

1.2.6 Inicializar rosdep

1. Si no se ha instalado python-rosdep, instálelo primero con el siguiente comando.

sudo apt install python-rosdep

rosdep usa una herramienta de línea de comandos escrita en python, también puede descargar el código fuente para la instalación, consulte:

http://wiki.ros.org/rosdep
https://pypi.org/project/rosdep/
https://github.com/ros-infrastructure/rosdep

2. Ejecute el siguiente comando para inicializar rosdep.

sudo rosdep init
rosdep update

Este paso muchas veces genera errores por problemas de red, por ejemplo sudo rosdep inital ejecutar comandos puede aparecer el error que se muestra en la siguiente figura:

inserte la descripción de la imagen aquí

La función del comando sudo rosdep inites en realidad descargar los archivos del siguiente sitio web 20-default.lista la carpeta local /etc/ros/rosdep/source.list.d.

https://raw.githubusercontent.com/ros/rosdistro/master/rosdep/sources.list.d/20-default.list

A la hora de ejecutar rosdep updatecomandos, también suele verse interrumpido por problemas de red.


Los amigos han propuesto muchas soluciones al problema anterior. Personalmente, creo que la mejor solución actual es la siguiente:


1. Desde la siguiente página web, rosdistrodescargue a una carpeta en Ubuntu (por ejemplo: /home/jzy/Downloads).

https://github.com/ros/rosdistro

Nota: jzy Este es mi nombre de usuario, debe reemplazarlo por el suyo.

inserte la descripción de la imagen aquí

2. Descomprima el rosdistro-master.ziparchivo descargado para obtener la carpeta: rosdistro-master.

unzip rosdistro-master.zip

3. Edite rosdistro-master/rosdep/sources.list.dlos archivos en la carpeta 20-default.list.

poner todos los archivos en el

https://raw.githubusercontent.com/ros/rosdistro/master

cambiado a

file:///home/jzy/Downloads/rosdistro-master

inserte la descripción de la imagen aquí

20-default.list4. Copie los archivos modificados en /etc/ros/rosdep/sources.list.del directorio.

cp 20-default.list /etc/ros/rosdep/sources.list.d/

Nota: De hecho, esto es sudo rosdep initlo que hace el comando. También puede omitir este paso y sudo rosdep initsimplemente ejecutar el comando después; de lo contrario, no es necesario ejecutar sudo rosdep initel comando nuevamente.

Nota: Si el directorio /etc/ros/rosdep/sources.list.dno existe, créelo primero.

5. Modificar 4 archivos: __init__.py, gbpdistro_support.py, rep3.py, sources_list.py.

El método de modificación es poner el archivo en el

https://raw.githubusercontent.com/ros/rosdistro/master

cambiado a

file:///home/jzy/Downloads/rosdistro-master

(1) Modificación __init__.py, ubicación: /usr/lib/python2.7/dist-packages/rosdistro.

(2) Modificar gbpdistro_support.py, rep3.py, sources_list.py, ubicación: /usr/lib/python2.7/dist-packages/rosdep2.

Como se muestra abajo:

(1)__init__.py

inserte la descripción de la imagen aquí

(2)gbpdistro_support.py

inserte la descripción de la imagen aquí

(3)rep3.py

inserte la descripción de la imagen aquí

(4)sources_list.py

inserte la descripción de la imagen aquí

6. Ejecute el siguiente comando para inicializar rosdep:

sudo rosdep init

inserte la descripción de la imagen aquí

rosdep update

inserte la descripción de la imagen aquí


Si cree que el método anterior es problemático, también puede usar la imagen del espejo doméstico:

http://wiki.ros.org/rosdep

inserte la descripción de la imagen aquí

https://mirrors.tuna.tsinghua.edu.cn/help/rosdistro/
https://mirrors.bfsu.edu.cn/help/rosdistro/

Combina estos dos pasos:

sudo rosdep init
rosdep update

Reemplace con los siguientes pasos:

# 手动模拟 rosdep init
sudo mkdir -p /etc/ros/rosdep/sources.list.d/
sudo curl -o /etc/ros/rosdep/sources.list.d/20-default.list https://mirrors.tuna.tsinghua.edu.cn/github-raw/ros/rosdistro/master/rosdep/sources.list.d/20-default.list
# 为 rosdep update 换源
export ROSDISTRO_INDEX_URL=https://mirrors.tuna.tsinghua.edu.cn/rosdistro/index-v4.yaml
rosdep update

# 每次 rosdep update 之前,均需要增加该环境变量
# 为了持久化该设定,可以将其写入 .bashrc 中,例如
echo 'export ROSDISTRO_INDEX_URL=https://mirrors.tuna.tsinghua.edu.cn/rosdistro/index-v4.yaml' >> ~/.bashrc

Alternativamente, reemplace con los siguientes pasos:

# 手动模拟 rosdep init
sudo mkdir -p /etc/ros/rosdep/sources.list.d/
sudo curl -o /etc/ros/rosdep/sources.list.d/20-default.list https://mirrors.bfsu.edu.cn/github-raw/ros/rosdistro/master/rosdep/sources.list.d/20-default.list
# 为 rosdep update 换源
export ROSDISTRO_INDEX_URL=https://mirrors.bfsu.edu.cn/rosdistro/index-v4.yaml
rosdep update

# 每次 rosdep update 之前,均需要增加该环境变量
# 为了持久化该设定,可以将其写入 .bashrc 中,例如
echo 'export ROSDISTRO_INDEX_URL=https://mirrors.bfsu.edu.cn/rosdistro/index-v4.yaml' >> ~/.bashrc

3. prueba

Una vez completada la instalación, puede comprobar si la instalación se ha realizado correctamente.

1. Abra una terminal y ejecute el siguiente comando para iniciar roscore.

roscore

Si aparece el error que se muestra en la figura a continuación, significa que los permisos de los archivos en la carpeta ~/.ros son problemáticos.

inserte la descripción de la imagen aquí

Después de ejecutar el siguiente comando, reinicie roscore.

sudo chmod 777 -R ~/.ros/

2. Abra una nueva terminal e inicie el nodo de simulación de la pequeña tortuga.

rosrun turtlesim turtlesim_node

inserte la descripción de la imagen aquí

El ros-melodic-desktop-full previamente instalado debe tener integrado el paquete de funciones turtlesim, si no, puedes instalarlo con el siguiente nombre:

sudo apt install ros-melodic-turtlesim

3. Abra una nueva terminal e inicie el nodo de control del teclado de la pequeña tortuga.

rosrun turtlesim turtle_teleop_key 

Usa las flechas del teclado para controlar el movimiento de la tortuguita.

inserte la descripción de la imagen aquí

Supongo que te gusta

Origin blog.csdn.net/u013819452/article/details/127688752
Recomendado
Clasificación