Circuits designs and builds both the vehicle's electrical hardware and various other electrical hardware, such as electronics for testing motors and materials. The vehicle's printed circuit board (PCB) has to provide a platform for the control software to run and communicate with the navigation software, as well as manage the safety of the battery, motors, and operators. We design with Eagle and use Subversion for collaboration.
Our UAV requires an accurate, high-speed control algorithm to achieve stable flight and maintain safety for operators. The controls subteam designs, implements, and tests our control software. This software takes instructions from the navigation software and moves the vehicle accordingly. If there is no navigation software running, the control software maintains a steady state. Our control software is written in C and runs on a microcontroller. We use Git for source code version control.
The IARC is first and foremost an autonomy challenge; the members of the Navigation subteam write software that makes the vehicle truly autonomous. We write computer vision code, path planning code, and the high level decision making code that decides which objective of the competition to work on next while the vehicle is flying. Navigation also researches dedicated hardware solutions to various image processing and navigation tasks. We write code using C++, use Git for version control, and use the Jenkins continuous integration server.
Structures is responsible for the design and fabrication of MAAV's airframes. We make as many of our structural components as we can in-house in order to heavily optimize for the IARC. We use a mixture of aluminum and wax molds for the carbon fiber parts of the airframe, milled plastic for the heavy duty core, and 3D printing for the accessories to create a strong, light airframe that can withstand intense aerial maneuvers and crashes. We use CATIA for design and simulation and Subversion for collaboration.