SM Decisions and Reasoning

Question

Answer

Question

Answer

What does SM do?

  1. SM manages the drone at the highest level. It acts as the “brains” of the drone and decides the mode of operation based on the inputs from Telemetry Manager, RC, SF, and CV messages.

  2. SM decodes RC messages, converts them into waypoint targets and passes them with a “TELEOP” waypoint type to PM which just passes them to AM. These waypoints are a higher priority

  3. SM decodes CV waypoints and passes waypoint and with a respective waypoint_type to PM so it can plan the path and send the waypoints (one at a time) to AM.

  4. SM also passes SF data through PM which sends it to AM.

  5. SM takes any returned data from AM (from previous operation cycles) and passes it to Telemetry to be sent to the ground station.

  6. Outside of flight SM shuts down threads and sets motors to 0. It also shuts down everything and sets motors to 0 if it goes into fatal failure mode.

Definition from architecture meeting based on MVP goals here: Nov 25 Architecture Meeting

Why are we sending RC messages through PM to get to AM?

This decision was made at least for the Nov 27th test to keep all messages going to AM during flight from the same source (PM) and of the same format (waypoints).

 

A flag based system has been decided on for MVP: Nov 25 Architecture Meeting

Why are we using Mail Queues?

This is a temporary solution until a better one can be prioritized. This “queue” should only have maximum one message at a time so that a replacement (that is not a queue) can just be dropped in.

 

Aiming to move to LCM when possible (after MVP): Nov 25 Architecture Meeting