mirror of
https://github.com/paparazzi/paparazzi.git
synced 2026-06-02 13:27:32 +08:00
cleaning for 3.1 release
This commit is contained in:
@@ -1,5 +1,5 @@
|
|||||||
# Paparazzi $Id$
|
# Paparazzi $Id$
|
||||||
# Copyright (C) 2003-2005 Pascal Brisset Antoine Drouin
|
# Copyright (C) 2003-2006 Pascal Brisset Antoine Drouin
|
||||||
#
|
#
|
||||||
# This file is part of paparazzi.
|
# This file is part of paparazzi.
|
||||||
#
|
#
|
||||||
@@ -24,185 +24,85 @@ Intro
|
|||||||
|
|
||||||
Paparazzi is an attempt to develop a cheap fixed wing UAV (Unmanned Air
|
Paparazzi is an attempt to develop a cheap fixed wing UAV (Unmanned Air
|
||||||
Vehicle). As of today we have successfully flown autonomously several small
|
Vehicle). As of today we have successfully flown autonomously several small
|
||||||
electro powered fixed wing aircraft: the Twinstar and the Microjet of
|
electro powered fixed wing aircraft (Twinstar, Microjet, ...).
|
||||||
Multiplex.
|
|
||||||
|
|
||||||
Up to date informations are available from the website
|
Up to date informations are available from the websites
|
||||||
|
|
||||||
www.nongnu.org/paparazzi
|
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:
|
Directories description:
|
||||||
-----------------------
|
-----------------------
|
||||||
|
|
||||||
conf: the configuration directory (airframe, radio, ... descriptions). YOU HAVE
|
conf: the configuration directory (airframe, radio, ... descriptions).
|
||||||
TO EDIT THERE the Makefile.local file
|
|
||||||
|
|
||||||
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 (electronic schemas, PCBs, ...)
|
||||||
|
|
||||||
hw: hardware definitions (electronic schemas, PCBs, ...)
|
|
||||||
|
|
||||||
sw: software (onboard, ground station, simulation, ...)
|
sw: software (onboard, ground station, simulation, ...)
|
||||||
|
|
||||||
|
var: products of compilation, cache for the map tiles, ...
|
||||||
|
|
||||||
|
debian: Debian packaging control files
|
||||||
|
|
||||||
|
|
||||||
Required Software
|
Required Software
|
||||||
-----------------
|
-----------------
|
||||||
- AVR micro-controller development environnment (avr-gcc, uisp, avr-libc)
|
|
||||||
- OCaml (ocaml.org), xml-light library (http://tech.motion-twin.com/xmllight)
|
- OCaml (ocaml.org), xml-light library (http://tech.motion-twin.com/xmllight)
|
||||||
- gcc, GTK2, Glib2, libgnomecanvas, libxml2
|
- gcc, GTK2, Glib2, libgnomecanvas, libxml2
|
||||||
|
- AVR or ARM7 micro-controller development environnment (gcc, loader, libc, binutils)
|
||||||
- ...
|
- ...
|
||||||
|
|
||||||
For Debian users: Required packages are available at
|
For Debian users: Required packages are available at
|
||||||
|
|
||||||
http://www.recherche.enac.fr/paparazzi/debian
|
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
|
Compilation
|
||||||
-----------
|
-----------
|
||||||
|
|
||||||
0) Configuration. Default PAPARAZZI_HOME is $(HOME)/paparazzi. You
|
|
||||||
can change it by setting an environment variable
|
|
||||||
|
|
||||||
1) "make" in the top directory
|
1) "make" in the top directory
|
||||||
|
|
||||||
2) Set the PAPARAZZI_SRC environment variable to the top directory
|
2) "make demo" to run a demo (c.f. www.recherche.enac.fr/paparazzi/doc/moin.cgi/GettingStarted/Simulation)
|
||||||
(default is /usr/share/paparazzi)
|
|
||||||
|
|
||||||
2) "make init" creates a directory $PAPARAZZI_HOME for your own files.
|
3) "make AIRCRAFT=<name> <target>.compile" compiles the airborne code for the specified target and aircraft
|
||||||
Configure there the conf/conf.xml
|
|
||||||
|
|
||||||
3) "make ac AIRCRAFT=<name>" compiles everything for the specified
|
4) "make AIRCRAFT=<name> sim" compiles the simulator for the specified aircraft.
|
||||||
aircraft (default is twinstar2 for which conf files are provided) and
|
|
||||||
set the files in $PAPARAZZI_HOME/var/<name>
|
|
||||||
|
|
||||||
5) "make clean_ac AIRCRAFT=<name>" cleans files for the specified aircraft.
|
5) "make AIRCRAFT=<name> clean_ac" cleans files for the specified aircraft.
|
||||||
|
|
||||||
6) $PAPARAZZI_HOME/var/<name>/sim/simsitl.out runs the soft simulator.
|
|
||||||
|
|
||||||
Uploading of the embedded software
|
Uploading of the embedded software
|
||||||
----------------------------------
|
----------------------------------
|
||||||
|
|
||||||
1) Power the flight controller board. Plug the pc-link to the board
|
1) Power the flight controller board. Plug the pc-link to the board.
|
||||||
and to the host parallel port.
|
|
||||||
|
|
||||||
2) Upload with
|
2) Upload with
|
||||||
|
|
||||||
make upload_fbw # Fly by wire
|
make AIRCRAFT=<name> fbw.upload # Fly by wire
|
||||||
make upload_ap # Autopilot
|
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 pclink must be switched accordingly with the target
|
||||||
- The "fly by wire" controller cannot be uploaded when the
|
- The "fly by wire" controller cannot be uploaded when the
|
||||||
"autopilot" controller is running. They cannot independently be
|
"autopilot" controller is running. They cannot independently be
|
||||||
modified; then an upload of the fly by wire usually requires
|
modified; then an upload of the fly by wire usually requires
|
||||||
|
|
||||||
make erase_ap
|
make AIRCRAFT=<name> ap.erase
|
||||||
make upload_fbw
|
make AIRCRAFT=<name> fbw.upload
|
||||||
make upload_ap
|
make AIRCRAFT=<name> ap.upload
|
||||||
|
|
||||||
|
|
||||||
Running the ground segment monitoring
|
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
|
1) "sw/supervision/paparazzi.pl" runs the ground control station supervision
|
||||||
to the host (trough a serial port)
|
|
||||||
|
|
||||||
3) Launch the supervision
|
2) Choose the appropriate session
|
||||||
|
|
||||||
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
|
|
||||||
|
|||||||
Reference in New Issue
Block a user