- Simuler le drône et son environnement afin de pouvoir tester le logiciel sans le matériel
Cloner elikos_roomba et create_autonomy dans le dossier src/ du même workspace
git clone https://github.com/elikos/elikos_roomba.git
git clone https://github.com/AutonomyLab/create_autonomy.git
S'assurer de init et update les submodules (on a besoin des modèles!)
git submodule init
git submodule update --recursive --remote
Utiliser le launch file roomba_sim.launch
roslaunch elikos_sim roomba_sim.launch
Pour faire bouger les robots
rosservice call /sim/toggle_activate
Pour reset les robots
rosservice call /sim/reset
Pour envoyer un setpoint au quad, publier un message DMCmd avec la pose voulue sur /elikos_decisionmaking_cmd
rostopic pub /elikos_decisionmaking_cmd <tab> <tab>
-
Aller dans le dossier de simulation de gazebo
roscd elikos_sim/src/gazebo_sim -
Mettre à jour les sous-modules git (le Firmware du pixhawk et les modèles gazebo)
git submodule init git submodule update --recursive --remote -
Initialiser les variables d'environnement pour gazebo
Note: Assurez-vous qu'un différent package px4 n'a pas déjà été sourcé avec
rospack find px4Le package px4 ne devrait pas exister.source setup.bashCe script est à éxécuter pour chaque nouvelle console.
(Optionnel) Ajouter la commande à votre ~/.bashrc pour ne pas avoir à réexécuter le script.
echo "source $(pwd)/setup.sh" >> ~/.bashrc -
Builder le code du Firmware
Suivre les instructions pour installer les dépendances requises : http://dev.px4.io/starting-installing-linux.html Note: Installer les dépendances pour Nuttx based hardware.
Ajouter les packages de osrfoundation.org pour gazebo : http://gazebosim.org/tutorials?tut=install_ubuntu
Installer gazebo 7 pour ros
sudo apt-get install ros-$(ROS_DISTRO)-gazebo-ros-pkgsBuilder le firmware pour gazebo
cd Firmware make posix_sitl_default gazeboSi tout fonctionne, Gazebo devrait se lancer en affichant le modèle iris par défaut.
Fermer la simulation pour les étapes suivantes.
-
roomba_sim.launch- Lance une simulation avec rviz
-
simulation.launch- Lance une simulation rviz
-
gazebo_sim.launch- Lance une simulation gazebo, le firmware du pixhawk et mavros
world: Le chemin vers le fichier .world qui décrit l'environnementsdf: Le chemin vers le fichier .sdf qui décrit le véhicule simuléconfig_yaml: Le chemin vers le fichier .yaml qui contient les configurations pour mavros.
-
integration_sim.launch- Lance les différents nodes d'elikos_main pour la simulation
-
robots_sim.launch- Ajoute des cibles et des obstacles se déplaçant dans la simulation.
Après avoir lancé le launch file pour la simulation gazebo, envoyer un setpoint à une position dans les airs
rostopic pub /mavros/setpoint_position/local geometry_msgs/PoseStamped (*Peser tab et remplir le message*) -r 10
Si /mavros/setpoint_position/tf/listen est à true faire plutôt :
rosrun tf static_transform_publisher 0 0 2 0 0 0 1 elikos_arena_origin elikos_setpoint 100
Ensuite, il suffit d'armer le quad:
rosservice call /mavros/cmd/arming 1
rosservice call /mavros/set_mode 216 OFFBOARD
Voir le tutoriel de simulation pour plus de détails.