mirror of
https://github.com/paparazzi/paparazzi.git
synced 2026-05-23 21:36:28 +08:00
cleaning for 3.1 release
This commit is contained in:
@@ -1,5 +1,5 @@
|
||||
# Paparazzi $Id$
|
||||
# Copyright (C) 2003-2005 Pascal Brisset Antoine Drouin
|
||||
# Copyright (C) 2003-2006 Pascal Brisset Antoine Drouin
|
||||
#
|
||||
# This file is part of paparazzi.
|
||||
#
|
||||
@@ -24,185 +24,85 @@ Intro
|
||||
|
||||
Paparazzi is an attempt to develop a cheap fixed wing UAV (Unmanned Air
|
||||
Vehicle). As of today we have successfully flown autonomously several small
|
||||
electro powered fixed wing aircraft: the Twinstar and the Microjet of
|
||||
Multiplex.
|
||||
electro powered fixed wing aircraft (Twinstar, Microjet, ...).
|
||||
|
||||
Up to date informations are available from the website
|
||||
Up to date informations are available from the websites
|
||||
|
||||
www.nongnu.org/paparazzi
|
||||
www.recherche.enac.fr/paparazzi
|
||||
|
||||
and from the mailing list.
|
||||
and from the mailing list and the IRC channem. Documentation is edited in
|
||||
the wiki
|
||||
|
||||
www.recherche.enac.fr/paparazzi/doc
|
||||
|
||||
Directories description:
|
||||
-----------------------
|
||||
|
||||
conf: the configuration directory (airframe, radio, ... descriptions). YOU HAVE
|
||||
TO EDIT THERE the Makefile.local file
|
||||
conf: the configuration directory (airframe, radio, ... descriptions).
|
||||
|
||||
data: where to put read-only data (e.g. maps and terrain files)
|
||||
data: where to put read-only data (e.g. maps and terrain elevation files)
|
||||
|
||||
doc: the paparazzi documentation.
|
||||
|
||||
hw: hardware definitions (electronic schemas, PCBs, ...)
|
||||
hw: hardware (electronic schemas, PCBs, ...)
|
||||
|
||||
sw: software (onboard, ground station, simulation, ...)
|
||||
|
||||
var: products of compilation, cache for the map tiles, ...
|
||||
|
||||
debian: Debian packaging control files
|
||||
|
||||
|
||||
Required Software
|
||||
-----------------
|
||||
- AVR micro-controller development environnment (avr-gcc, uisp, avr-libc)
|
||||
- OCaml (ocaml.org), xml-light library (http://tech.motion-twin.com/xmllight)
|
||||
- gcc, GTK2, Glib2, libgnomecanvas, libxml2
|
||||
- AVR or ARM7 micro-controller development environnment (gcc, loader, libc, binutils)
|
||||
- ...
|
||||
|
||||
For Debian users: Required packages are available at
|
||||
|
||||
http://www.recherche.enac.fr/paparazzi/debian
|
||||
Installation of the meta-package "paparazzi" will install everything
|
||||
needed (if something is missing, please ask)
|
||||
|
||||
Installation of the meta-package "paparazzi-dev" will install everything
|
||||
needed to compile this project (if something is missing, please ask)
|
||||
|
||||
Compilation
|
||||
-----------
|
||||
|
||||
0) Configuration. Default PAPARAZZI_HOME is $(HOME)/paparazzi. You
|
||||
can change it by setting an environment variable
|
||||
|
||||
1) "make" in the top directory
|
||||
|
||||
2) Set the PAPARAZZI_SRC environment variable to the top directory
|
||||
(default is /usr/share/paparazzi)
|
||||
2) "make demo" to run a demo (c.f. www.recherche.enac.fr/paparazzi/doc/moin.cgi/GettingStarted/Simulation)
|
||||
|
||||
2) "make init" creates a directory $PAPARAZZI_HOME for your own files.
|
||||
Configure there the conf/conf.xml
|
||||
3) "make AIRCRAFT=<name> <target>.compile" compiles the airborne code for the specified target and aircraft
|
||||
|
||||
3) "make ac AIRCRAFT=<name>" compiles everything for the specified
|
||||
aircraft (default is twinstar2 for which conf files are provided) and
|
||||
set the files in $PAPARAZZI_HOME/var/<name>
|
||||
4) "make AIRCRAFT=<name> sim" compiles the simulator for the specified aircraft.
|
||||
|
||||
5) "make clean_ac AIRCRAFT=<name>" cleans files for the specified aircraft.
|
||||
|
||||
6) $PAPARAZZI_HOME/var/<name>/sim/simsitl.out runs the soft simulator.
|
||||
5) "make AIRCRAFT=<name> clean_ac" cleans files for the specified aircraft.
|
||||
|
||||
Uploading of the embedded software
|
||||
----------------------------------
|
||||
|
||||
1) Power the flight controller board. Plug the pc-link to the board
|
||||
and to the host parallel port.
|
||||
1) Power the flight controller board. Plug the pc-link to the board.
|
||||
|
||||
2) Upload with
|
||||
|
||||
make upload_fbw # Fly by wire
|
||||
make upload_ap # Autopilot
|
||||
make AIRCRAFT=<name> fbw.upload # Fly by wire
|
||||
make AIRCRAFT=<name> ap.upload # Autopilot
|
||||
|
||||
Important notes:
|
||||
Important notes for bi-microcontroller avr boards:
|
||||
- The pclink must be switched accordingly with the target
|
||||
- The "fly by wire" controller cannot be uploaded when the
|
||||
"autopilot" controller is running. They cannot independently be
|
||||
modified; then an upload of the fly by wire usually requires
|
||||
|
||||
make erase_ap
|
||||
make upload_fbw
|
||||
make upload_ap
|
||||
make AIRCRAFT=<name> ap.erase
|
||||
make AIRCRAFT=<name> fbw.upload
|
||||
make AIRCRAFT=<name> ap.upload
|
||||
|
||||
|
||||
Running the ground segment monitoring
|
||||
-------------------------------------
|
||||
1) The transmitter must be plugged to the flight controller and both must
|
||||
be powered.
|
||||
|
||||
2) The ground modem must be powered and plugged to the antenna and
|
||||
to the host (trough a serial port)
|
||||
1) "sw/supervision/paparazzi.pl" runs the ground control station supervision
|
||||
|
||||
3) Launch the supervision
|
||||
|
||||
sw/supervision/paparazzi.pl
|
||||
|
||||
4) Launch "receive", "cockpit", "map", ...
|
||||
|
||||
|
||||
Log replay
|
||||
----------
|
||||
1) Run the supervision
|
||||
|
||||
sw/supervision/paparazzi.pl
|
||||
|
||||
2) Launch "play", "cockpit", "map", ...
|
||||
|
||||
|
||||
Software in the loop simulator
|
||||
------------------------------
|
||||
This simulator allows to run the stabilization and navigation controllers
|
||||
and play with the ground control station.
|
||||
|
||||
0) Use the conf.xml and ground_segment.xml examples for the configuration.
|
||||
Recompile everything to be sure you run what you want ("make clean; make" in
|
||||
the top directory). The mission takes place in Braunschweig, Germany
|
||||
(flight competion of EMAV'04).
|
||||
|
||||
1) Run the "control panel" (sw/supervision/paparazzi.pl)
|
||||
This window helps to launch the different components.
|
||||
|
||||
2) Launch the "cockpit" to display flight parameters
|
||||
|
||||
3) Launch "sim" (aircraft simulator)
|
||||
You get two windows standing for
|
||||
- The aircraft
|
||||
- The radio-controller (RC, displayed as one slider for each channel,
|
||||
even if some of them are buttons on the real RC)
|
||||
|
||||
4) "Boot" the aircraft (button in the aircraft window)
|
||||
The cockpit now displays some parameters. You can check
|
||||
- The autopilot mode: "auto1" (stabilized manual mode)
|
||||
- The altitude (on the right of the horizon)
|
||||
- The speed: null (on the left of the horizon)
|
||||
|
||||
5) "Launch" the aircraft (button in the aircraft window)
|
||||
The speed is now 10m/s.
|
||||
The altitude is going down: push the THROTTLE to go up !
|
||||
Ok, you were probably too slow: the aircraft went too far from HOME
|
||||
and the autopilot mode is now "home" (cockpit window): it is going
|
||||
back home automatically and you do not control anything with the RC.
|
||||
|
||||
6) Launch "map" (from the control panel)
|
||||
In this window, you can zoom with mouse wheel and pan with the middle
|
||||
button.
|
||||
The aicraft is going around the "HOME" waypoint.
|
||||
Now, reset the autopilot mode with GAIN1 slider (push full left for
|
||||
one second, put it back around 0 when "auto1" is displayed in the
|
||||
cockpit window). The aircraft is going away: turn right or left with
|
||||
the "ROLL" slider which directly controls the "roll" angle (set it to 0
|
||||
to go straight)
|
||||
Look at the altitude. Control its variation with the "THROTTLE".
|
||||
|
||||
7) Launch "mission" (from the control panel)
|
||||
This window displays the flight plan the aircraft will follow in
|
||||
autonomous mode. If your current altitude is realistic, the second
|
||||
block should be active (if not, go up with more THROTTLE)
|
||||
|
||||
8) Switch to autonomous mode "auto2" with the "MODE" slider (push right)
|
||||
|
||||
The aircraft successively goes to waypoints 1 and 3 while trying to
|
||||
stay at a constant altitude of 200m. The trajectory is better if you
|
||||
active the automatic calibration of the attitude with the "LLS" slider
|
||||
(with a large positive value, you get "ON" on the Cockpit window)
|
||||
|
||||
9) Activate the next block of the flight plan with "GAIN1" slider (full left)
|
||||
The active block is now the "height". On the "map" window (type
|
||||
CRTL-C to clear the track), you can observe a red point (the "carrot")
|
||||
which moves in front of the aircraft: it is the guide of the aircraft
|
||||
(that you probably should consider as a donkey in this case), always
|
||||
5 second before the aircraft on the desired track.
|
||||
|
||||
10) Add some west wind (with the slider on the aircraft window)
|
||||
5m/s is an acceptable value for this approximative flight model. The
|
||||
aircraft no longer can follow the "height" trajectory.
|
||||
|
||||
11) Activate the next block of the mission ("GAIN1" slider, full left)
|
||||
In this "xyz" mode, you can control the carrot position with the
|
||||
"YAW" (west-east) and "PITCH" (south-north) sliders: the slider value is
|
||||
the speed of the carrot.
|
||||
|
||||
12) Activate the next block
|
||||
In this block, the aircraft follows a circle around the "HOME"
|
||||
waypoint at a fixed distance.
|
||||
|
||||
13) Close the control panel to quit
|
||||
2) Choose the appropriate session
|
||||
|
||||
Reference in New Issue
Block a user