Skip to content

Winter '19 Quarter Progress Report

Lucas Young edited this page Mar 22, 2019 · 1 revision

Current state

The basic autonomous navigation of quick scan and detailed search are complete and have been successfully demonstrated in flight tests.

Quick scan has been demonstrated to takeoff, fly in a spiral pattern specified by a GPS location and a radius, and then land in the location that it took off in. This process is triggered by radio communications, which we have simulated using communications simulation.

Detailed search has been demonstrated to takeoff and wait for the location of points of interest to be received. It then iteratively flew to these points using a first-in first-out approach. The location of these points were specified by the radio communication protocol, which we have simulated using communications simulation.

The role of the VTOL (whether it runs quick scan or detailed search) is determined by a radio message that the GCS sends. I have created a program, executable-picker.py, that connects to the GCS, receives this message, and runs the corresponding executable (quick_scan.py, detailed_search.py) based on this.

As we are aiming to demonstrate GPS-denied navigation in detailed search, I have laid the groundwork for this task with a new executable, gps-denied.py. The idea of this vehicle role is to only be used as a testing platform for the GPS-denied navigation algorithm, which we will later implement in detailed search. The architecture and computer vision algorithm of gps-denied is finished. For gps-denied to be ready for a flight test, the outstanding tasks are:

  • Use radio communications to run the expensive feature matching algorithm on a laptop on the ground and deliver the vehicle's pixel GPS location back to it
  • Create conversion functions from GPS coordinates to pixel coordinates
  • Write functions that will change the orientation of a quadcopter such that it moves in the desired direction.

I am currently in the process of the first task and managing team members in the latter two tasks.