The following video demonstrates the project.
2022-06-07.18-40-40.mp4
We tested this repository on Ubuntu 20.04.3 LTS.
- CMake
- ROS Noetic(For Gazebo)
- PX4 Autopilot
- Mosquitto
Visit processes folders for detailed requirements
- C++20
- Java8
- Python 3.6 and above
- Go 1.16.2 and above
We use Gazebo simulation environment to test our project. We have 2 scripts to run simulation environment and project. Before running scripts, make sure every dependency is installed.
- sim_test.sh
- Default script for testing the changes. It opens all necessary terminals. It runs Client,Server,Mosquitto processes automatically but you still have to run image processing and autonomous movement processes manually.
- ip_sim_test.sh
- Specialized script for testing image processing changes. It creates 2 UAV's in Gazebo environment. Main UAV only performs takeoff action. You use WASD keys to control target drone. Before using this script, do not forget to modify image processing flags. Please read the comments at the beginning of the script file.
- Install CMake (Minimum Version required 3.15 and above)
- Install ROS Noetic
- Clone PX4 Source Code and run bash script
git clone https://github.com/PX4/PX4-Autopilot.git --recursive
bash ./PX4-Autopilot/Tools/setup/ubuntu.sh
sudo apt install libignition-common3-graphics
- restart the computer
- Install QGroundControl (optional)
- Install Mosquitto
sudo apt install mosquitto