This repository contains code the Missouri S&T Multirotor Robot Design Team intends to use at the International Aerial Robotics Competition (IARC) in 2020
vision/ # Computer Vision related algorithms
flight/ # Physical control (motors, actuators, etc.) related algorithms
run.py # Python program to run the competition code
Information about files within each directory can be found in /<directory>/README.md
To run the competition code
poetry shell # Initialize the python environment
./run.py # Run the code
To run our competition code, you will need:
- A drone or drone simulator
- Python version 3.6 or higher
- poetry
- MAVSDK-Python
-
Set up the development toolchain. Instructions are platform dependant - more info here.
- Choose your operating system from the Development Environment section
- Install the latest Python version using pyenv on MacOS and Linux. For Windows, get the executable from the Python website.
- Make sure you follow the steps very specifically - else you will waste time.
-
Install poetry
-
Clone the PX4 Firmware repository. Tutorial here.
-
If you are testing at home, install a supported simulator by reading the instructions here.
- Currently, we do simple development with jMAVSim, and complex development and testing in AirSim, so start with jMAVSim
- Run the make command in the PX4 Firmware repository
-
Clone this repository to any location with
git clone --recursive https://github.com/MissouriMRR/IARC-2020
-
Install pre-commit for auto-formatting and sanity checking from here
-
Run the pre-commit linker
pre-commit install
-
In the root of this repository, run the following to create a virtual environment and install our packages:
poetry install
-
Clone the repository
git clone --recursive https://github.com/MissouriMRR/IARC-2020
-
Make sure you are on the up to date
develop
branch.git switch develop git pull
-
Create a branch to add your changes by running.
git switch -c "branch_name"
branch_name
should follow the conventionfeature/{feature_name}
, orhotfix/{fix_name}
-
Make changes in your new branch and commit regularly.
-
Once changes are complete, go to GitHub and submit a "Pull Request". Fill in necessary information. Any issues your PR solves should be donoted in the description by putting the words
Closes #99
where99
is replaced with the issue you are closing. Request one of the software leaders to review the PR on the right hand side of the PR. -
Once it has been reviewed by other members of the team, it can be accepted to the
develop
branch and the cycle continues...
We adopt the MIT License for our projects. Please read the LICENSE file for more info