2024-01-28 ZP Sync

Sys Manager

Attitude Manager

  • M2 AM takes the RC and outputs Motor

  • Anni: how does everything talk to each other in different milestone

  • M2 needs RC input, need to talk to TM, RC got from TM

  • M3, output needs to change to 3-axis angular rate instead of percentage,

  • M3 spit out pid, current position, …

  • Should sensor fusion belong to AM? The sensor fusion output data struct should be defined

Telemetry Manager

  • needs MAVLink message – how should the TM get the data?

  • Don’t not take RC because tm doesn’t process the data

  • M2: Stream GLOBAL_POSITION_INT & ATTITUDE messages to the ground station to be displayed on Mission Planner.

    • TM will manage communication with the ground station via RFD 900 Radio

      • RFD 900 Radio RX: Recieve Mavlink Data from Mission Planner.

      • RFD 900 TX: Send Mavlink data to Mission Planner.

    • TM will decode/encode Mavlink data

      • Encode: Into Mavlink bytes to send out Mission Planner transmitted via RFD 900

      • Decode: To decode raw Mavlink bytes received from Mission Planner received via RFD 900.

    • TM will communicate with other managers via [UNDEFINED COMMUNICATION MEDIUM]: Maybe for TM, this should go in M3?

      • ROS LCM?

      • Byte Streams?

      • MQTT Style?

    • TM will ingest drone state data (lat, lng, velocity, acceleration, etc…) via C++ references

      • Should these references be passed at TM instantiation?

      • Is there a finite list of drone state data TM will be ingesting?

      • Sample rate?

    • TM will have an input/output testing strategy?

  • M3: [UNDEFINED AS OF JAN 28, 2024]

 

Pathing Manager

  • Need to figure out data going in and out – too confused to make progress

  • Doc:Path Management Architecture which documented the data TM is expected to receive

  • Data in is defined in the doc, M6 M7 data in are the same structure

  • M6 data out, should be 3-axis angular stuff, need to define the data structure, should be largely the one required for AM, need to minic the RC output

Driver

 

Data In/Out

am
m2 in

  • rc
    m2 out

  • rc

  • actuator pos
    m3 in

  • rc
    m3 out

  • rc

  • desired set points

  • current pos

  • axis pid values

pm
m6 in

  • see confluence
    m6 out

  • pitch, yaw, roll

  • mimic rc
    m7 in

  • see confluence
    m7 out

  • pitch, yaw, roll

  • mimic rc

tm

sm

  • start other managers in threads
    m2 in

  • rc
    m2 out

  • rc

Â