Overview
The repository named common contains cross-subteam code used across multiple repositories.
Repository:
https://github.com/UWARG/common
Software
Usage
Add this repository as a submodule.
Install submodule packages:
pip install -r [path to submodule]/requirements.txt
Use the modules under each subdirectory as a normal Python import.
Development
Activate the environment: Python Repository
camera
Python serialization and deserialization for Autonomy.
Testing:
Attach a camera, then test the software:
cd camera python -m test_camera
Every nth image is saved as image0.png , image1.png , etc. They can be deleted after the test.
comms
Python video ingest from camera device.
Testing:
Attach 2 USBTTL devices and wire them together, then test the software.
Synchronous:
cd comms python -m test_tx
Asynchronous:
In a terminal:
cd comms python receive
In another terminal:
cd comms python transmit
mavlink
Connection to drone using the MAVLink protocol.
Testing:
Start Mission Planner simulation with MAVLink forwarding: Ardupilot Simulation with Mission Planner
Remember the home location.
Create a mission with a few waypoints and start the mission.
Run and make sure the home location matches:
python -m test_flight_controller
qr
QR scanning and text output.
Testing:
Unit tests:
cd qr pytest
Camera to QR integration:
Attach a camera and prepare a QR code to be shown, then test the software:
python -m camera_qr_example
The text output should be as expected.
Setup
Follow the instructions: Python Repository
Install packages: pip install -r requirements.txt