ROS Melodic et Raspbian Buster – Premiers pas

Soyez patient, cet article / partie sera bientôt prêt ! Faites moi savoir votre impatience via les commentaires 😉

I – Caractéristiques

Matériel

Environnement

  • PC (dans mon cas sous Windows 10 – 64 bits)
  • Box Internet (sur lequel sera relié le PC et la Raspberry)

II – Préparation

1 – Installation de Raspbian sur la carte SD

2 – Activation de la liaison SSH sur la carte SD

  • Ouvrez l’explorateur windows
  • Insérez votre carte SD sur votre PC
  • Allez dans le disque Boot apparu dans l’explorateur Windows
  • Créez un fichier texte vide et renommez le ssh (juste ssh, sans extension)

3 – Branchement et connexion à la Raspberry

  • Insérez votre carte SD sur votre Raspberry
  • Placez votre Raspberry dans son boitier (attention à la connectique du / des ventilateurs)
  • Branchez votre Raspberry à la Box via Ethernet
  • Alimentez votre Raspberry via le chargeur USB-C
  • Recherchez l’IP de votre Raspberry (via votre box ou en tapant <strong>arp -a</strong> sur le terminal de votre ordinateur)
  • Connectez-vous à la raspberry via ssh : Tapez sur le terminal (cmd ou Power-Shell) :
    • <strong>ssh pi@IP</strong> (exemple ssh pi@192.168.8.114)
    • <strong>yes</strong> (lors de la demande d’acceptation de la « key fingerprint »)
    • <strong>raspberry</strong> (lors de la demande du mdp)
    • Vous devriez obtenir pi@raspberrypi:~ $

4 – Préparation de la Raspberry (VNC et SWAP)

  • sudo apt update && sudo apt upgrade (mis à jour du raspberry pi)
  • sudo raspi-config > Interfacing Options > VNC > Yes > Finish (activation de la liaison graphique VNC)
  • sudo nano /etc/dphys-swapfile > CONF_SWAPSIZE=2048 > Ctrl+O > Ctrl+X (Augmentation de la partition SWAP à 2048 Mo)

5 – Installation de Rosdep

Renseignons les « repositories » et installons les dépendances

  • 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
  • sudo apt-get update
  • sudo apt-get install -y python-rosdep python-rosinstall-generator python-wstool python-rosinstall build-essential cmake

Préparons rosdep

  • sudo rosdep init
  • rosdep update

6 – Installation de Melodic (Desktop) dans l’environnement Catkin

Préparons l’environnement catkin et allons-y :

  • mkdir ~/ros_catkin_ws
  • cd ~/ros_catkin_ws

Préparons y la version ROS Melodic (mode desktop) dans un sous-dossier « src ». Le mode desktop permet d’installer la quasi totalité des packages ROS. Vous pouvez opter pour d’autres modes.

  • rosinstall_generator desktop --rosdistro melodic --deps --wet-only --tar > melodic-desktop-wet.rosinstall
  • wstool init -j8 src melodic-desktop-wet.rosinstall

Fixons quelques erreurs dans notre version ROS Melodic avec l’installation d’assimp pour corriger quelques problèmes de dépendances (collada_urdf)

  • mkdir -p ~/ros_catkin_ws/external_src
  • cd ~/ros_catkin_ws/external_src
  • wget http://sourceforge.net/projects/assimp/files/assimp-3.1/assimp-3.1.1_no_test_models.zip/download -O assimp-3.1.1_no_test_models.zip
  • unzip assimp-3.1.1_no_test_models.zip
  • cd assimp-3.1.1
  • cmake .
  • make
  • sudo make install

Installons OGRE pour le package rviz

  • sudo apt-get install libogre-1.9-dev

Installons les dernières dépendances manquantes

  • cd ~/ros_catkin_ws
  • rosdep install --from-paths src --ignore-src --rosdistro melodic -y

Compilons les packages catkin (plus de 180, peut durer plusieurs heures)

  • sudo ./src/catkin/bin/catkin_make_isolated --install -DCMAKE_BUILD_TYPE=Release --install-space /opt/ros/melodic -j2
  • echo "source /opt/ros/melodic/setup.bash" >> ~/.bashrc
  • sudo reboot now

Pour finir, testons notre installation en lançant roscore

  • roscore
lancement de la commande roscore

III – Premiers essais

IV – Sources

Votez cet article :

We are sorry that this post was not useful for you!

Let us improve this post!

Tell us how we can improve this post?

Laisser un commentaire