This project aims at designing the flight computer for a small scale quad-copter. I would like to look into using cameras for obstacle detection to allow for autonomous avoidance and possibly mapping.

Some general goals of the project:

  • Learn how to use STM32 microprocessors
  • Learn how to fly a quad-copter
  • Learn how to design control systems for fly-by-wire and eventually autonomous control
  • Learn how to design PCBs that use FPGAs
  • Learn how to process camera data, particularly to combine data from multiple cameras for depth measurements
  • Make some cool renders in blender along the way

These goals are quite general, but it comes down to a number of steps:

  • Design a flight computer and build a quad-copter capable of being controlled via fly-by-wire
  • Design a camera board with an FPGA and connectors commonly used camera modules
  • Design a Dedicated dual camera obstacle detection sensor board
  • Build the final quadcopter making use of the flight computer (possibly requiring an updated version) and multiple obstacle detection boards facing in each direction

There are a number of extra steps that are probably going to be required. Firstly, that I should learn to fly a small quad-copter (probably one of the FPV ones). There may also need to be several iterations of the electronics, so I'll just have to see how it goes.

Current status:

ComponentDesign Status
Build Status
Testing StatusNotes
Flight computer
v1.0 Completed
v1.0 In progressv1.0 not started3V3 shorted to ground
Air frame
v1.0 Completedv1.0 In progressv1.0 not started
Fly-by-wire flight software
v1.0 not startedv1.0 not startedv1.0 not started