Turning the Parrot AR.Drone into an autonomous UAV

There are loads of open source quadcopters out there, but they're all a bit too DIY for me--I just want something cheap that works right out of the box. I love the Parrot AR.Drone, which fits that bill, but it's not really a UAV, because you can't give it waypoints and it doesn't know where it is since it doesn't have GPS.

Adding GPS to the AR.Drone would be easy if you could get access to the datastream the AR.Drone is sending back via WiFi, and there is indeed a physical port that could allow that, but Parrot has not enabled that and they don't want to emphasize that possibility for fear that the AR.Drone might get regulated as a UAV, rather than a flying toy.

So rather than wait for them to turn that on, I decided to take matters into my own hands. As you can see above, I just added an ArduPilot, a GPS and an Xbee to the AR.Drone. They're powered by a tap off the balancing connector of the quad's battery, but otherwise they don't have any connection to the onboard electronics.

(Note: you don't really need ArduPilot for this--you could probably connect the GPS right to the Xbee--but I'm using it right now to parse the GPS data and just send down the essentials, along with providing a power regulator for the Xbee and GPS module. But going forward, having ArduPilot onboard will let us add other sensors and do more onboard processing.)

All this setup does is send back GPS coordinates to the ground station, with an Xbee at each end. But that's enough to turn the AR.Drone into a proper UAV, since Parrot has already released software that lets you control the AR.Drone from a PC. So all we need to do is modify that code to take the GPS telemetry in from the Xbee, compare that with given waypoints, and calculate a directional vector for the AR.Drone to fly to hit the next waypoint. Then that XYZ command can be sent back to the AR.Drone via WiFi using the Parrot data standard.

So in a sense, the AR.Drone handles the inner loop (stabilization) of an autopilot onboard, but the outer loop (navigation) we'll do from the ground station, along with image processing and other mission planning. Because the outer loop only needs to run at GPS speed (1Hz-4Hz), wireless latency isn't an issue.

Right now, the only official AR.Drone PC ground station is for Linux (here), which is a bit over my head. But now that the quads are getting out to developers, I'm sure someone will port that to Windows, at which point I can have a go at writing the software to read the incoming Xbee data from the serial port and turn it into flying commands to send back via WiFi.

Stay tuned....

Views: 65128

Comment by Thomas J Coyle III on April 4, 2010 at 3:55pm

An impressive hack! Your thinking is sort of the way that Robot Basic works. The PC, with Robot Basic installed, communicates bidirectionally with the drone (robot/rover) which has all of the sensors and motor drive hardware to allow Robot Basic to provide remote control from afar.

Keep up the good work Chris. American ingenuity at its best! Most impressive!


Comment by Gary Mortimer on April 4, 2010 at 11:30pm
When do they plan to sell them Chris??
Comment by Steve K on April 5, 2010 at 6:56am
must have .... :-) how to order ??

3D Robotics
Comment by Chris Anderson on April 5, 2010 at 7:23am
Right now the devkits are available, but they're $1,200. They haven't announced pricing or a release date for the consumer version yet, other than "2010"
Comment by Rhine on July 29, 2010 at 1:54pm
Hi Chris,
well am going to get the Drone when it come up in Step 2010 i was wondering do u have any video of the gps on the drone yet on youtube? And also i wanted to see how high can it go in feet? and also can it caryer a small ipod nano that has a camera on it for recording? i wanted to try to make this more for UAV flying ,how much was it for the gps n xbee? is there anyway to make it fly to 100 feet or higher??and also do u think there anyway to change the motors for bigger motor so maybe it can handle 700g on it like a small camera for taken pics or maybe do fpv with this drone? am going to be watching this to see what u can do with the drone i hope i give u some things to try out on this drone...

Comment by Gary Mortimer on July 29, 2010 at 2:03pm
You'll be better off with an Arducopter, the Parrot was never meant for such expansion.

3D Robotics
Comment by Chris Anderson on July 29, 2010 at 2:05pm
It can't really go above about 20 ft (it needs to see the ground to maintain position). Maybe it could carry a nano, but not much more. No way to change out the motors/props for anything bigger--the IMU is a black box and optimized for those motors.

If you want to make a capable quad UAV, it's much better to start with a truly open platform. The Parrot is just a little bit open (just outer loop) and is more trouble to mod than it's worth right now, at least until they decide to open up the wifi stream.
Comment by Rhine on August 19, 2010 at 2:10pm
Hi Chris,
i was wondering anything new on your Ar Drone because am going to older one, one i sale my fpv gear then i will use the money to get the drone i wanted to see if u where on youtube if so can u make a video of your drone with the gps on it n show if u got it working yet or anything else your trying to do to the drone well let me know n try to make some video on youtube on your drone keep up with the good work chris.

Comment by Gary Mortimer on August 19, 2010 at 2:27pm
Rhine get yourself and Arducopter or Gaui or any of the others out there, this is not the platform for big mods.
Comment by Patrice Mainville on August 19, 2010 at 5:42pm
Just got mine, Just wondering if you have tough of a spare battery, something less expensive than the proprietary one? The power plug... is is proprietary or something that we can by and solder on other battery?


You need to be a member of DIY Drones to add comments!

Join DIY Drones

© 2019   Created by Chris Anderson.   Powered by

Badges  |  Report an Issue  |  Terms of Service