Autonomous Drone Simulation Competition
- Intel Core i7-10750H 10th Generation, 5.00GHz or higher
- 16 GB DDR4 RAM or higher
- 500 GB SSD or higher
- NVIDIA GeForce GTX 1660 Ti or higher
- 5GHz wifi communication support
- OS : Ubuntu 18.04
- external graphics card is necessary
git clone https://github.com/rladntjd/Drone_Competition.git
cd ~/Drone_Competition
sudo chmod +x ros_melodic_install.sh
./ros_melodic_install.sh
Make sure you are registered with Epic Games. This is required to get source code access for Unreal Engine.
- Just follow the "1 - Required Setup process" on Link to register git.
- Don't download Git of Unreal Engine. it is included in the code that we distribute.
sudo chmod +x Unreal_install.sh
./Unreal_install.sh
- you’ll see a box asking to register Unreal Engine file types. You want to select “Yes”.
sudo chmod +x AirSim_install.sh
./AirSim_install.sh
sudo chmod +x mavros_install.sh
./mavros_install.sh
sudo chmod +x px4_install.sh
./px4_install.sh
Just double-click ros-melodic-depth-noise_2.1.0-0bionic.amd64.deb
or
sudo depkg -i ros-melodic-depth-noise_2.1.0-0bionic.amd64.deb
- Setting file for drone competition.
This file is used to set visual sensors and connenct simulation with px4 firmware. Put this file at Documents\AirSim
- Visual sensor specification
front_center_custom
RGB, 480X320, FOV : 90, 0.5m above from the drone center
Depth, 480X320, FOV : 90, 0.5m above from the drone center
settings.json file Link : https://drive.google.com/file/d/1FomkUxzqGFPbp-Zu0oU3NieMbDWEhM_C/view?usp=sharing
- Competition map
Unreal Engine map Link : https://drive.google.com/file/d/1BVUF7lr0DQZbjK6cA9uXhSuLDuem8WJZ/view?usp=sharing
- Need to turn off 'Use Less CPU when in Background' option at Edit - Editor preferences - General - Performance
Run drone_proto.uproject file and click 'play' for start simulation.
cd ~/AirSim/ros
source devel/setup.bash
roslaunch airsim_ros_pkgs airsim_node.launch
cd ~/PX4-Autopilot
make px4_sitl_default none_iris
roslaunch mavros px4.launch fcu_url:="udp://:14540@127.0.0.1:14557"
roslaunch depth_noise depth_simple.launch
Published Topic name | type | Topic msg |
---|---|---|
/mavros/imu/data_raw | IMU sensor | sensor_msgs/Imu |
/mavros/imu/mag | Magnetometer | sensor_msgs/MagneticField |
/airsim_node/drone_1/front_center_custom/Scene | RGB Camera | sensor_msgs/Image |
/simulation/depth_image | Depth Camera | sensor_msgs/Image |
/mavros/altitude | barometer | mavros_msgs/Altitude |
/mavros/state | Drone's State | mavros_msgs/State |
/mavros/home_position/home | Home position | mavros_msgs/HomePosition |
/competition/ready | Restarting Proceeding or Finished | std_msgs/Bool |
Subscribed Topic name | type | Topic msg |
---|---|---|
/mavros/setpoint_velocity/cmd_vel | velocity control | geometry_msgs/TwistStamped |
/mavros/setpoint_attitude/cmd_vel | attitude control | geometry_msgs/TwistStamped |
/mavros/setpoint_attitude/thrust | attitude control | mavros_msgs/Thrust |
/mavros/setpoint_attitude/attitude | attitude control | geometry_msgs/PoseStamped |
/mavros/setpoint_accel/accel | acceleration control | geometry_msgs/Vector3Stamped |
/restart_from_start | Send msg for Restarting | std_msgs/Bool |
-
Depth camera can measure distance upto 13m. Depth noise is added
-
Positioning data such as GPS is NOT provided. Use visual odometry or other pose estimation algorithm.
http://wiki.ros.org/mavros, https://microsoft.github.io/AirSim/airsim_ros_pkgs.html#using-airsim-ros-wrapper
Due to gaussian random noise is added to rotor thrust the drone will vibrate.
gaussian noise added
noise not added
see the file "results-imucam-camera_bag.txt"