Paparazzi vs X

From PaparazziUAV
Revision as of 12:19, 15 August 2012 by Esden (talk | contribs)
Jump to navigation Jump to search

This page aims to provide honest comparisons between paparazzi and other open source autopilot systems.

These comparisons can then be used for improving paparazzi, where there is something another platform does which is 'better'.

Paparazzi (fixed-wing) vs ArduPlane

First contact

The arduplane web presence is somewhat disjointed. The 'official' home page (and first google result) is hosted on a subdomain of DIYDrones, but is basically a sales pitch.

The call to action redirects to a google code wiki, which is the real home of arduplane. The sidebar of the wiki contains the following:

ArduPlane Instruction
This is ArduPlane wiki, which includes all assembly and use instructions. Use the sidebar menu below to navigate.

Note: If you're looking for the ArduCopter manual, you can find it here.

Introduction
Get it!
Project news
Project history
Instructions:
Quick Start Guide
Setup
Flying
Simulation
Optional additions
Troubleshooting
Appendix
The DIY Drones Dev Team
Glossary

The documentation seems to be much more centrally administered than paparazzi. The level of the documentation is definitely aimed at the beginner. The 'quickstart' guide presents two photos of the two main pieces of arduplane hardware (APM & APM2). The guide links to the following steps (each is a wiki page).

Install the Mission Planner software and APM firmware
Connect your RC equipment
Set up your configuration
Check it out in the air
Plan a mission

Ground Station

The ArduPlane 'Mission Planner' is an open source Microsoft .NET application. It handles flight monitoring, firmware loading & configuration, log file replays and video display. It is approximately a 15MB download, and also runs happily under mono on linux (other than video playback). 32 and 64 bit installers are provided, along with a zip with the executables. Source code is provided via google code SVN.

The 'Flight Data' tab shows current aircraft location on google maps on the right, along with a PFD and altitude, speed and battery data on a HUD on the left.

The 'Flight Planner' tab provides support for loading waypoints into the aircraft. There are also grid survey and basic photogrammetry options.

The 'Configuration' tab is where autopilot settings are configured.

'Simulation' provides software in the loop functions for X-Plane, Flightgear, JSB-Sim and AeroSimRC.

'Firmware' provides a window where we select the type of firmware to load onto the autopilot (fixed wing, quadrotor, hexrotor, okto, heli etc). The software downloads the latest firmware, compiles it and uploads it to the autopilot.

'Terminal' provides a terminal (obviously) connected to the com port of the autopilot. In normal operation, it's full of garbage characters from mavlink.

At the top right hand of the application are two spinner buttons for serial port and baud rate, along with a connect button.

Hardware

Arduplane hardware is highly homogenised - only the current AP board generation and previous board are supported. Almost all AP boards are manufactured & sold by 3DR, who also lead development of arduplane. Obtaining prebuilt hardware is much easier than paparazzi - there are multiple distributors in most countries, plus the official 3DR store ships worldwide. All board use full size servo headers, and also include RC input headers & a PPM encoder (PPM input is supported, but as an 'advanced' option). All boards include an IMU. All boards connect to the host PC via USB, and use the arduino C++ preprocessor and uploader under the covers. Hardware is tied to what the arduino ecosystem supports and therefore processors tend to be underpowered compared to virtually all competitors.

Airbourne Software

Building the airside software requires the arduino IDE (which is cross-platform and open source). Most users of arduplane however are not expected to modify anything beyond the settings provided in the Mission Planner. The arduino environment is simpler for beginners to grasp than the embedded C of paparazzi. However, the current arduplane code is not particularly easy to read or modify due to the way it is written (may be due to the space constraints of the platform). Telemetry is via Mavlink, which is compatible with QGroundControl.

Extensibility is extremely limited compared to paparazzi - only peripherals sold by 3DR are supported (ultrasound, optical flow sensor etc). There is nothing compared to the paparazzi module ecosystem. This may be a function of the cathedral type development.