Application ROS1
Configuration système : ubuntu20.04
Version ROS1 : noetic
Configuration de l'environnement ROS1
- Configurer la source d'installation ROS1
PowerShell
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'- Configurer la clé
PowerShell
sudo apt-key adv --keyserver 'hkp://keyserver.ubuntu.com:80' --recv-key C1CF6E31E6BADE8868B172B4F42ED6FBAB17C654Plain
sudo apt update- Installer ROS1 (téléchargement officiel)
PowerShell
sudo apt install ros-noetic-desktop-fullInstaller ROS1 avec accélération par proxy wget http://fishros.com/install -O fishros && . fishros
- Configurer les variables d'environnement
Plain
echo "source /opt/ros/noetic/setup.bash" >> ~/.bashrcPowerShell
source ~/.bashrcConnecter le périphérique à la machine virtuelle
- Vérifier le périphérique
PowerShell
ll /dev/ttyUSB*- Créer le mapping des ports
PowerShell
sudo gedit /etc/udev/rules.d/99-serial-imu.rules- Remplir le contenu du fichier de mapping
PowerShell
KERNEL=="ttyUSB*", ATTRS{idVendor}=="1a86", ATTRS{idProduct}=="7523", MODE:="0777", SYMLINK+="imu-serial"- Enregistrer et quitter, exécuter les commandes pour activer les règles
PowerShell
sudo udevadm triggerPlain
sudo service udev reloadPlain
sudo service udev restart- Vérifier
PowerShell
ll /dev/imu-serialBash
sudo usermod -aG dialout ashImporter l'archive préparée
Dans le même répertoire que Feishu : IMU_ROS1.zip
Extraire puis transférer dans la machine virtuelle avec le logiciel de transfert
Installer la bibliothèque IMU_Library
PowerShell
cd IMU_ROS1
# Après avoir téléchargé et décompressé l'archive IMU_ROS1, entrer dans le répertoire IMU_Library et exécuter la commande suivante
cd IMU_Library
# Installer la bibliothèque et ses dépendances
pip install -e .
# Ou installer avec setup.py
python setup.py installInstaller les bibliothèques Python
PowerShell
sudo pip3 install pyserial
sudo pip3 install smbus2En cas de problème de rendu, exécuter la commande suivante
PowerShell
sudo apt-get install ros-noetic-imu-filter-madgwick
sudo apt-get install ros-noetic-rviz-imu-pluginConstruire le projet ROS1
- Ouvrir un nouveau terminal dans /home, créer le workspace ros1
PowerShell
mkdir imu_ros1
cd imu_ros1
mkdir src
cd src/
catkin_init_workspace- Copier le dossier IMU_ROS1 transféré dans ~/imu_ros1/src/
PowerShell
# Copier le dossier IMU_ROS1 dans le répertoire src nouvellement créé
cp -r ~/IMU_ROS1 ~/imu_ros1/src
cd ~/imu_ros1
catkin_make- Ajouter le répertoire de travail ~/imu_ros1 aux variables d'environnement
PowerShell
# Éditer ~/.bashrc
sudo gedit ~/.bashrc
# Écrire la commande suivante à la fin
source ~/imu_ros1/devel/setup.bash
source ~/.bashrcDémarrer le nœud ROS1
- Ouvrir un terminal, saisir roscore pour démarrer le nœud
PowerShell
# Lancer roscore
roscore
# Ouvrir un nouveau terminal, configurer l'environnement et lancer le nœud
source ~/imu_ros1/devel/setup.bash- Donner les droits d'exécution aux scripts Python (important)
Entrer dans le répertoire scripts des scripts et exécuter chmod +x pour donner les droits d'exécution (+x = ajouter l'exécution) :
PowerShell
# Se placer dans le répertoire contenant imu_driver.py (selon votre chemin réel)
cd ~/imu_ros1/src/IMU_ROS1/scripts/
# Donner les permissions d'exécution (une seule fois, effet permanent)
chmod +x imu_driver.py
chmod +x mag_visualizer.pyRevenir au dossier imu_ros1 et exécuter imu_driver.py
Plain
cd ~/imu_ros1Plain
rosrun IMU_ROS1 imu_driver.pyAfficher les données IMU
- Ouvrir un nouveau terminal, afficher les topics imu
PowerShell
# Afficher tous les topics publiés actuellement
rostopic list- Afficher les données des topics
PowerShell
# Afficher les données brutes de l'IMU
rostopic echo /imu/data_raw
# Afficher les données du magnétomètre
rostopic echo /imu/magVisualisation RViz
- Exécuter la commande pour démarrer rviz
PowerShell
roslaunch IMU_ROS1 imu_display.launchQuestions fréquentes
- Si le démarrage du nœud échoue, essayer ces commandes
PowerShell
# Exécuter dans le répertoire ~/imu_ros1
source devel/setup.bash
# Problème de numéro de port
sudo chmod 666 /dev/imu-serial- Si les axes sont affichés très petits dans RViz, recocher Enable axes


