Code used on our drone competing in the AUVSI SUAS competition.
CI Tool | Status of master |
---|---|
Jenkins | |
Travis.CI |
- Control code
- Mission planning & surveying
- Collision avoidance
- Flight simulation
- Failsafe
- Vision code
- Camera interface
- Target identification
- Shape/letter classification
- Determining GPS location of targets
- Gimbal control
- Synthetic image generation (for testing)
- Ground station
- Antenna tracker
- Telemetry multiplexer (from Wi-Fi and serial interface)
- Build and deployment scripts to drone
This project uses continuous integration to avoid breaking old code as new features are introduced. Read more about the best practices of CI here:
These guidelines are also meant to make our code more portable and easier for new developers to install. In addition, it allows for tests to be automatically run on any new code that is checked into this repository, which evaluates everything from target identification accuracy for the vision system to safety and reliability for the control software.
Travis-CI is used to automatically build every commit that is pushed to this Github repository.
Install docker, tmux, and python2.7. After that, ./uas
will list all of the
possible commands that can be run. Use ./uas controls build
to build the
controls code.
- PX4 Firmware as the flight controller software stack and simulator.
- Docker for containment of the development environment.
- OpenCV for image filtering and segmentation
- Darkflow for image classification
- MAVLink Common Messages for communicating between Ground Control Station and the UAV
- Bazel, a fast, scalable, multi-language and extensible build system
- Gazebo for 3D simulation