Versions Compared

Key

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

...

  1. Getting Instructions (from State System Manager)

  2. Running Controls Algorithms

  3. Output Mixing

...

These are still under development, we aren’t super sure how we want to store the configuration of the drone, but the controls interfaces will be aware of how that particular model of flight control works, as well as have configurable PID’s that are loaded on runtime (not compile time), so you could theoretically plug in a different SD Card with different configurations loaded and fly different planes. I would check the code to see what is the most up to date in this area.

...

When Attitude Manager receives a waypoint with the FATAL_FAILURE waypoint type it should bring all the motor throttles to 0 and send an ack message to System Manager. Then System Manager will stop the AM and PM threads.

^^ Suggestion from Gordon Fountain (Deactivated) (Not yet AM team approved)

3. Output Mixing

The last stage of AM is output mixing, where the return values (which are channel : percentage pairs) from Controls are mixed. This is handled by a tiny bit of logic and only applies to VTOL aircraft, and briefly during a transition from one stage of flight to the next. Depending on airspeed, AM might initiate the following procedure to transition from quad to fixed wing (the reverse is true from fixed wing to quad).

...

This does mean that two controls algorithms may have to run simultaneously, but only for brief moments in time.

Runtime & Over-The-Air (OTA) configuration

PID default values will be runtime configurable (loaded in from an SD card). State mixes, etc, should be statically typed in memory.

PID Values may be updated OTA, and new values can be logged to another text file (with messages) should you wish to reconfigure the drone later. This will largely be handled by system manager.