Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Table of Contents
minLevel1
maxLevel7

...

  • los layer integration

    • Integration with Ardupilot

  • controller state decoding

  • ppm output in los

Zeropilot SW ZeroPilot 3.0 Architecture - ZeroPilot - WARG (atlassian.net)

...

  • Further testing of RC to AM passthrough barebones version

    • Hardfault in communication to AM?

  • Uncomment and update code to integrate PM

  • Uncomment and update code to integrate TM

    • Determine TM input data format and conversion to PM format

  • Add use of global flag object for PM to RC input switching

    • Already created, should be easy to use

  • Improve fatal failure detection

    • Timeout

Path Manager PM Re Architecture For MVP

PM handles path generation and autonomous path following for the drone. After receiving the drone’s current position data and our target waypoints (defined using latitude and longitude) from SM, PM will calculate the required heading unit vector, magnitude, and speed depending on what state of flight we are in (Takeoff, Cruising, Landing). This information will then be sent to AM.

Outstanding Tasks

  • Integrate takeoff/landing + comms with SM into main branch

  • Bring on newer members

  • implement Waypoint following (using list of target waypoints to continuously calculate and update AM instructions )

  • Takeoff/Landing tuning

  • Waypoint following tuning

Attitude Manager Attitude Manager 3.0 - ZeroPilot - WARG (atlassian.net)

...

  • pid tuning rig from mechanical

  • having a working & wired drone from mech/ee

  • understanding how to safely operate a drone either on a rig or in the air

Telemetry Manager

Telemetry Manager (TM) manages the data flowing into and out of zp from the ground station and the onboard jetson. TM is in charge of encoding and decoding messages and passing them to system manager. This manager makes use of LOS Comms and LOS Telem. Code uses code generation to build C++ code using LCM message generation.

Completed tasks:

  • CRC checks

  • LCM message generation

Outstanding tasks:

  • Interfacing with LOS and SM To decode and encode data (I am working on this - Aadi)

Related tasks:

  • write LOS Comms

  • Write LOS Telem

  • Characterize RFD and develop driver for CV and EFS

Laminar OS

...

LaminarOS is the middleware interface between the application layer (ZeroPilot Software) drivers and board support package (STM32 HAL).

LOS Interfaces:

LOS_Link handles the interface for communication between the RC receiver and ZeroPilot.

Outstanding Tasks:

  • merge LOS_Link into LaminarOS main repo

LOS_Actuators

LOS_Actuators handles the interface for all moving peripherals such as servo motors and communication with motor ESCs.

Outstanding Tasks:

  • verify DSHOT300

LOS_Comms

LOS_Comms handles the interface for all on-drone communication, specifically for communication with the Jetson Nano.

Outstanding Tasks:

  • all

LOS_Telem

LOS_Comms handles the interface for all on-drone communication, specifically for communication with the Jetson Nano.

Outstanding Tasks:

  • all

LOS_Pos

LOS_Pos handles the interface for the current attitude of the drone, providing GPS, IMU, as well as VectorNAV300 data to any application module that requires it.

  • Verify VectorNav300 driver

  • Integrate VectorNav300 with LOS_Pos

LOS_Log

LOS_Pos handles the interface for the current attitude of the drone, providing GPS, IMU, as well as VectorNAV300 data to any application module that requires it.

Outstanding Tasks:

  • integrate SD card driver with LOS_Log

LOS_?

LOS Drivers

SD Card

The SD card is for storing logs. The SD card driver will allow us to read from or write to an SD card.

...

  • Porting the SD card driver to L5 (NUCLEO-L552EZ-Q board). This means modifying some configuration files so that the driver can run on L5.

  • Write another version of the SD card driver that uses SDMMC (supported on L5) instead of SPI to communicate with the SD card.

Actuators (PWM +DShot)

Drivers for PWM and DSHOT are for communication with motor ESCs.

Outstanding Tasks:

  • verify DSHOT300

Comms ?

NEOM8

Airspeed

VN300

...

Barometer

PPM Output

LOS Core

TBD

INFRA

...

SIL (simulator)

The simulator validates the design of the aircraft that will be flown at competition.

Initially, the simulator was based off a MATLAB/Simulink model but now the focus has been shifted onto using a program called SIMNET (http://www.simnet.aero ).

Outstanding tasks:

  • Model the competition aircraft in SIMNET

  • Test the autopilot in SIMNET with using Ardupilot and Mission Planner (or another GCS)

HIL

Tracking Antenna Tracking Antenna Project - ZeroPilot - WARG (atlassian.net)

To automatically turn our directional antenna to always point at the aircraft

We use the GPS position and altitude of the drone to calculate the target yaw and pitch for the antenna, then control motors to rotate the antenna towards the target location

...

  • Mechanical design for tracking antenna

Devops

Devops is basically the development of things that make development easier. For example: writing bash scripts for building, docker files, CI/CD.

Note: Almost all devops tasks are “nice to haves” that should make our lives easier and be very useful in the long run, but they are not critical to the upcoming competition.

Outstanding Tasks

  • add .clang-tidy with certc and MISRA-c rules

  • Add .clang-format and .clang-tidy GitHub actions

  • Setup SSH on warg laptop to allow for remote development for users that dont have a Linux machine (I have ideas about this - Aadi)

  • Dockerfile for flashing (Im doing this currently - Aadi)

  • Get our dockers to work on windows and write necessary instructions to set them up

  • Create Dockerfiles and build scripts to build LOS on its own

  • Add GitHub actions to build LOS to LOS repo

  • Make an image for the efs laptop