Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

System Level Testing

Firmware Tests

There are a multitude of testing methods throughout the firmware development process. At the lowest level tests are the unit tests, which cover almost all the firmware not directly related to the actuator control. These tests ensure firmware robustness and full error case coverage, thus ensuring higher reliability. One level above this is the Simulink simulation, which allows us to test the ability of our firmware to fly the drone in different weather conditions and circumstances. Another level above are the dry run integration tests, where firmware is loaded onto the UAV and each actuator response is verified.

...

Apart from waypoint following, there are two special cases that the waypoint manager also considers: when the drone needs to hover at a specific location and when the drone needs to head back to a predefined home base - in the competition’s case, the launch site.

New Attitude Manager

Anthony Luo Dhruv Upadhyay pls halp

BVLOS

The on-board autopilot is fully capable of autonomous navigation. Its main method of doing so is by following a pre-loaded path of GPS waypoints. This path can be adjusted by the groundstation on the fly if need be. To do so, Path Manager constantly reads GPS and altitude data, and uses a waypoint navigation algorithm to determine the optimal real time attitude and airspeed of the aircraft in order to achieve the path as quickly as possible. The Attitude Manager in the safety firmware then reads those commands and uses a series of PID algorithms to produce real time aileron, rudder, elevator and throttle positions in order to achieve the requested attitude/airspeed as quickly as possible.

On the ground, things are different. When undergoing autonomous flight, the ground station can send and receive commands from ZeroPilot via a telemetry link. On the other hand, when flying the drone manually, the pilot can view the drone’s surroundings by viewing a video stream sent down from one of the drone’s cameras. Using a remote that can control ____??___, the pilot can navigate the drone safely.

On takeoffs and landings, the CV and firmware systems work together. 

  • Takeoff: After the takeoff area has been sweeped and cleared by CV, the autopilot firmware goes into takeoff mode. The Path Manager which is set to command a certain takeoff roll airspeed and execute a climb path to a predetermined cruising altitude. When the cruising altitude is reached, the Autopilot sets Path Manager into cruising flight mode which makes the drone follow a predefined flight path.

  • Landings: After the predefined landing coordinates are reached, the drone hovers in position, giving enough time for the CV system to clear the landing area. When the landing area is cleared, a landing command is sent to Path Manager and the state machine switches into Landing Mode which lowers the drone’s altitude at a fixed gps coordinate until contact with the ground is reached.