Difference between revisions of "Overview"

From PaparazziUAV
Jump to navigation Jump to search
Line 1: Line 1:
= Overview of the Paparazzi System =
[[image:Paparazzi_System_overview.jpg|right|Paparazzi System Overview]]
 
Paparazzi offers hardware and software for the autonomous aircraft, a ground control station to configure and control the aircraft and a bidirectional datalink for communications.
Paparazzi offers hardware and software for the autonomous aircraft, a ground control station to configure and control the aircraft and a bidirectional datalink for communications.


[[image:Paparazzi_System_overview.jpg|Paparazzi system overview]]
<br>
 
== Aircraft ==
== Aircraft ==
[[image:Paparazzi_Equiped_Aircraft.jpg|Paparazzi Equiped Aircraft]]
[[image:Paparazzi_Equiped_Aircraft.jpg|Paparazzi Equiped Aircraft]]
attachment:Paparazzi_Equiped_Aircraft.jpg
* '''(A)'''utopilot Control Board
*'''(A)'''utopilot Control Board
* '''(B)'''attery
*'''(B)'''attery
* '''(D)'''atalink Radio-Modem & Antenna
*'''(D)'''atalink Radio-Modem & Antenna
* '''(G)'''PS Receiver
*'''(G)'''PS Receiver
* '''(I)'''R Sensors Board
*'''(I)'''R Sensors Board
* '''(M)'''otor & Controller
*'''(M)'''otor & Controller
* '''(R)'''C Receiver & Antenna
*'''(R)'''C Receiver & Antenna
* '''(S)'''ervos
*'''(S)'''ervos
* '''(P)'''ayload = Camera & Video Transmitter
*'''(P)'''ayload = Camera & Video Transmitter
<br>
 
=== The Airframe ===
=== The Airframe ===


Line 26: Line 23:
=== Airborne Electronics ===
=== Airborne Electronics ===


===== Control Board =====
===== Controller Board =====


