Installer ROS sur Ubuntu 20.04
Extrait
Il existe deux façons d'installer Ubuntu, l'une consiste à installer le système Ubuntu, l'autre consiste à installer une machine virtuelle sous Windows et à installer Ubuntu dans la machine virtuelle. Ce qui suit consiste à installer Ubuntu pour deux systèmes (l'installation d'Ubuntu avec une machine virtuelle sera très bloquée et comportera de nombreux bugs, à moins que la configuration de l'ordinateur ne soit excellente, il n'est pas recommandé d'utiliser une machine virtuelle pour installer Ubuntu...
Il existe deux façons d'installer Ubuntu, l'une consiste à installer le système Ubuntu, l'autre consiste à installer une machine virtuelle sous Windows et à installer Ubuntu dans la machine virtuelle. Ce qui suit consiste à installer Ubuntu pour les systèmes doubles (l'installation d'Ubuntu avec une machine virtuelle sera très bloquée et comportera de nombreux bugs, à moins que la configuration de l'ordinateur ne soit excellente, sinon il n'est pas recommandé d'utiliser une machine virtuelle pour installer Ubuntu)
1. Configurer la source miroir Linux Tsinghua
1.1 Introduction
Lorsque nous téléchargeons de nombreux outils de base, nous demandons essentiellement des serveurs étrangers. Pour les utilisateurs nationaux, c'est sans aucun doute une très mauvaise expérience. La lenteur du téléchargement et l'échec des requêtes deviennent souvent les plus gros problèmes pour de nombreux débutants qui découvrent Linux.
Heureusement, il existe en Chine des sites Web miroir stables, rapides et gratuits. Nous pouvons profiter de ces excellentes ressources de sites Web en modifiant les fichiers de configuration du système.
清华源:https://pypi.tuna.tsinghua.edu.cn/simple/
阿里云:https://mirrors.aliyun.com/pypi/simple
中科大:https://pypi.mirrors.ustc.edu.cn/simple/
1.2 Démarrer la configuration
Ici, je prends Ubuntu 20.04LTS comme exemple pour configurer la source Tsinghua
Entrez d’abord dans la station miroir du logiciel open source de l’Université Tsinghua ( https://mirrors.tuna.tsinghua.edu.cn )
Sélectionnez votre propre système dans la liste, ici je choisis Ubuntu , cliquez sur le motif de point d'interrogation derrière
Après avoir entré, choisissez votre propre version du système 20.04LTS
Ensuite, le contenu du fichier sources.list dont vous avez besoin sera généré dans la zone de texte , ouvrez le terminal Ubuntu et entrez la commande suivante
sudo apt update
# 将 sources.list 拷贝到桌面,留个备份,防止修改以后出现问题,备份在主目录下
cp /etc/apt/sources.list ~/Desktop
# 打开 sources.list 进行编辑
sudo gedit /etc/apt/sources.list
Après avoir ouvert le fichier, remplacez tout le contenu qu'il contient par le contenu de la zone de texte de la page Web précédente, par exemple
# 默认注释了源码镜像以提高 apt update 速度,如有需要可自行取消注释
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-updates main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-updates main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-backports main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-backports main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-security main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-security main restricted universe multiverse
# 预发布软件源,不建议启用
# deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-proposed main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-proposed main restricted universe multiverse
Ensuite enregistrez et fermez, pour que la source Tsinghua soit configurée !
2.1 Démarrer l'installation : configurer la clé publique
Lors de l'opération précédente, nous avons terminé la configuration de la source domestique, ce qui facilitera nos installations ultérieures. Cependant, une préparation supplémentaire est nécessaire, qui consiste à configurer la clé publique .
La clé publique est un mécanisme de sécurité du système Ubuntu et la clé publique est configurée pour être approuvée par le système.
sudo apt-key adv --keyserver 'hkp://keyserver.ubuntu.com:80' --recv-key C1CF6E31E6BADE8868B172B4F42ED6FBAB17C654
2.2 Mise à jour du système
Mettez à jour votre système pour vous assurer que vos packages et index Debian sont à jour.
2.3 Installer ROS
Faites attention à votre propre version d'Ubuntu, la mienne est 20.04 et la version ROS correspondante est noétique
# Ubuntu 20.04
sudo apt install ros-noetic-desktop-full
# Ubuntu 18.04
sudo apt install ros-melodic-desktop-full
J'ai rencontré un problème très sablonneux ici, E : Impossible de localiser le progiciel ros-noetic-desktop-full , il n'était pas valide après avoir changé la source en Alibaba Cloud et j'ai entré deux autres lignes de commande :
sudo sh -c 'echo "deb http://packages.ros.org/ros/ubuntu $(lsb_release -sc) main" > /etc/apt/sources.list.d/ros-latest.list'
sudo apt-key adv --keyserver 'hkp://keyserver.ubuntu.com:80' --recv-key C1CF6E31E6BADE8868B172B4F42ED6FBAB17C654
Ensuite, lancez sudo apt install ros-noetic-desktop-full, succès !
Bon, il était en effet possible de télécharger normalement à ce moment-là, mais la vitesse était finalement très lente, alors je suis retourné au dortoir pour dormir, et le lendemain je suis allé au poste de travail et j'ai à nouveau signalé une erreur.
E : Le sous-processus /usr/bin/dpkg a renvoyé un code d'erreur (1)
Entrez la commande suivante pour résoudre avec succès :
Renommez maintenant le dossier d'informations
sudo mv /var/lib/dpkg/info /var/lib/dpkg/info.bk
Créer un nouveau dossier d'informations
sudo mkdir /var/lib/dpkg/info
réparation d'installation
sudo apt-get update
sudo apt-get install -f
Après avoir effectué l'étape précédente, générez quelques fichiers dans le dossier info, et déplacez maintenant tous ces fichiers vers le dossier info.bk.
sudo mv /var/lib/dpkg/info/* /var/lib/dpkg/info.bk
Supprimez le dossier d'informations nouvellement créé
sudo rm -rf /var/lib/dpkg/info
Restaurer le dossier d'informations d'origine et modifier le nom
sudo mv /var/lib/dpkg/info.bk /var/lib/dpkg/info
puis exécutez
sudo apt install ros-noetic-desktop-full
succès!
Mise à jour 2023.7.25 :
E : Le progiciel ros-noetic-desktop-full est introuvable. Il peut également s'agir d'un problème avec la source du logiciel. Vous pouvez d'abord essayer l'Université Tsinghua ou Alibaba Cloud.
3. Configurez ROS
3.1 Initialiser rosdep
sudo rosdep init && rosdep update
L'erreur sudo est à nouveau signalée ici : rosdep : commande introuvable
Solution:
Entrez sudo rosdep init seul pour afficher
ERREUR : le fichier de liste des sources par défaut existe déjà : /etc/ros /rosdep/sources.list.d/20-default.listVeuillez le supprimer si vous souhaitez réinitialiser
Entrez ensuite la commande
sudo rm /etc/ros/rosdep/sources.list.d/20-default.list
Entrez ensuite la commande sudo rosdep update pour afficher un délai d'attente, puis entrez à nouveau sudo rosdep init et constatez qu'une nouvelle erreur a été signalée.
ERREUR : impossible de télécharger la liste des sources par défaut à partir de :https : //raw.githubusercontent.com/ros/rosdistro/master/rosdep/sources.list.d/20-default.listLe site Web est peut-être en panne.
Entrez la commande suivante :
Ajoutez ensuite le contenu suivant au fichier hosts ouvert , puis enregistrez et quittez
199.232.28.133 raw.githubusercontent.com
Entrez ensuite la commande sudo rosdep init pour essayer de le résoudre avec succès. Continuez ensuite à entrer sudo rosdep update et constatez qu'une erreur de délai d'attente est toujours signalée, puis vérifiez spécifiquement l'erreur signalée par rosdep update, comme suit :
ERREUR : le fichier de liste des sources par défaut existe déjà : /etc/ros /rosdep/sources.list.d/20-default.listVeuillez le supprimer si vous souhaitez réinitialiser
Étant donné que le site Web demandé par la mise à jour rosdep est raw.githubusercontent.com , pour la plupart des gens, la raison de l'erreur de commande est expirée. La méthode générale sur Internet consiste à modifier l'adresse de requête de /etc/ros/rosdep/sources.list.d/20-default.list. Mais je ne peux pas résoudre le problème par cette méthode moi-même, et un délai d'attente apparaît toujours lors de la demande de raw.githubusercontent.com dans le rapport d'erreurs.
J'ai essayé de nombreuses méthodes, et je ne parlerai pas des plus compliquées. Il existe deux méthodes :
- La première consiste à modifier le réseau de connexion, essayez de changer plusieurs réseaux, par exemple en passant à un point d'accès de téléphone mobile, mais cette méthode est un problème métaphysique, qui est une perte de temps, et la plupart des ordinateurs de bureau ne sont pas équipés de cartes réseau sans fil, vous avez besoin les ajouter vous-même ;
- La première consiste à modifier rosdep en rosdepc, car rosdepc utilise des sources nationales et l'initialisation de rosdep échoue car il utilise github, inaccessible en Chine. Les étapes d'installation sont les suivantes :
(Ici, c'est certainement la meilleure solution pour que la mise à jour rosdep signale les erreurs de délai d'attente !)
Installer rosdepc
Si cela montre qu'il n'y a pas de pip, vous pouvez essayer pip3.
sudo pip3 install rosdepc
Si pip3 n'a pas
sudo apt-get install python3-pip
sudo pip install rosdepc
utiliser
sudo rosdepc init
rosdepc update
Il ne devrait y avoir aucun problème à ce stade, passez à l’étape suivante, la victoire est en vue !
3.2 Paramètres des variables d'environnement
Il est facile de faire des erreurs ici, il suffit de copier et coller
Faites attention à modifier le nom du répertoire correspondant à votre propre version
echo "source /opt/ros/noetic/setup.bash" >> ~/.bashrc
source ~/.bashrc
3.3 Installerrosinstall
sudo apt install python3-rosinstall python3-rosinstall-generator python3-wstool build-essential
3.4 Test du ROS
Ouvrez la première fenêtre du terminal et exécutez roscore
Si la figure suivante apparaît, cela prouve que l'opération a réussi
Ouvrez une deuxième fenêtre de terminal et saisissez :
rosrun turtlesim turtlesim_node
Lorsqu'une fenêtre avec une tortue apparaît, cela prouve que l'opération est réussie (le type de tortue généré à chaque fois est aléatoire)
Ouvrez une troisième fenêtre de terminal et saisissez :
rosrun turtlesim turtle_teleop_key
Après l'apparition d'une telle invite, nous utilisons la souris pour nous concentrer sur la troisième fenêtre du terminal, puis nous pouvons contrôler la petite tortue en appuyant sur les touches ↑ ↓ ← →.
3.5 Installation terminée
À ce stade, félicitations, vous avez terminé l'installation, la configuration et le fonctionnement de ROS.
ps : J'ai installé Ubuntu et Ros pas moins de 10 fois depuis le début de cette année, mais je n'ai toujours rencontré aucune erreur. Ubuntu lui-même est extrêmement facile à signaler des erreurs. Différents appareils signalent des erreurs différentes, alors n'utilisez pas la dernière version d'ubuntu ! Au début, utiliser Ubuntu et Ros est vraiment une mentalité, soyez patient, et finalement vous constaterez que c'est en fait assez simple~