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.
And here's the impressive work of the AeroQuad team:
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:
Here's the announcement from the AeroQuad team:
ArduCopter - The Full Featured UAV Multicopter!
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 ListSoftware Roadmap
- 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
- 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)
Comments
it should work ;)
I have moved the Libraries to /Application/Arduino.app/Resources/Java/libraries
I am getting the following errors from the Arduino Software on my Macintosh::
Applications/Arduino.app/Contents/Resources/Java/libraries/APM_ADC/APM_ADC.cpp: In function 'unsigned char ADC_SPI_transfer(unsigned char)':
/Applications/Arduino.app/Contents/Resources/Java/libraries/APM_ADC/APM_ADC.cpp:51: error: 'UCSR2A' was not declared in this scope
/Applications/Arduino.app/Contents/Resources/Java/libraries/APM_ADC/APM_ADC.cpp:51: error: 'UDRE2' was not declared in this scope
/Applications/Arduino.app/Contents/Resources/Java/libraries/APM_ADC/APM_ADC.cpp:53: error: 'UDR2' was not declared in this scope
/Applications/Arduino.app/Contents/Resources/Java/libraries/APM_ADC/APM_ADC.cpp:55: error: 'UCSR2A' was not declared in this scope
/Applications/Arduino.app/Contents/Resources/Java/libraries/APM_ADC/APM_ADC.cpp:55: error: 'RXC2' was not declared in this scope
/Applications/Arduino.app/Contents/Resources/Java/libraries/APM_ADC/APM_ADC.cpp: In member function 'void APM_ADC_Class::Init()':
/Applications/Arduino.app/Contents/Resources/Java/libraries/APM_ADC/APM_ADC.cpp:97: error: 'UBRR2' was not declared in this scope
/Applications/Arduino.app/Contents/Resources/Java/libraries/APM_ADC/APM_ADC.cpp:98: error: 'DDRH' was not declared in this scope
/Applications/Arduino.app/Contents/Resources/Java/libraries/APM_ADC/APM_ADC.cpp:98: error: 'PH2' was not declared in this scope
/Applications/Arduino.app/Contents/Resources/Java/libraries/APM_ADC/APM_ADC.cpp:100: error: 'UCSR2C' was not declared in this scope
/Applications/Arduino.app/Contents/Resources/Java/libraries/APM_ADC/APM_ADC.cpp:100: error: 'UMSEL21' was not declared in this scope
/Applications/Arduino.app/Contents/Resources/Java/libraries/APM_ADC/APM_ADC.cpp:100: error: 'UMSEL20' was not declared in this scope
/Applications/Arduino.app/Contents/Resources/Java/libraries/APM_ADC/APM_ADC.cpp:102: error: 'UCSR2B' was not declared in this scope
/Applications/Arduino.app/Contents/Resources/Java/libraries/APM_ADC/APM_ADC.cpp:102: error: 'RXEN2' was not declared in this scope
/Applications/Arduino.app/Contents/Resources/Java/libraries/APM_ADC/APM_ADC.cpp:102: error: 'TXEN2' was not declared in this scope
it is a differnet structure, which should work better
How does it differ from the Arducopter...??
so that even in windy situations the copter is fully under controll and just flies as you want
this technic is from microdrones, but i don't remember the name
it shouldn't be too hard to implement (i think i could do that^^)
In future we might even stop calling them as stable/acro etc modes.. Anyways our plan is to have fully functional UAV.
Max, don't worry just wait till you get your stuff and then you can go airborne.
It is open source. Do what you like! :)
Personally, I wouldn't be cranking on the sticks in stable mode. If I were, I would appreciate the quad realizing that I want acro mode. Upon returning to moderate control inputs, the quad should resume stable control.
The idea of the Stable mode was to prevent any unwonted moves even if the stick input is not so accurate ...
Can it be stable only ???
p.s Dont have my motors and props yet :(((( but trying to follow the development :)