Parts List

So I finally have all the major parts assembled, here's the list:

Structural Parts

 

  • Radio shack medium project box
  • T-Rex 600 Tailbooms x4
  • 4 way sch40 PVC junction
  • Landing skids
  • .75" Extruded aluminum 'C' channel (for motor mounts)
  • Various bolts, washers, nuts, glue etc

 

"Drive Train" Parts

 

  • 18A Brushless ESC  x4
  • 18A Hacker Style Brushless Motors x4
  • 5A 11.1 Volt 3Cell LiPo Battery
  • Arduino Mega 2560 "The Brain"

 

Sensors

 

  • 3 Axis Gyro
  • 3 Axis Accelerometer
  • Ultrasonic 'Ping' 3 meter ground distance sensor
  • Barometer (supplement poor GPS height accuracy)

 

Optional or possible parts

 

  • Arduino nano (for dedicated sensor polling and emergency interrupt)
  • Green/Red 1 Watt LEDs for marker lights
  • Bluetooth Module for Serial Communication to cell phone
  • Cell phone (Probably my DROID X)
  • 4 Channel Radio receiver and transmitter.

 

 

And now for some main parts pictures, click for a larger image:

 

Core Parts

Arduino 2560 "The Brain" Speed Controller18 A Motors5A 11.1 Volt BatteryBESC Programming Card10x 4.7 PropT-Rex-600 Tailbooms (arms)

ESC and Motor Bench Test

Ran a bench test today with a spare motor and ESC. I just wrote a quick program to allow direct control of the Arduino 2560's servo output via serial commands and connected my cheapo 18amp ESC from hobby king.  They say a picture is worth 1000 words so at 30 fps this video is worth about 1.9 million: 

I found out that programming the ESC is a real pain without a proper manual, eventually found the proper beep sequences but what a pain! You might also notice the disconcerting rattle from the motor, it's a bearing going out but my mount makes it MUCH louder then it usually is. I'm not concerned with it since this motor is just for control and lipo drain tests and will not be used on the quad itself.

Power Regulator Board

Since I am currently waiting on a number of parts (sensors from sparkfun and motors and ESCs from hobbyking) I decided to get to work designing, printing and etching a power regulator board. It's just a pair of LM317s paired to take in the 11.1 volts from the battery (via the Attopilot voltage and current sensor) and output both 8.3 volts and 3.3 volts. The board features your standard 0.1 uF bypass capacitor on the input line to keep the LM317s happy and a little LED on the 3.3 volt output line to indicate that it's working and provide the minimum load that the regulators require.  I chose 8.3 volts to provide the arduino because it just needs something over 7 volts and I did not want to use just the arduino's onboard voltage reguator to handel the full 11.1 from the battery (heat issues!). The 3.3 volt output will run most of the sensors so I don't have to use dividers on each one. The 3.3 volt line will also serve as the analog reference for the arduino's onboard adc, hence the 15 turn pot so I can get the voltage exactly correct for better accuracy in my adc applications later.

Board DesignHere are the Eagle files for the board: 

     Eagle PCB Project: 8.3 and 3.3 regulated PSU.

Warning: You might have noticed an error in my PCB layout. I discovered it after building the board, luckily it is easy to fix after the fact. Hint: the 15 turn pot resistance seemed to go from low to high to low again while tuning in one direction!

I few more pictures of the board  follow:

 

Breadboard TestPrinted inverse image

Image transfered to copperAfter etchingJust missing the bypass cap3.3 volt test8.3 volt test

Project Introduction

Basic Idea: In stages, create a Quadcopter capable of longrange self-stabilization and navigation as well as close-range fly-by-wire control via a standard 6 channel RC system.

Basic Method: Utilize an arduino mega microcontroller to poll sensors, control the motors, interface with RC radio, cell phone and provide self-stabilizing flight. I intend to use a DROID X cell phone to provide GPS data, secondary accelerometer data (for self-correction and increased accuracy) as well as to provide a 3G cellular link. The cell-phone will run a client program that will interface with a server on another computer (possibly on an android tablet) so that the copter can be given commands from anywhere with an internet connection. The cell-phone will also need to stream live (ish) video from it's camera, possibly using u-stream or a similar service.

Brief List of Foreseeable(lol) Problems: 

  • Strapping an expensive cell phone to a machine intended to fly on it's own is perhaps not a great idea.
  • Copter must support two flight modes (fly-by-wire assisted mode and autonomous mode) and be able to switch between them reliably in mid-flight.
  • This build will have a lot of moving parts (literally and figuratively) and all the parts must communicate efficiently and accurately. I may have to develop some custom communication protocols.
  • I would like to be able to land autonomously, so I will need a very accurate ground sensor (probably ultrasonic) since GPS is no where near accurate enough in the height axis. 
  • Lag in the video and command stream could be significant so the copter will have to get commands as GPS waypoints rater then live motion commands when out of fly-by-wire range. 
  • Deciding which jobs to handel on the Arduino, Phone and server will be crucial, I will probably end up creating a dependency and tolerance graph to help decide this.
  • Fail-safe modes, the arduino and phone will have to have failsafe modes to fall back into if communication between each other and the with the server fails or becomes too degraded. Perhaps landing or returning to the last way point or a pre-designated waypoint depending on the situation.