I'm pleased to announce that we've joined forces with the other Arduino-based powerhouse in the aerial robotics world, the AeroQuad quadcopter team, to extend the ArduPilot platform to whirlybirds of all kinds. The project, called ArduCopter, will use the ArduPilotMega and IMU shield hardware along with a low-cost custom platform that will be available commercially to provide a full quad UAV with both stabilization and GPS waypoint navigation. It builds on the awesome work of Jose Julio in ArduPilot quad development, with the excellent full-systems integration of the AeroQuad team. We expect that first code and hardware will be available this summer.
Another team is also extending this to traditional helis, starting with the Trex 450 heli (and its equivalents), which should be ready for release this fall. Along with Blimpduino, this should make for 100% coverage of all aerial robotics platforms on the Arduino platform, with shared libraries and ground stations across projects. Go Arduino!
We'll be setting up a proper microsite here, along with dedicated tab, for the project in the next few days.
If you haven't already seen this preview of what the ArduPilot/ArduIMU combo can do with quads, check this out:
And here's the impressive work of the AeroQuad team:
Hey guys, as many of you know the AeroQuad has teamed up with DIY Drones on developing a very full featured multicopter! Chris from DIY Drones has proposed the name of this new effort to be called the ArduCopter! It will be based on the ArduPilot Pro Mega (APM) and the APM sensor board currently nicknamed the Oil Pan. Here's an initial feature list and software road map. Please chime in! Your input is valuable! I'll keep updating this front page until we agree on the first version of the ArduCopter's capabilities.
ArduCopter Feature List
6 Degree of Freedom IMU stabilized control
Gyro stabilized flight mode enabling acrobatics (loops and barrel rolls)
GPS for position hold
Magnetometer for heading determination
Barometer for altitude hold
IR sensor integration for obstacle avoidance
Sonar sensor for automated takeoff and landing capability
Automated waypoint navigation
Motor control using low cost standard PWM Electronics Speed Controllers (ESC's)
On board flight telemetery data storage
Mounted camera stabilization capability
Wireless command & telemetry for long distance communication
Capability to fly in "+", "x", hexa and octo configurations
Battery level detection
User configurable LED flight pattern
Capability to use any R/C receiver
ArduCopter Configuration and Ground Control Software
Realtime graphs of flight data
GUI for configuration of PID and other flight parameters
On Screen Display integration
Waypoint programming using Google Maps
Mixertable view to auto configure "+", "x", hexa and octo configurations
Software Roadmap
Initial baseline using Jose Julio's v3 software
Provides absolute angle PID flight control
Obstacle avoidance
Waypoint navigation
Generalize basic ArduCopter functions (ie. Separate PPM receiver input and motor control functions into separate libraries. Allows future coding of PWM vs. I2C ESC's)
Emphasis on developing new capability into easy to use C++ libraries
Integrate user defined EEPROM storage capability
Develop/optimize AeroQuad serial real-time command/telemetry for ArduCopter
Integrate AeroQuad Configurator for external software configuration of ArduCopter
Rename Configurator to Ground Control Station and integrate graphical programming of waypoint navigation
Integrate AeroQuad rate PID control
Integrate mixertable configuration for multicopter configurations
Integrate AeroQuad camera stabilization
Integrate I2C motor control
Develop capability to wirelessly control ArduCopter directly from Ground Control Station (USB joystick controller from laptop or through waypoint programming)
do you use the configurator tool?
i were not able to put floating values as PID values, only numbers like 1, 2, 3 and so on
is that an issue of mine, or is it the program?
Comment by Taylor Cox on August 12, 2010 at 12:50pm
When the full kits are available...will we be able to choose between the larger and smaller armed arducopter frames?
Hmm yes i use configurator. I think that , . problem was fixed on it already but I will let people know who made it. Due fine tunes goes in steps like +- 0.05 or +- 0.1
You can also use serial monitor to send those values. As in ascii string if nothing else.
Taylor, we have not yet decided that how it will be done due it's a bigger logistical issue. Maybe it will be come as smaller and then you can get longer arms to it. This way you always have a another set of arms available if you happen to have bad crash or so... future will tell us.
Comment by Alberto Casu on August 12, 2010 at 3:21pm
Hello Guys, I am new to all this UAV world, and I am still trying to get all the information to start.
One thing I do not understand about the community tools for the Arducopter project. Why are we all typing comments to this Chris's blog post, instead of opening a discussion forum as it was done for the Aeroquad for instance?
(http://www.diydrones.com/forum/categories/aeroquad-1/listForCategory)
I think it would be easier to find and share information (avoiding also to retype the same questions).
In my case, I still haven't understood what is the roadmap for this project and how someone like me can start from scratch (even though it is pretty clear this version is till in a testing phase)
I still can't wait :-)
Comment by Richard Hirst on August 12, 2010 at 7:45pm
Hi Jani, looks like I damaged the Mux. shorted out the in/out for ch2 and works ok. Will order a new IC later.
Does anyone have any code to read the ADIS16355 Acc/Gyr from Analog Devices.. I just happen to have one.
If you get a minute, are you using the analog accessory pins for your LEDs? I can't seem to place these (I haven't looked at the datasheet yet):
#define FR_LED 3 // Mega PE4 pin
#define RE_LED 2 // Mega PE5 pin
#define RI_LED 7 // Mega PH4 pin
#define LE_LED 8 // Mega PH5 pin
Alberto, reason why we are not using AeroQuad categories is that this is ArduCopter project. Ted run's his AeroQuad as separate project and it is done by him self. ArduCopter then again is DIY Drones project. And Chris is one of the main man's behind DIY Drones so it's rather natural that ArduCopter posts are under his main postings.
We are working to create better website for ArduCopter and ArduPilot but due we have a lot other tasks running parallel, it will take a bit untill everything is ready.
@John yes i did use those due we have been having national holidays here and did not go to office. All my pin headers are at office but I had a lot servo extension cables so it was easy to connect them to OUT4-7 ports on APM. In future they might/will change but that is still just an I/O port. PE4 is OUT7, PE5 = OUT6 and so on. Also there are 1kOhm resistors installed on those ports so I only had to connect LEDs. But in close future we will need those ports for example to sonar and others.
@Richard, yep shorting pin fixes it but next time you burn your MCU so be careful, hehe you are not only one who made that "n000b" mistake.. In future releases there will be another type of protection for the pins. (me and Jose burned them even on same day... doh ArduN00bs ;) )
Thanks for that Jani. By the way, no more potato fields today. We saw great success after my initial plunder. I'm currently working on getting a visual indication of what mode we're in using your latest rev..
Anyone else trying r75? I can't get motors to arm... Previous rev. works like a charm :)
Season Two of theTrust Time Trial (T3) Contest has now begun. The fourth round is an accuracy round for multicopters, which requires contestants to fly a cube. The deadline is April 14th.