This project is a fork of the tum_simulator package to add support for multiple drones in one simulation as well as an automatic grid generator for demos.
These packages are used to simulate the flying robot Ardrone in ROS environment using gazebo simulator. Totally they are 4 packages. Their functions are descript as below:
-
thinc_sim_gazebo: contains object models, sensor models, quadrocopter models, flying environment information and individual launch files for each objects and pure environment without any other objects.
-
thinc_sim_gazebo_plugins: contains gazebo plugins for the quadrocopter model. quadrotor_simple_controller is used to control the robot motion and deliver navigation information, such as: /ardrone/navdata. Others are plugins for sensors in the quadrocopter, such as: IMU sensor, sonar sensor, GPS sensor.
-
thinc_message_to_tf: is a package used to create a ros node, which transfers the ros topic /ground_truth/state to a /tf topic.
-
thinc_sim_msgs: contains message forms for the simulator.
Some packages are based on the tu-darmstadt-ros-pkg by Stefan Kohlbrecher, TU Darmstadt.
How to install the simulator:
-
Create a workspace for the simulator
mkdir -p ~/thinc_simulator_ws/src cd ~/thinc_simulator_ws/src catkin_init_workspace
-
Download dependencies
git clone https://github.com/AutonomyLab/ardrone_autonomy.git # The AR.Drone ROS driver git clone https://github.com/thinclab/thinc_simulator.git cd .. rosdep install --from-paths src --ignore-src --rosdistro indigo -y
-
Build the simulator
catkin_make
-
Source the environment
source devel/setup.bash
How to run a simulation:
-
Run a simulation by executing a launch file in thinc_sim_gazebo package:
roslaunch thinc_sim_gazebo ardrone_testworld.launch