ArduPilot_24.zip ArduPilot_Easyglider_V246.zip ConfigTool.zip GroundStation_Beta2.zip
ArduPilot is a full-featured autopilot based on the Arduino open-source hardware platform. It uses infrared (thermopile) sensors for stabilization and GPS for navigation.
The hardware is available from Sparkfun for $24.95.
This code requires the free Arduino IDE to edit and upload the code to the Ardupilot board.
ArduPilot 2.x. It is currently optimized for the Multiplex EasyStar three-channel powered glider and EasyGlider four-channel powered glider, but can be configured for other aircraft. It uses the rudder/ailerons and elevator to maintain level flight and navigate to GPS waypoints. It also includes a "fly-by-wire" mode that simply stabilizes RC flight. Also supports the desktop setup utility and ground station (which requires the free LabView runtime engine) listed in the downloads to right (Ground Station). The main code is ArduPilot2.x.zip in the download section at right, where x is the latest version.
The ArduPilot Configuration utility, which allows point-and-click entry of waypoints, is ConfigTool
The Attiny processor on the ArduPilot board serves as an independent failsafe system. Its code (in C, can be compiled/uploaded with AVR Studio), is available as the "failsafe" code in the download section. If you just want to burn the firmware, use the the fail_safe hex file, also in the download section.
The project is a DIY Drones project and its home page, including hardware resources, can be found here.
ArduPilot features
- Built-in hardware failsafe that uses a separate circuit (multiplexer chip and ATTiny processor) to transfer control from the RC system to the autopilot and back again.
- Altitude hold using throttle or elevator and GPS altitude data
- Includes ability to reboot the main processor in mid-flight.
- Multiple 3D waypoints (number only limited by memory; currently can support at least 200)
- Comes with a 6-pin GPS connector for the 1hz EM406 GPS module. Faster 5hz GPS modules, such as the uBlox 5 series, are supported via an optional 3.3v daughterboard.
- Has six spare analog inputs (with ADC on each) and six spare digital input/outputs to add additional sensors
- Supports addition of wireless downlink module for telemetry.
- Based on a 16MhZ Atmega328 processor. Total onboard processing power aprox 24 MIPS.
- Very small: 30mm x 47mm
- Can be powered by either the RC receiver or a separate battery
- Has an efficient ASCII NMEA parser for compatibility with standard GPS modules at any baud speed.
- Hardware-driven servo control (using the Arduino Servo Timer library), which means less processor overhead, tighter response and no jitters.
- Four RC-in channels (plus the autopilot on/off channel) can be processed by the autopilot.
- Status LEDs for power, failsafe (on/off) and GPS (satellite lock).