2024-05-21 Autonomy Airside Architecture Meeting

 Date

May 2, 2024

 Participants

  • @Tong Zhang

  • @Dylan Finlay

 Discussion topics

  • State

    • Workers up to Geolocation integrated and tested

    • Geolocation integrated but not tested yet

    • Cluster estimation not integrated and not tested yet

    • Decision module not tested yet

    • Flight interface only receives input from flight controller

  • Goals

    • Geolocation tested flight tested - major milestone

    • Cluster estimation flight tested - major milestone - perception will be done, can be used for future comps

      • Add class names to ObjectInWorld (low priority)

    • Add output to flight interface

      • Add input queue to flight interface (decision worker’s output queue)

        • Getting from the input queue needs to be in a try catch with a timeout to prevent blocking

        • If there is something in the input queue, call the appropriate command in flight controller

    • Decision worker made

      • Needs to track the visited landing pads

      • Needs to search for landing pads if none are found

  • Architecture

    • Each worker uses queues for input and output to communicate between processes

      • Each queue is an instance of queue_proxy_wrapper

      • Basically a regular queue with multiprocessing locks

    • Each worker waits until there’s something in its input queue

      • When there is, it pops it and processes it

      • Then it puts the output in the output queue and tries to read another item from the input queue

 Action items

@Dylan Finlay to research and understand dronekit to check @Neel Patel 's pr
@Dylan Finlay to write task description for decision worker
New tasks
Add class names to cluster estimation ObjectInWorld object
Test cluster estimation