Versions Compared

Key

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

...

\uD83E\uDD45 Goals

  • What is Attitude Manager?

    • What does it need to do?

      • Accept some form of input (autonomous or human)

      • Control the attitude of the aircraft

      • Control systems that are effective for multiple air frames

      • Run a control system to achieve our desired state in space

      • Output to the control surfaces and motors

      • Awareness of current state, retrieved fro ma separate system

    • What does the current implementation look like?

    • How does it communicate with the rest of the system?

      • Exact inputs and outputs

      • Outputs (there will be multiple for each type of motor, dependent on frame type)

      What does the current implementation look like?
        • Servo motors

          • 50Hz pwm

        • BLDC Motors (ESCs)

          • 50Hz pwm or DSHOT(150, 300)

            • Attitude manager shouldn’t need to choose the protocol

        • Logging

          • Outputs for each motor

          • Desired attitude

          • We expose a method to query the outputs from AM

            • Need to ensure this is what the rest of the team does as well

      • Inputs

        • What flight mode we are in

        • configuration data

          • What motors on what pins & their protocol

          • PID gians input

        • Input channels

          • Assuming only Roll, pitch, yaw, throttle channels for now, as that is all we need for milestones

          • Input as a percentage -100 to 100 (float)

        • AHRS data

  • Review the EFS milestones

    • Identify what attitude manager needs to do for each milestone

      • 2 Attitude manager handles the passthrough of inputs to motors

      • 3 Stick inputs map to angles

        • PID control algorithm to target pitch/roll angles

        • Comms with sensor fusion

        • PID gains input

      • 4 Altitude hold control algorithm

      • 5

    • Break down how we get to each milestone and meet the feature requirements for that milestone

  • Create rough architecture for attitude manager

  • Using the feature requirements scope out tasks and effort estimations (keep them as small and as self-contained as possible

  • Review Development workflow