Someone reached out to me a few weeks ago to 'give a talk on drones.' I talked briefly about MEMS, ring-laser-gyros, and touched on social issues and how you can short circuit the conversation when you can own the tech and do it yourself.
Hiking Sweeney Ridge on Thanksgiving morning was a perfect time for testing out my newly completed quadcopter.
This spot in the mountains, 1200 feet over SFO and the Pacific ocean, seemed like a perfect place to test out my newly completed quadcopter and my newly acquired piloting skills. I've been spending hours and hours flying collective pitch helis in a simulator using a PPM-to-USB joystick adapter I built – trying to get past the heading-aligned flying I've done for years now. It's also the first outdoor flight of my new custom quadcopter and my first time with the KK2.0 flight controller too.
The frame is all carbon fiber: about 1.5 meters of 6mm square tube and two 60x60mm 0.5mm sheets epoxied together. The motors are mounted directly to the motors using zip ties (with hot-glue holding them from sliding off).
The battery mounts via velcro underneath (with an extra strap just to be safe). I built a modular camera attachment with some spare plastic pieces I had lying around from some cheap ikea curtain mounts. That's right.
Built / Design process
I picked out these motors for their weight/size/power and figured I could work around their idiotic peculiar design. I sketched out the design, computer modeled the specific dimensions I wanted, then measured everything out to a piece of cardboard (an insert from a new pack of t-shirts). Using foam tape to hold the carbon beams in place I used plastic weld epoxy to sandwich the plates on the top then the bottom.
I'm running with my 3 year old 10A plush ESCs that I reflashed to run tgy firmware. I built a friction-contact programmer out of some wire, a clamp, hot glue, and a servo horn. I wouldn't actually recommend doing this anymore, hobbyking sells these now (480Hz update rate out of the box) although I haven't tried them.
Using an Phillips NXP LPC20148 ARM7 processor, a Nintendo Wii motion+, and some xbees I've made a really stable platform for quads. (mode details here) It is running FreeRTOS which makes it very expandable in the future. My old frame flew great with it, but I wanted something smaller. Enter my new carbon fiber mini-quad:
Here's the plug-and-play LPC flight controller. The motion+ is inside and wrapped in foam. The XBee plugs in to its' socket on the top. The ESCs plug in back.
Here's the remote. I can easily adjust the PID gains, and it sends them to the flight computer before taking off (there's no eeprom on the LPC). You should see the difference 0.05 on the pitch and roll I term makes in stability.
Not bad for an computer engineering undergrad in their spare time, with no class credit, and on the budget I get as a photojournalist for our paper, eh? This is remote v1.5, and remote v3.0 is in the works. Here's a sketch I drew a couple of weeks ago.
Everything's open source! I hate seeing people's cool project, wondering how it works, then getting the promise of OSS sometime in the future. I want to see how asap. Well here's how I did it: The remote code. The copter code.
Here's the demo of my gamecube remote controlling my quad. Newly implemented is the ability to adjust the PID.P value on the field using just the remote.
This method can be implemented with the analog remotes most people use. I've got another remote that uses only analog sticks to drive a menu system. Something similar could be done for the main AeroQuad project if anyone is interested.
The idea was that I wanted a durable, reliable, ergonomic, economical, and digital remote to fly my quadcopter. I started at gamestop since I don't own a gamecube. Using with Andrew Brown's code, J.Ward's page as reference, and a logic analyzer I was able to get a gamecube interface working on 8mhz and 16mhz cpus (albeit with pretty messy code).