Several control boards have been designed to run the Paparazzi autopilot, using Atmel AVR and 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
servo commands, the motor controller, the sensors, the RC receiver, the radio modem, ...
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. There are currently no vendors offering PCB kits or assembled controller boards.
All the schematics and PCBs files are [http://cvs.savannah.nongnu.org/viewcvs/paparazzi3/hw/?root=paparazzi available] under the GPL licence. There is currently no way to ''buy'' the Paparazzi boards.


[[image:tiny_proto1_top_small.jpg|Tiny Control Board]]
[[image:tiny_proto1_top_small.jpg|Tiny Controller Board]]


More details on the Control Boards are available from the [:UserManual/Hardware/ControlBoards/Tiny: Tiny Control Board], [:UserManual/Hardware/ControlBoards/Classix: Classix Control Board], [:UserManual/Hardware/ControlBoards/AVR: AVR Control Board] & [:UserManual/Hardware/ControlBoards/Robostix: Robostix Control Board].
More details on the controller boards are available on the [[Hardware|Hardware Pages]].


===== Sensors =====
===== Sensors =====
Line 43: Line 39:
[[image:ir_sensor_bot_small.jpg|2 Axis IR Sensors Board]]
[[image:ir_sensor_bot_small.jpg|2 Axis IR Sensors Board]]


More details are available from the [:UserManual/Hardware/IRSensors: IR Sensors], [:UserManual/Hardware/GPSReceivers: GPS Receivers Hardware] & [:UserManual/Hardware/Gyroscope: Gyroscope].
More details on the sensors is available on the [[Hardware|Hardware Pages]].


===== Communications =====
===== Communications =====
Line 52: Line 48:
[[image:ac4868_transceiver.jpg|Aerocomm AC4868 Radio-Modem]]
[[image:ac4868_transceiver.jpg|Aerocomm AC4868 Radio-Modem]]


More details are available from the [:UserManual/Hardware/Datalink: Datalink] and [:Overview/SafetylinkHardware: Safety Link]
More details on communications hardware is available on the [[Hardware|Hardware Pages]].


=== Airborne Software ===
=== Airborne Software ===


The Paparazzi autopilot provides the following features:
The Paparazzi autopilot provides the following features:
* RC receiver (PPM signal) decoding
* RC receiver (PPM signal) decoding
* Servos and motor controller (PPM signal) control
* Servos and motor controller (PPM signal) control
* Manual control with the RC
* Manual control with the RC
* Control with augmented stability (named '''AUTO1''')
* Control with augmented stability (named '''AUTO1''')
* Autonomous navigation (named '''AUTO2''') in 3D, including
* Autonomous navigation (named '''AUTO2''') in 3D, including
  * Waypoint navigation
** Waypoint navigation
  * Segment and circle navigation
** Segment and circle navigation
  * Altitude hold, glide following
** Altitude hold, glide following
  * High level flight plan language execution (sequence, loops, goto, ...)
** High level flight plan language execution (sequence, loops, goto, ...)
* Telemetry to the ground station
* Telemetry to the ground station
* Telecontrol (datalink) from the ground station (navigation control, waypoint modifications, tuning)
* 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.
The autopilot code is written in C while all the configuration code is translated from XML files at compile time.
Code is segregated in two process respectively handling the ''fly by wire'' (manual control) and the ''autopilot'' itself (stabilisation and navigation). These process are distributed on one or the two micro-controllers.
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 [[Hardware:Classix|Classix]].


== Ground Control Station (GCS) ==
== Ground Control Station (GCS) ==
Line 82: Line 77:


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


=== Datalink ===
=== Datalink ===
Line 102: Line 97:
It should be understood that smooth autonomous flight is not an easy task and it takes significant time to achieve it, even with a well tested an open sytem like Paparazzi. The time required will vary based on experience, aircraft, and luck. From experience however one will spend about the same amount of time with this system as a commercially bought system, speaking from team experience with a few commercially available systems.
It should be understood that smooth autonomous flight is not an easy task and it takes significant time to achieve it, even with a well tested an open sytem like Paparazzi. The time required will vary based on experience, aircraft, and luck. From experience however one will spend about the same amount of time with this system as a commercially bought system, speaking from team experience with a few commercially available systems.


It can be somewhat challenging, for a point and click standard computer user, using GNU/Linux for the first time. If it seems to be a deterrent to the system take a look at the LiveCD option as it will make the system much easier to use in the beginning. Because Paparazzi is modular and open source, it would be no problem to upgrade your ground station laptop to a full GNU/Linux Debian when the time came, and still keep any home brew software you may have made. Hardware selection should be made based on budget and needs. The Classix board provides a dual MCU board which will allow for some heavier processing and the ability to separate mission critical code. This board can be connected to a Gumstix daughterboard. The Tiny board is designed for small UAV, and MAV operations. It was designed for the user in mind and includes the GPS receiver and servo connectors. It is probably a good idea to [:Links: talk] with someone from the Paparazzi team before making a choice as they can help you get the most out of your system.
It can be somewhat challenging, for a point and click standard computer user, using GNU/Linux for the first time. If it seems to be a deterrent to the system take a look at the LiveCD option as it will make the system much easier to use in the beginning. Because Paparazzi is modular and open source, it would be no problem to upgrade your ground station laptop to a full GNU/Linux Debian when the time came, and still keep any home brew software you may have made. Hardware selection should be made based on budget and needs. The Classix board provides a dual MCU board which will allow for some heavier processing and the ability to separate mission critical code. This board can be connected to a Gumstix daughterboard. The Tiny board is designed for small UAV, and MAV operations. It was designed for the user in mind and includes the GPS receiver and servo connectors. It is wise to [[Contact|Contact]] someone from the Paparazzi team before making a choice as they can help you get the most out of your system.

Revision as of 14:37, 4 December 2006

Paparazzi System Overview

Paparazzi offers hardware and software for the autonomous aircraft, a ground control station to configure and control the aircraft and a bidirectional datalink for communications.


Aircraft

Paparazzi Equiped Aircraft

  • (A)utopilot Control Board
  • (B)attery
  • (D)atalink Radio-Modem & Antenna
  • (G)PS Receiver
  • (I)R Sensors Board
  • (M)otor & Controller
  • (R)C Receiver & Antenna
  • (S)ervos
  • (P)ayload = Camera & Video Transmitter


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 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.

Airborne Electronics

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 the schematics and PCBs files are available under the GPL licence. There are currently no vendors offering PCB kits or assembled controller boards.

Tiny Controller Board

More details on the controller boards are available on the Hardware Pages.

Sensors

Airborne hardware includes sensors like infrared, GPS & Gyroscope. 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.

2 Axis IR Sensors Board

More details on the sensors is available on the Hardware Pages.

Communications

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).

Aerocomm AC4868 Radio-Modem

More details on communications hardware is available on the Hardware Pages.

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 of one or several aircraft is possible on 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 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].

Disclaimers

It should be understood that smooth autonomous flight is not an easy task and it takes significant time to achieve it, even with a well tested an open sytem like Paparazzi. The time required will vary based on experience, aircraft, and luck. From experience however one will spend about the same amount of time with this system as a commercially bought system, speaking from team experience with a few commercially available systems.

It can be somewhat challenging, for a point and click standard computer user, using GNU/Linux for the first time. If it seems to be a deterrent to the system take a look at the LiveCD option as it will make the system much easier to use in the beginning. Because Paparazzi is modular and open source, it would be no problem to upgrade your ground station laptop to a full GNU/Linux Debian when the time came, and still keep any home brew software you may have made. Hardware selection should be made based on budget and needs. The Classix board provides a dual MCU board which will allow for some heavier processing and the ability to separate mission critical code. This board can be connected to a Gumstix daughterboard. The Tiny board is designed for small UAV, and MAV operations. It was designed for the user in mind and includes the GPS receiver and servo connectors. It is wise to Contact someone from the Paparazzi team before making a choice as they can help you get the most out of your system.