2021-07-16 Architecture Meeting

MECH

  • CV system is asynchronous - could go as fast as we want

    • would be better to have a slower speed, stabler flight

  • Autonomy level: identify targets on the ground and land appropriately, identify ground targets and move there - pick up and taxi is tele-op

  • Sensors: lidar

  • Cabin space

    • Boards could be in the wings but we want to make them easily interchangeable

  • Easy electrical connections

    • DB9 connectors are good

    • PPM decodor? - same thing as over CAN

  • Fly for 30-40 min

  • Max 3kg airframe

  • Need lots of cabin space for electrical board

FIRMWARE

  • CV

    • LIDAR

      • 1d lidar vs 2d lidar

      • CV will be getting just distance (1d)

      • CV would like to do 2d in the future

      • Binocular camera can be used instead

      • radar/infrared can be used instead as well

      • Lidar has good range   

    • SOC

      • CV wants the nicest one we can afford

      • Either Jetson Nano (~$100) or Jetson TX2 (~$1000)

      • Warg apparently has a Jetson Tx2 unless someone stole it

      • How to protect the precious jetson baby

        • Put it near the back?

        • Maybe buy more than 1

      • No need for CAN as its overkill

      • USB to communicate between autopilot and CV

      • Sahil: Use CAN to communicate between autopilot and motor controllers?

      • Srinjay is going to benchmark the CV system

      • Google coral is debian based full system

      • Lance in favor of jetson, so we’ll likely use a jetson nano

      • Ryan says if all computers are on the plane, itll be hard to debug. 2 raspberry pis, 2 wifi adapters, open.hd, cheaper than lightbridge, less jank

  • FW

    • Keep working on zero pilot, to get it into a working state.

    • Modifications

      • Modify state machines to include jetson data transfers

    • Sensors and peripherals

    • Logging

      • Log data in sd card so that we can see whats going on

      • Data in txt file

    • Flashing and debugging

      • Moving away from stlink and stride

      • Goal is to use OpenOCD via usb port to flash and provide 5v power

      • Goal is to use ftdi chip to do usb debugging and flashing

    • USB vs CAN

      • Leaning towards USB

      • Send data in Pathmanager, before sensor fusion

      • Keep considering using stm32 to do comms

        • If any of the modules fails, comms will fail 

    • Chip requirements

      • Adequate memory

      • Ftdi for flash

        • Use bootloader on the stm instead to remove ftdi requirement if needed

      • Led for debugging

  • Electrical

    • BMS 

      • Will be its own board

      • Provides power to rest of board

    • PDB

      • Distributes power to everything, including jetson

      • Telemetry data going to jetson and flight controller

    • What is the desired carrying capacity? (How heavy can we be?)

      • 10 kg max weight for comp

      • 25 kg max weight for legal reasons

      • Better to have be heavier so that the weight doesn't change when you pick up stuff

      • 0.5-1lb is the load of the stuff we were picking up

      • Put batteries in the wing?

    • What is the desired flight time?

      • 30-40 minutes

      • Max you can fly in comp

    • What is the max range of the aircraft?

    • What is our max altitude?

      •  ~300ft aka 91m

    • What thrust do we want? How fast should we be able to go?

      • Mech assuming 11-15 m/s when doing calculations

    • SOC stuff 

      • Offline, to be discussed with FW

    • Can multiple boards be combined into one pcb

      • Its about divvying up the work

      • Best practice is to split up the modules

      • 2 extra boards compared to spike

      • Tradeoff with modularity is that it means plugging more shit in

      • Right now we arent modular at all, so changing anything means remaking zeropilot