Difference between revisions of "Overview"

From PaparazziUAV
Jump to navigation Jump to search
Line 4: Line 4:
== System Architecture ==
== System Architecture ==


The following figure show the main agents of the system: one (or several) aircraft and the distributed ground architecture (usually distributed on a single computer):
The following figure shows the main agents of the system: one (or several) aircraft and the distributed ground architecture (usually distributed on a single computer):


[[Image:Pprz_communication_agents.gif]]
[[Image:Pprz_communication_agents.gif]]


The UAV (in blue) is navigating autonomously and is monitored and controlled from the ground (in brown). The [[#Ground_Control_Station_(GCS)|ground control station (GCS)]] provides a graphical user interface with telemetry data received by the ''link agent'' which manages the ground-based radio modem. The ''link agent'' distributes telemetry data across the network (a single computer, a local network or the internet) where it can be used locally or remotely by
The UAV (in blue) is navigating autonomously and is monitored and controlled from the ground (in brown). The [[GCS|ground control station (GCS)]] provides a graphical user interface with telemetry data received by the ''link agent'' which manages the ground-based radio modem. The ''link agent'' distributes telemetry data across the network (a single computer, a local network or the internet) where it can be used locally or remotely by the:
* '''messsage''', a basic optional debugging tool
* '''messages''' - a real-time display of all telemetry data
* '''server''' which logs these messages in a local file and preprocesses them for the GCS.
* '''server''' - an agent that logs, distributes, and preprocesses these messages for the GCS.
All of these processes run simultaneously and are easily started thru the ''control panel''.  
All of these processes run simultaneously and each module is independently controled and configured from [[Paparazzi_Center]].  


Your first experiments with the system should be with the simulator where everything runs on your local machine. The configuration is then slightly different:
Your first experiments with the system should be with the simulator where everything runs on your local machine. The configuration is then slightly different:
Line 17: Line 17:
[[Image:comm_sitl.gif]]
[[Image:comm_sitl.gif]]


Here the aircarft and its radio link are replaced by the simulator. The optional ''gaia'' agent is there to set some parameters about the environment: the wind, the infrared constrast, the GPS coverage and the time scale reference.
Here the aircarft and its radio link are replaced by the simulator. An optional ''gaia'' agent is also available to introduce some environmental parameters such as wind, infrared constrast, GPS quality, and time scale reference.




Line 38: Line 38:
=== The Airframe ===
=== The Airframe ===


The Paparazzi airborne system is highly configurable and can be used to fly autonomously almost any airframe. It has already been used for airframes ranging from 30cm to 1.4m, 1.4kg. In the early days of the project, only easy to fly airframes of the shelf were favoured. Today, the Paparazzi autopilot flies at least half a dozen  of more or less customized aircraft.
The Paparazzi airborne system is highly configurable and can be used to autonomously operate almost any airframe. It is currently in use on airframes ranging from 30cm to 1.4m, and 180g to several kg. In the early days of the project, slow and stable airframes such as the venerable Twinstar and Microjet were favored, but today the system is employed in a wide variety of high performance aircraft, many with little or no natural stability, and many designed specifically around the Paparazzi system.


The choice of the right airframe is constrained by many parameters (size, payload weight, easiness to build or to launch, cost, ...) but not by the autopilot itself.
The [[Gallery|User's Gallery]] shows some of the many Paparazzi aircraft.


=== Airborne Electronics ===
=== Airborne Electronics ===
Line 47: Line 47:


[[image:tiny_proto1_top_small.jpg|frame|Tiny Controller Board]]
[[image:tiny_proto1_top_small.jpg|frame|Tiny Controller Board]]
Several controller boards have been designed to run the Paparazzi autopilot software, using either Atmel AVR or Philips ARM7 LPC micro-controllers. These boards include one or two micro-controllers and the required connectors to handle the
Several controller boards have been designed to run the Paparazzi autopilot software, using either Atmel AVR or Philips ARM7 LPC micro-controllers. These boards include one or two micro-controllers and the required connectors to handle the servos, motor controllers, sensors, RC receiver, radio modem, and a variety of payloads.  All of the [http://cvs.savannah.nongnu.org/viewcvs/paparazzi3/hw/?root=paparazzi schematics and PCB files] are available under the GPL licence.  
servos, motor controllers, sensors, RC receiver, radio modem, and a variety of payloads.  All the schematics and PCBs files are [http://cvs.savannah.nongnu.org/viewcvs/paparazzi3/hw/?root=paparazzi available] under the GPL licence. [http://onefastdaddy.com OneFastDaddy.com]currently offers a variety of assembled controller boards, and coming soon, PCB kits and all components.
<br>
 
More details on the controller boards are available on the [[Hardware|Hardware Pages]].
More details on the controller boards are available on the [[Hardware|Hardware Pages]].
<br style="clear:both;"/>
<br style="clear:both;"/>
Line 55: Line 54:
===== Sensors =====
===== Sensors =====


[[image:ir_sensor_bot_small.jpg|frame|2 Axis IR Sensors Board]]
[[image:ir_sensor_bot_small.jpg|frame|2 Axis IR Sensor Board]]
Airborne hardware includes sensors like infrared, GPS & Gyroscope.
Paparazzi autopilots can interface with virtually any type of sensor but the vast majority of applications rely on a set of 6 orthogonal infrared temperature sensors to estimate the orientation of the aircraft relative to the warm earth and cold sky.  The IR system provides a robust and absolute attitude estimate that is immune to vibration and disorienting launches, wind gusts, or stalls that may confuse inertial-based autopilots.  Paparazzi also uses conventional inertial systems on hovering aircraft such as quadrotors and helicopters with freely available [http://cvs.savannah.gnu.org/viewvc/paparazzi/paparazzi3/ software and hardware sources].  <br><br> Fixed wing airborne hardware typically includes infrared sensors, GPS & occasionally a gyroscope for roll or pitch rate damping on more agile aircraft.
A standard GPS receiver (from u-blox) is used, packages as a module or soldered on the board itself and Gyroscope and infrared sensors boards are easy to assemble.
A standard GPS receiver from u-blox is used, either as a stand-alone unit for the [[Classix]] or [[Twog_v1|TWOG]] autopilots, or as a fully integrated package in the [[Tiny_v2|Tiny]] autopilot.


More details on the sensors are available on the [[Hardware|Hardware Pages]].
More details on the sensors are available on the [[Sensors|Sensors page]].
<br style="clear:both;"/>
<br style="clear:both;"/>
===== Communications =====
===== Communications =====
Line 67: Line 66:
Any wireless device providing a serial link can be used for the telemetry and the telecontrol (Datalink).  
Any wireless device providing a serial link can be used for the telemetry and the telecontrol (Datalink).  


More details on communications hardware are available on the [[Hardware|Hardware Pages]].
More details on communications hardware are available on the [[Modems|Modems page]].
<br style="clear:both;"/>
<br style="clear:both;"/>
=== Airborne Software ===
=== Airborne Software ===
Line 102: Line 101:
=== Datalink ===
=== Datalink ===


Paparazzi offers several possibilities to supervise the UAV flight from the ground. The default one uses a bidirectionnal wireless modem which supports both telemetry (downlink) and telecontrol (uplink). Thanks to this datalink, flight parameters are available in real time and full control of the navigation of one or several aircraft is possible on the ground station.
Paparazzi offers several possibilities to supervise the UAV flight from the ground. The default one uses a bidirectionnal wireless modem which supports both telemetry (downlink) and telecontrol (uplink). Thanks to this datalink, flight parameters are available in real time and full control of the navigation and tuning of one or several aircraft is possible from the ground station.


=== Safety Link ===
=== Safety Link ===
Line 110: Line 109:
== Payloads ==
== Payloads ==


Paparazzi has not been designed with a specific payload in mind. However the airborne control board offers several connectors to control extra servos (to point a [:Overview/PayloadUseCases#camera: video camera]), to connect digital devices (e.g. to switch on lights (for night flights) or trigger a digital camera) or to exploit a sensor with an ADC or a serial link. The associated required sofware can be easyly integrated in the autopilot open Paparazzi code. The Classix Paparazzi control board model can also be connected to a [:Overview/PayloadUseCases#gumstix: generic application board].
Paparazzi is designed to interface with a wide variety of payloads. The airborne board can control many servos for autonomous and/or manual [[Pan_Tilt_Camera|Pan/Tilt camera systems]] or other mechanical payloads, SPI, I<sup>2</sup>C, and GPIO connections are available to connect digital devices (i.e. lights or digital camera shutter), and analog inputs are available to interface with just about any sensor imaginable. The associated software is easily integrated into the open-source code. The [[Classix]] board can also be connected to a [http://www.gumstix.com Gumstix Computer] for highly sophisticated payload software applications.


== Disclaimers ==
== Disclaimers ==

Revision as of 23:02, 7 September 2008

Paparazzi System Overview

Paparazzi is a complete system of hardware and software for autonomous aircraft as well as complete ground station mission planning and monitoring software utilizing a bi-directional datalink for telemetry and control.

System Architecture

The following figure shows the main agents of the system: one (or several) aircraft and the distributed ground architecture (usually distributed on a single computer):

Pprz communication agents.gif

The UAV (in blue) is navigating autonomously and is monitored and controlled from the ground (in brown). The ground control station (GCS) provides a graphical user interface with telemetry data received by the link agent which manages the ground-based radio modem. The link agent distributes telemetry data across the network (a single computer, a local network or the internet) where it can be used locally or remotely by the:

  • messages - a real-time display of all telemetry data
  • server - an agent that logs, distributes, and preprocesses these messages for the GCS.

All of these processes run simultaneously and each module is independently controled and configured from Paparazzi_Center.

Your first experiments with the system should be with the simulator where everything runs on your local machine. The configuration is then slightly different:

Comm sitl.gif

Here the aircarft and its radio link are replaced by the simulator. An optional gaia agent is also available to introduce some environmental parameters such as wind, infrared constrast, GPS quality, and time scale reference.


Aircraft

Paparazzi Equiped Aircraft
  • Autopilot Control Board
  • Battery
  • Datalink Radio-Modem & Antenna
  • GPS Receiver
  • IR Sensor Board
  • Motor & Controller
  • RC Receiver & Antenna
  • Servos
  • Payload = Camera & Video Transmitter

The Airframe

The Paparazzi airborne system is highly configurable and can be used to autonomously operate almost any airframe. It is currently in use on airframes ranging from 30cm to 1.4m, and 180g to several kg. In the early days of the project, slow and stable airframes such as the venerable Twinstar and Microjet were favored, but today the system is employed in a wide variety of high performance aircraft, many with little or no natural stability, and many designed specifically around the Paparazzi system.

The User's Gallery shows some of the many Paparazzi aircraft.

Airborne Electronics

Controller Board
Tiny Controller Board

Several controller boards have been designed to run the Paparazzi autopilot software, using either Atmel AVR or Philips ARM7 LPC micro-controllers. These boards include one or two micro-controllers and the required connectors to handle the servos, motor controllers, sensors, RC receiver, radio modem, and a variety of payloads. All of the schematics and PCB files are available under the GPL licence.
More details on the controller boards are available on the Hardware Pages.

Sensors
2 Axis IR Sensor Board

Paparazzi autopilots can interface with virtually any type of sensor but the vast majority of applications rely on a set of 6 orthogonal infrared temperature sensors to estimate the orientation of the aircraft relative to the warm earth and cold sky. The IR system provides a robust and absolute attitude estimate that is immune to vibration and disorienting launches, wind gusts, or stalls that may confuse inertial-based autopilots. Paparazzi also uses conventional inertial systems on hovering aircraft such as quadrotors and helicopters with freely available software and hardware sources.

Fixed wing airborne hardware typically includes infrared sensors, GPS & occasionally a gyroscope for roll or pitch rate damping on more agile aircraft. A standard GPS receiver from u-blox is used, either as a stand-alone unit for the Classix or TWOG autopilots, or as a fully integrated package in the Tiny autopilot.

More details on the sensors are available on the Sensors page.

Communications
Aerocomm AC4868 Radio-Modem

Airborne hardware also includes communications devices : Radio Modem (Datalink) & RC Receiver (Safety Link). Any wireless device providing a serial link can be used for the telemetry and the telecontrol (Datalink).

More details on communications hardware are available on the Modems page.

Airborne Software

The Paparazzi autopilot provides the following features:

  • RC receiver (PPM signal) decoding
  • Servos and motor controller (PPM signal) control
  • Manual control with the RC
  • Control with augmented stability (named AUTO1)
  • Autonomous navigation (named AUTO2) in 3D, including
    • Waypoint navigation
    • Segment and circle navigation
    • Altitude hold, glide following
    • High level flight plan language execution (sequence, loops, goto, ...)
  • Telemetry to the ground station
  • Telecontrol (datalink) from the ground station (navigation control, waypoint modifications, tuning)

The autopilot code is written in C while all the configuration code is translated from XML files at compile time. Code is segregated into two processes respectively handling the fly by wire (manual control) and the autopilot itself (stabilization and navigation). These processes are segregated on two-processor controllers such as the Classix.

Ground Control Station (GCS)

Ground Computer

The software is developped to be run on a i386 architecture with the Debian GNU/linux operating system. However a Live CD including all the software is provided: it should be able to boot any standard laptop.

Ground Software

The software mainly provides

  • compiling tools to produce the airborne code from the configuration;
  • a GUI to control and interact with the UAV(s) during flight;
  • a basic simulator to ease the development of flight plans.

Datalink

Paparazzi offers several possibilities to supervise the UAV flight from the ground. The default one uses a bidirectionnal wireless modem which supports both telemetry (downlink) and telecontrol (uplink). Thanks to this datalink, flight parameters are available in real time and full control of the navigation and tuning of one or several aircraft is possible from the ground station.

Safety Link

The airborne hardware and software support the connection to a standard (patched) radio-control receiver. While this link is not required for actual autonomous flights, it may help during the tuning of a new aircraft and is usually considered as an important safety control redundancy.

Payloads

Paparazzi is designed to interface with a wide variety of payloads. The airborne board can control many servos for autonomous and/or manual Pan/Tilt camera systems or other mechanical payloads, SPI, I2C, and GPIO connections are available to connect digital devices (i.e. lights or digital camera shutter), and analog inputs are available to interface with just about any sensor imaginable. The associated software is easily integrated into the open-source code. The Classix board can also be connected to a Gumstix Computer for highly sophisticated payload software applications.

Disclaimers

It should be understood that smooth, reliable autonomous flight is a great feat and will require significant time and effort to achieve, even with a highly evolved open system like Paparazzi. The time required will vary based on experience, aircraft, and luck. From experience however, users can expect to spend a similar amount of time learning and configuring Paparazzi as they may with any of the commercially available systems.

Linux itself can pose quite a challenge to install, configure, and learn. To help ease the transition for those not already running Linux, the LiveCD option is available to help get you started. The LiveCD allows the user to save all configuration files as well as any user-modified source code on a pen drive or as a compressed file on your hard drive without affecting your existing OS. We strongly urge new users to Contact someone from the Paparazzi team before beginning any hardware invenstment as we can help you get the most out of the system.