top of page

I decided to build a quadcopter after seeing one that had been assembled from a high end kit using ArduPilot.  After doing some research on the available kits out there and what they consisted of, I chose to design my own.  I viewed this as both a good experience to apply some of the theory I have learned, as well as a cost effective approach to building a high performance quadcopter.

 

The Arduino environment was chosen for its ease of programming and the large support community and wide range of libraries that have already been developed.  The on-board controller that receives commands from the handheld controller, and runs the auto stabilization routines to keep the quadcopter in the air is built on an Arduino Due.  The handheld controller uses the ATMEGA328p microcontroller that is found in the Arduino Uno to measure the joystick and switch positions, send that information to the on-board controller, and display any telemetry data that is received from the quadcopter.

 

Two 2.4GHz XBee radios are used to create a wireless serial link between the handheld controller and the quadcopter's on-board controller.  This allows the exchange of data digitally between the two.  The joystick position values, as well as digital switch positions, are encoded to ensure that when they are received, the quadcopter's on-board controller can determine what each value corresponds to.  The on-board controller decodes these values to prepare them for processing by the control algorithm.  This helps keep communicaiton stable in the event of packet loss at long range.

 

In order to sense the orientation of the quadcopter, a CH Robotics UM6-LT is used.  This is a nine degree of freedom attitude and heading reference system (AHRS) that uses a serial periferal interface (SPI) for communication with the Arduino.  The UM6-LT can output the orientation of the quadcopter in quaternions or Euler angles, however quaternions will be used because this method does not suffer from gimble lock.  The quadcopter also has a GPS module that is accurate to one meter and has a 20Hz update rate, making it ideal for this application.

 

The control algorithm is still being developed, and the quadcopter will hopefully be flying soon.

QUADROTOR. DEVELOPED FROM THE GROUND UP.

 

bottom of page