<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>http://wiki.paparazziuav.org/w/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Andrelim</id>
	<title>PaparazziUAV - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="http://wiki.paparazziuav.org/w/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Andrelim"/>
	<link rel="alternate" type="text/html" href="http://wiki.paparazziuav.org/wiki/Special:Contributions/Andrelim"/>
	<updated>2026-05-17T19:56:00Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.37.1</generator>
	<entry>
		<id>http://wiki.paparazziuav.org/w/index.php?title=Simulation&amp;diff=8458</id>
		<title>Simulation</title>
		<link rel="alternate" type="text/html" href="http://wiki.paparazziuav.org/w/index.php?title=Simulation&amp;diff=8458"/>
		<updated>2011-01-25T10:44:07Z</updated>

		<summary type="html">&lt;p&gt;Andrelim: /* Other navigation patterns */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page describes the steps needed to run a simulated flight with an UAS.&lt;br /&gt;
&lt;br /&gt;
==Compiling and starting==&lt;br /&gt;
&lt;br /&gt;
From the [[Paparazzi_Center|Paparazzi Center]] select the Microjet aircraft (from the '''A/C''' combo box) which is configured with the &amp;lt;tt&amp;gt;basic.xml&amp;lt;/tt&amp;gt; flight plan. From the '''Target''' combo box, select &amp;lt;tt&amp;gt;sim&amp;lt;/tt&amp;gt; and click the '''Build''' button to compile the airbone code to be run on your Linux box. From the '''Session''' combo box, select &amp;lt;tt&amp;gt;Simulation&amp;lt;/tt&amp;gt; entry and click '''Execute''' to start the simulation. It will start &lt;br /&gt;
three processes which are listed in the window below:&lt;br /&gt;
* '''Microjet''' is the interface of a simulator program. It runs the same code as the one for the autopilot processor plus a rudimentary flight dynamic model. it allows you to test the interactions with the UAV and the flight plan execution.&lt;br /&gt;
* '''GCS''' ([[GCS|Ground Control Station]]) is the main window. It displays the track of the aircraft, as well as informations about the execution of its flight plans. This program provide menus for the datalink functions and is able to edit a flight plan.&lt;br /&gt;
* '''Server''' is a hidden process which won't be described here (see [[Overview|the architecture of the system]])&lt;br /&gt;
&lt;br /&gt;
== Start the Simulation ==&lt;br /&gt;
&lt;br /&gt;
The aircraft has automatically been booted, as if the autopilot board had been powered. Its position and its flight parameters are displayed in the GCS window.&lt;br /&gt;
&lt;br /&gt;
The map widget is able use many map formats and display them according to many projections. To make things simple, we start by using images from [http://maps.google.com Google]. From the toolbar in the top right corner of the GCS, click the Google Earth icon ('''Google maps fill'''). The program attempts to download the required satellite images from the Google servers. If it succeeds, you should now see the nice countryside of Muret (a city close to Toulouse, France). Navigation and other features of the map are described on the [[GCS#map|GCS]] page.&lt;br /&gt;
&lt;br /&gt;
The lower part of the GCS displays the flight plan in a tree view. You see that the current flight plan is composed of several ''blocks'':&lt;br /&gt;
* '''wait GPS''' and '''geo init''' which are instructions to run this flight plan anywhere in the world, by translating the waypoints around the current location of aircraft as soon as it is reported by the GPS.&lt;br /&gt;
* '''Holding point''' (it  should be the current active block) which instructs the autopilot to wait for launch.  &lt;br /&gt;
* '''Takeoff''' which will instruct the aircraft to climb full throttle to a security altitude&lt;br /&gt;
* '''Standby''' which is a simple circle around the '''STDBY''' waypoint.&lt;br /&gt;
&lt;br /&gt;
Switch to the '''Takeoff''' block by a double click on the line or using the corresponding button (an icon figuring an airway) on the left side of the strip.&lt;br /&gt;
&lt;br /&gt;
== Fly ==&lt;br /&gt;
&lt;br /&gt;
In the Simulator ('''Microjet''' window), press the '''Launch''' button to simulate a hand launch or click the launch button in the GCS (the green aircraft icon). The autopilot detects the launch by monitoring the groundspeed. The flight time (in the aircraft label on the GCS) then starts to count.&lt;br /&gt;
&lt;br /&gt;
Position of the aircraft is displayed on the map: the aircraft goes to the '''CLIMB''' waypoint (to the norht-west) and then around the '''STDBY''' waypoint. Current block also changes accordingly in the flight plan display.&lt;br /&gt;
&lt;br /&gt;
The orange triangle (the carrot) on the map is the point that the aircraft is navigating toward.&lt;br /&gt;
&lt;br /&gt;
== Line ==&lt;br /&gt;
&lt;br /&gt;
Jump to this block with double-click on the &amp;lt;tt&amp;gt;Line 1-2&amp;lt;/tt&amp;gt; line in the flight plan or using the corresponding button in the strip (figuring a blue line between two white points). The aircraft will try to follow a line joining the waypoints '''1''' and '''2''', doing nice U-turns at both ends.&lt;br /&gt;
&lt;br /&gt;
=== Move waypoints ===&lt;br /&gt;
&lt;br /&gt;
While the aircraft is flying (or here while the simulator is integrating differential equations), you can move the waypoints on the GCS interface by cliking and dragging (with the left button). When the mouse button is released, a popup window allows you to change the altitude of the waypoint. After validation, the waypoint changes are sent to the autopilot and the followed track is changed accordingly.&lt;br /&gt;
&lt;br /&gt;
=== Coming back around ===&lt;br /&gt;
&lt;br /&gt;
Select the '''Standby''' block (the ''home'' blue icon) to instruct the aircraft to fly around the '''STDBY''' waypoint.&lt;br /&gt;
&lt;br /&gt;
== Fly too far ==&lt;br /&gt;
&lt;br /&gt;
If you unzoom the map (using the PageDown key or he mouse wheel), you will see a large circle around the waypoints. This circle show the allowed flying zone that the autopilot must not leave or it will enter an emergency navigation mode and circles the '''HOME''' waypoint until the further direction is received.&lt;br /&gt;
&lt;br /&gt;
Move the waypoint '''2''' out of this circle (close to the circle in the north-east corner) and switch back to the 'Line 1-2''' block to force the plane to get out of this safety zone.&lt;br /&gt;
&lt;br /&gt;
The aircraft flies to the '''2''' waypoint, cross the protection enveloppe and switches to ''home'' mode: the AP mode in the aircraft strip switches from '''AUTO2''' to '''HOME'''.&lt;br /&gt;
&lt;br /&gt;
To get out of this mode and switch back to the default '''AUTO2''', click on the '''AUTO2''' button in the aircraft strip. The aircraft then flies again towards '''too far''' and again swithes to '''HOME''' mode.&lt;br /&gt;
&lt;br /&gt;
== Change the environment ==&lt;br /&gt;
&lt;br /&gt;
Launch the '''Environment Simulator''' from the '''Tools' menu in the '''Paparazzi Center'''.&lt;br /&gt;
&lt;br /&gt;
This interface (also called'''Gaia''') allows the user to change:&lt;br /&gt;
* The wind: Set up a wind speed of 5m/s and observe the trajectory and the speed evolution (in the aircraft strip and in the '''PFD''' page of the notebook).&lt;br /&gt;
* The GPS coverage: Shut down the GPS ('''GPS OFF''') and observe the resulting mode ('''NO_GPS''') and trajectory. In this mode, the autopilot uses the failsafe roll, pitch and throttle settings defined in the airframe file. Note that in a real flight, an aircraft without GPS won't be able to send its position ... The simulation is cheating here !&lt;br /&gt;
* The time scale: If you are in a hurry ... Do not use a time higher than 2 for this first demonstration.&lt;br /&gt;
&lt;br /&gt;
== Other navigation patterns ==&lt;br /&gt;
&lt;br /&gt;
Using the buttons in the strip, you can play with other navigation patterns: figure of eights, oval, survey of a rectangle (with a north-south sweeping), ''Turn around here'' (which sets a waypoint to the current location of the plane and flies a circle around).&lt;br /&gt;
&lt;br /&gt;
== Landing ==&lt;br /&gt;
&lt;br /&gt;
To automatically land the aircraft:&lt;br /&gt;
* Set the '''TD''' (Touch Down) waypoint where you want to land. Be sure that the waypoint is on the ground (185m in Muret)&lt;br /&gt;
* Set the '''AF''' (Approach Fix) waypoint where you want to start the final descent (the ''glide''). If you have set some wind with Gaia, you probably want to fly '''AF-TD''' upwind (an estimation of the wind experienced by the aircraft is displayed in the left-upper corner of the map).&lt;br /&gt;
* Switch to the '''Land right''' or the '''Land left''' block (icons in the strip) according to the direction of the last turn you want to do (for example, if '''AF''' is on the east side of '''TD''' and you want to maneuvre from the north, choose a '''Land right''') &lt;br /&gt;
&lt;br /&gt;
== Multiple UAV Simulation ==&lt;br /&gt;
&lt;br /&gt;
To simulate multiple aircrafts, you just have to launch a second simulator (tools-&amp;gt;simulator, then -a yourairframe) and the server and the GCS should take care of the rest.&lt;br /&gt;
&lt;br /&gt;
== View the simulation in Flight Gear ==&lt;br /&gt;
&lt;br /&gt;
To view the simulation in Flight Gear, do the following:&lt;br /&gt;
*in your root folder:&lt;br /&gt;
 sudo apt-get install flightgear&lt;br /&gt;
*go to Paparazzi&lt;br /&gt;
 cd ~/paparazzi&lt;br /&gt;
 ./paparazzi&lt;br /&gt;
* In Paparazzi Center, add to the simulator command the &amp;lt;tt&amp;gt;-fg&amp;lt;/tt&amp;gt; option plus the IP address of the machine running flightgear:&lt;br /&gt;
 .../sw/simulator/launchsitl -a TJ1 -fg 127.0.0.1 -boot -norc&lt;br /&gt;
* Launch Flight Gear with the following command:&lt;br /&gt;
 fgfs --fdm=null --native-gui=socket,in,30,,5501,udp&lt;br /&gt;
&lt;br /&gt;
=== Why is it night in Flight Gear, if my sim is flying during the day? ===&lt;br /&gt;
The time that is sent to Flight Gear is hard coded into the code, so if you try to view the output of the simulation and your simulated flight is located far from France, in Flight Gear, everything may be dark. If your simulated flight is in France, then you will always have daylight in Flight Gear. To fix this, do the following (you will need to have paparazzi-dev installed to do this):&lt;br /&gt;
&lt;br /&gt;
* Get the Unix time during your '''local daylight hours''' by running the following command in your terminal:&lt;br /&gt;
 date +%s&lt;br /&gt;
* In the file: paparazzi/sw/simulator/fg.c find the line(line 44):&lt;br /&gt;
 msg.cur_time = 3213092700ul;//time(NULL);&lt;br /&gt;
* Paste the output from &amp;quot;date +%s&amp;quot; in place of &amp;quot;3213092700&amp;quot;&lt;br /&gt;
* Now you will have to rebuild paparazzi, so in the terminal change to the paparazzi directory and run:&lt;br /&gt;
 make clean&lt;br /&gt;
 make&lt;br /&gt;
* In Paparazzi Center clean and rebuild your simulation&lt;br /&gt;
* Launch the simulation and Flight Gear, and Flight Gear should be flying in daylight.&lt;br /&gt;
&lt;br /&gt;
== JSBSim ==&lt;br /&gt;
Paparazzi can work with [http://jsbsim.sourceforge.net/ JSBSim].&lt;br /&gt;
&lt;br /&gt;
For a fixed wing aircraft:&lt;br /&gt;
&lt;br /&gt;
In your airframe file add the section:&lt;br /&gt;
&lt;br /&gt;
  &amp;lt;section name=&amp;quot;SIMU&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;define name=&amp;quot;JSBSIM_MODEL&amp;quot; value=&amp;quot;\&amp;quot;Malolo1\&amp;quot;&amp;quot;/&amp;gt;&lt;br /&gt;
    &amp;lt;define name=&amp;quot;JSBSIM_IR_ROLL_NEUTRAL&amp;quot; value=&amp;quot;RadOfDeg(0.)&amp;quot;/&amp;gt;&lt;br /&gt;
    &amp;lt;define name=&amp;quot;JSBSIM_IR_PITCH_NEUTRAL&amp;quot; value=&amp;quot;RadOfDeg(0.)&amp;quot;/&amp;gt;&lt;br /&gt;
  &amp;lt;/section&amp;gt;&lt;br /&gt;
&lt;br /&gt;
In this case, the JSBSIM model used is conf/simulator/Malolo1. To create your own model make a new dir under conf/simulator and put your JSBSIM model there and adapt the JSBSIM_MODEL in the SIMU section accordingly.&lt;br /&gt;
&lt;br /&gt;
And add to the makefile section of your airframe file something like:&lt;br /&gt;
&lt;br /&gt;
 include $(PAPARAZZI_SRC)/conf/autopilot/sitl_jsbsim.makefile&lt;br /&gt;
 jsbsim.CFLAGS += -I/opt/jsbsim/include/JSBSim &lt;br /&gt;
 jsbsim.LDFLAGS += -L/opt/jsbsim/lib/ &lt;br /&gt;
 jsbsim.CFLAGS += -DBOARD_CONFIG=\&amp;quot;tiny.h\&amp;quot; -DAGR_CLIMB -DLOITER_TRIM -DALT_KALMAN jsbsim.srcs += $(SIMDIR)/sim_ac_fw.c&lt;br /&gt;
&lt;br /&gt;
Of course you might need to adapt the JSBSIM path (for jsbsim.CFLAGS and jsbsim.LDFLAGS) depending on where you installed it.&lt;br /&gt;
&lt;br /&gt;
An example airframe file that might be useful is:  /conf/airframes/jsbsim.xml&lt;/div&gt;</summary>
		<author><name>Andrelim</name></author>
	</entry>
	<entry>
		<id>http://wiki.paparazziuav.org/w/index.php?title=Simulation&amp;diff=8457</id>
		<title>Simulation</title>
		<link rel="alternate" type="text/html" href="http://wiki.paparazziuav.org/w/index.php?title=Simulation&amp;diff=8457"/>
		<updated>2011-01-25T10:00:30Z</updated>

		<summary type="html">&lt;p&gt;Andrelim: /* Start the Simulation */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page describes the steps needed to run a simulated flight with an UAS.&lt;br /&gt;
&lt;br /&gt;
==Compiling and starting==&lt;br /&gt;
&lt;br /&gt;
From the [[Paparazzi_Center|Paparazzi Center]] select the Microjet aircraft (from the '''A/C''' combo box) which is configured with the &amp;lt;tt&amp;gt;basic.xml&amp;lt;/tt&amp;gt; flight plan. From the '''Target''' combo box, select &amp;lt;tt&amp;gt;sim&amp;lt;/tt&amp;gt; and click the '''Build''' button to compile the airbone code to be run on your Linux box. From the '''Session''' combo box, select &amp;lt;tt&amp;gt;Simulation&amp;lt;/tt&amp;gt; entry and click '''Execute''' to start the simulation. It will start &lt;br /&gt;
three processes which are listed in the window below:&lt;br /&gt;
* '''Microjet''' is the interface of a simulator program. It runs the same code as the one for the autopilot processor plus a rudimentary flight dynamic model. it allows you to test the interactions with the UAV and the flight plan execution.&lt;br /&gt;
* '''GCS''' ([[GCS|Ground Control Station]]) is the main window. It displays the track of the aircraft, as well as informations about the execution of its flight plans. This program provide menus for the datalink functions and is able to edit a flight plan.&lt;br /&gt;
* '''Server''' is a hidden process which won't be described here (see [[Overview|the architecture of the system]])&lt;br /&gt;
&lt;br /&gt;
== Start the Simulation ==&lt;br /&gt;
&lt;br /&gt;
The aircraft has automatically been booted, as if the autopilot board had been powered. Its position and its flight parameters are displayed in the GCS window.&lt;br /&gt;
&lt;br /&gt;
The map widget is able use many map formats and display them according to many projections. To make things simple, we start by using images from [http://maps.google.com Google]. From the toolbar in the top right corner of the GCS, click the Google Earth icon ('''Google maps fill'''). The program attempts to download the required satellite images from the Google servers. If it succeeds, you should now see the nice countryside of Muret (a city close to Toulouse, France). Navigation and other features of the map are described on the [[GCS#map|GCS]] page.&lt;br /&gt;
&lt;br /&gt;
The lower part of the GCS displays the flight plan in a tree view. You see that the current flight plan is composed of several ''blocks'':&lt;br /&gt;
* '''wait GPS''' and '''geo init''' which are instructions to run this flight plan anywhere in the world, by translating the waypoints around the current location of aircraft as soon as it is reported by the GPS.&lt;br /&gt;
* '''Holding point''' (it  should be the current active block) which instructs the autopilot to wait for launch.  &lt;br /&gt;
* '''Takeoff''' which will instruct the aircraft to climb full throttle to a security altitude&lt;br /&gt;
* '''Standby''' which is a simple circle around the '''STDBY''' waypoint.&lt;br /&gt;
&lt;br /&gt;
Switch to the '''Takeoff''' block by a double click on the line or using the corresponding button (an icon figuring an airway) on the left side of the strip.&lt;br /&gt;
&lt;br /&gt;
== Fly ==&lt;br /&gt;
&lt;br /&gt;
In the Simulator ('''Microjet''' window), press the '''Launch''' button to simulate a hand launch or click the launch button in the GCS (the green aircraft icon). The autopilot detects the launch by monitoring the groundspeed. The flight time (in the aircraft label on the GCS) then starts to count.&lt;br /&gt;
&lt;br /&gt;
Position of the aircraft is displayed on the map: the aircraft goes to the '''CLIMB''' waypoint (to the norht-west) and then around the '''STDBY''' waypoint. Current block also changes accordingly in the flight plan display.&lt;br /&gt;
&lt;br /&gt;
The orange triangle (the carrot) on the map is the point that the aircraft is navigating toward.&lt;br /&gt;
&lt;br /&gt;
== Line ==&lt;br /&gt;
&lt;br /&gt;
Jump to this block with double-click on the &amp;lt;tt&amp;gt;Line 1-2&amp;lt;/tt&amp;gt; line in the flight plan or using the corresponding button in the strip (figuring a blue line between two white points). The aircraft will try to follow a line joining the waypoints '''1''' and '''2''', doing nice U-turns at both ends.&lt;br /&gt;
&lt;br /&gt;
=== Move waypoints ===&lt;br /&gt;
&lt;br /&gt;
While the aircraft is flying (or here while the simulator is integrating differential equations), you can move the waypoints on the GCS interface by cliking and dragging (with the left button). When the mouse button is released, a popup window allows you to change the altitude of the waypoint. After validation, the waypoint changes are sent to the autopilot and the followed track is changed accordingly.&lt;br /&gt;
&lt;br /&gt;
=== Coming back around ===&lt;br /&gt;
&lt;br /&gt;
Select the '''Standby''' block (the ''home'' blue icon) to instruct the aircraft to fly around the '''STDBY''' waypoint.&lt;br /&gt;
&lt;br /&gt;
== Fly too far ==&lt;br /&gt;
&lt;br /&gt;
If you unzoom the map (using the PageDown key or he mouse wheel), you will see a large circle around the waypoints. This circle show the allowed flying zone that the autopilot must not leave or it will enter an emergency navigation mode and circles the '''HOME''' waypoint until the further direction is received.&lt;br /&gt;
&lt;br /&gt;
Move the waypoint '''2''' out of this circle (close to the circle in the north-east corner) and switch back to the 'Line 1-2''' block to force the plane to get out of this safety zone.&lt;br /&gt;
&lt;br /&gt;
The aircraft flies to the '''2''' waypoint, cross the protection enveloppe and switches to ''home'' mode: the AP mode in the aircraft strip switches from '''AUTO2''' to '''HOME'''.&lt;br /&gt;
&lt;br /&gt;
To get out of this mode and switch back to the default '''AUTO2''', click on the '''AUTO2''' button in the aircraft strip. The aircraft then flies again towards '''too far''' and again swithes to '''HOME''' mode.&lt;br /&gt;
&lt;br /&gt;
== Change the environment ==&lt;br /&gt;
&lt;br /&gt;
Launch the '''Environment Simulator''' from the '''Tools' menu in the '''Paparazzi Center'''.&lt;br /&gt;
&lt;br /&gt;
This interface (also called'''Gaia''') allows the user to change:&lt;br /&gt;
* The wind: Set up a wind speed of 5m/s and observe the trajectory and the speed evolution (in the aircraft strip and in the '''PFD''' page of the notebook).&lt;br /&gt;
* The GPS coverage: Shut down the GPS ('''GPS OFF''') and observe the resulting mode ('''NO_GPS''') and trajectory. In this mode, the autopilot uses the failsafe roll, pitch and throttle settings defined in the airframe file. Note that in a real flight, an aircraft without GPS won't be able to send its position ... The simulation is cheating here !&lt;br /&gt;
* The time scale: If you are in a hurry ... Do not use a time higher than 2 for this first demonstration.&lt;br /&gt;
&lt;br /&gt;
== Other navigation patterns ==&lt;br /&gt;
&lt;br /&gt;
Using the buttons in the strip, you can play with other navigation patterns: eigh figure, oval, survey of a rectangle (with a north-south sweeping), ''Turn around here'' (which sets a waypoint to the current location of the plane and flies a circle around).&lt;br /&gt;
&lt;br /&gt;
== Landing ==&lt;br /&gt;
&lt;br /&gt;
To automatically land the aircraft:&lt;br /&gt;
* Set the '''TD''' (Touch Down) waypoint where you want to land. Be sure that the waypoint is on the ground (185m in Muret)&lt;br /&gt;
* Set the '''AF''' (Approach Fix) waypoint where you want to start the final descent (the ''glide''). If you have set some wind with Gaia, you probably want to fly '''AF-TD''' upwind (an estimation of the wind experienced by the aircraft is displayed in the left-upper corner of the map).&lt;br /&gt;
* Switch to the '''Land right''' or the '''Land left''' block (icons in the strip) according to the direction of the last turn you want to do (for example, if '''AF''' is on the east side of '''TD''' and you want to maneuvre from the north, choose a '''Land right''') &lt;br /&gt;
&lt;br /&gt;
== Multiple UAV Simulation ==&lt;br /&gt;
&lt;br /&gt;
To simulate multiple aircrafts, you just have to launch a second simulator (tools-&amp;gt;simulator, then -a yourairframe) and the server and the GCS should take care of the rest.&lt;br /&gt;
&lt;br /&gt;
== View the simulation in Flight Gear ==&lt;br /&gt;
&lt;br /&gt;
To view the simulation in Flight Gear, do the following:&lt;br /&gt;
*in your root folder:&lt;br /&gt;
 sudo apt-get install flightgear&lt;br /&gt;
*go to Paparazzi&lt;br /&gt;
 cd ~/paparazzi&lt;br /&gt;
 ./paparazzi&lt;br /&gt;
* In Paparazzi Center, add to the simulator command the &amp;lt;tt&amp;gt;-fg&amp;lt;/tt&amp;gt; option plus the IP address of the machine running flightgear:&lt;br /&gt;
 .../sw/simulator/launchsitl -a TJ1 -fg 127.0.0.1 -boot -norc&lt;br /&gt;
* Launch Flight Gear with the following command:&lt;br /&gt;
 fgfs --fdm=null --native-gui=socket,in,30,,5501,udp&lt;br /&gt;
&lt;br /&gt;
=== Why is it night in Flight Gear, if my sim is flying during the day? ===&lt;br /&gt;
The time that is sent to Flight Gear is hard coded into the code, so if you try to view the output of the simulation and your simulated flight is located far from France, in Flight Gear, everything may be dark. If your simulated flight is in France, then you will always have daylight in Flight Gear. To fix this, do the following (you will need to have paparazzi-dev installed to do this):&lt;br /&gt;
&lt;br /&gt;
* Get the Unix time during your '''local daylight hours''' by running the following command in your terminal:&lt;br /&gt;
 date +%s&lt;br /&gt;
* In the file: paparazzi/sw/simulator/fg.c find the line(line 44):&lt;br /&gt;
 msg.cur_time = 3213092700ul;//time(NULL);&lt;br /&gt;
* Paste the output from &amp;quot;date +%s&amp;quot; in place of &amp;quot;3213092700&amp;quot;&lt;br /&gt;
* Now you will have to rebuild paparazzi, so in the terminal change to the paparazzi directory and run:&lt;br /&gt;
 make clean&lt;br /&gt;
 make&lt;br /&gt;
* In Paparazzi Center clean and rebuild your simulation&lt;br /&gt;
* Launch the simulation and Flight Gear, and Flight Gear should be flying in daylight.&lt;br /&gt;
&lt;br /&gt;
== JSBSim ==&lt;br /&gt;
Paparazzi can work with [http://jsbsim.sourceforge.net/ JSBSim].&lt;br /&gt;
&lt;br /&gt;
For a fixed wing aircraft:&lt;br /&gt;
&lt;br /&gt;
In your airframe file add the section:&lt;br /&gt;
&lt;br /&gt;
  &amp;lt;section name=&amp;quot;SIMU&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;define name=&amp;quot;JSBSIM_MODEL&amp;quot; value=&amp;quot;\&amp;quot;Malolo1\&amp;quot;&amp;quot;/&amp;gt;&lt;br /&gt;
    &amp;lt;define name=&amp;quot;JSBSIM_IR_ROLL_NEUTRAL&amp;quot; value=&amp;quot;RadOfDeg(0.)&amp;quot;/&amp;gt;&lt;br /&gt;
    &amp;lt;define name=&amp;quot;JSBSIM_IR_PITCH_NEUTRAL&amp;quot; value=&amp;quot;RadOfDeg(0.)&amp;quot;/&amp;gt;&lt;br /&gt;
  &amp;lt;/section&amp;gt;&lt;br /&gt;
&lt;br /&gt;
In this case, the JSBSIM model used is conf/simulator/Malolo1. To create your own model make a new dir under conf/simulator and put your JSBSIM model there and adapt the JSBSIM_MODEL in the SIMU section accordingly.&lt;br /&gt;
&lt;br /&gt;
And add to the makefile section of your airframe file something like:&lt;br /&gt;
&lt;br /&gt;
 include $(PAPARAZZI_SRC)/conf/autopilot/sitl_jsbsim.makefile&lt;br /&gt;
 jsbsim.CFLAGS += -I/opt/jsbsim/include/JSBSim &lt;br /&gt;
 jsbsim.LDFLAGS += -L/opt/jsbsim/lib/ &lt;br /&gt;
 jsbsim.CFLAGS += -DBOARD_CONFIG=\&amp;quot;tiny.h\&amp;quot; -DAGR_CLIMB -DLOITER_TRIM -DALT_KALMAN jsbsim.srcs += $(SIMDIR)/sim_ac_fw.c&lt;br /&gt;
&lt;br /&gt;
Of course you might need to adapt the JSBSIM path (for jsbsim.CFLAGS and jsbsim.LDFLAGS) depending on where you installed it.&lt;br /&gt;
&lt;br /&gt;
An example airframe file that might be useful is:  /conf/airframes/jsbsim.xml&lt;/div&gt;</summary>
		<author><name>Andrelim</name></author>
	</entry>
	<entry>
		<id>http://wiki.paparazziuav.org/w/index.php?title=GCS&amp;diff=8456</id>
		<title>GCS</title>
		<link rel="alternate" type="text/html" href="http://wiki.paparazziuav.org/w/index.php?title=GCS&amp;diff=8456"/>
		<updated>2011-01-24T09:12:07Z</updated>

		<summary type="html">&lt;p&gt;Andrelim: /* Strips */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{|&lt;br /&gt;
|-valign=&amp;quot;top&amp;quot;&lt;br /&gt;
|__TOC__&lt;br /&gt;
|&lt;br /&gt;
[[Image:gcs.jpg|frame|right|The Paparazzi Ground Control Station is the heart of the system and the user's primary interaction interface.]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Strips ==&lt;br /&gt;
&lt;br /&gt;
Each A/C has an associated strip that displays information about the A/C and provides buttons for common commands. The strip has the following layout by default. Paparazzi GCS is very flexible and the strip can have more or less buttons according to your configuration.&lt;br /&gt;
&lt;br /&gt;
[[Image:strip.png|Aircraft information strip]]&lt;br /&gt;
&lt;br /&gt;
=== Displayed information ===&lt;br /&gt;
&lt;br /&gt;
* Left: Flight information&lt;br /&gt;
* Center: Navigation information&lt;br /&gt;
* Right: Navigation control&lt;br /&gt;
* Bottom: Custom navigation and setting buttons&lt;br /&gt;
&lt;br /&gt;
=== Actions ===&lt;br /&gt;
&lt;br /&gt;
Every change in the waypoints (position or/and altitude) must be confirmed with the dialog box that appears after the move. A modified waypoint remains animated on the map and the GCS continues to re-send the move request until confirmation is received from the aircraft.&lt;br /&gt;
When clicked, the '''Mark''' button places a mark on the map at the A/C position. A snapshot from the video plugin is associated to this mark and can be viewed by moving the mouse over the mark. A click on the mark opens a dialog box allowing to delete the mark.&lt;br /&gt;
A click on the colored bar at the top selects the corresponding A/C in the [[#notebook|Notebook]].&lt;br /&gt;
&lt;br /&gt;
== Map ==&lt;br /&gt;
&lt;br /&gt;
[[Image:GCSmap.png|thumb|400px|Sample map showing the various features]]&lt;br /&gt;
&lt;br /&gt;
=== Display ===&lt;br /&gt;
&lt;br /&gt;
The map display contains the following information:&lt;br /&gt;
* The A/C track: it can be erased ''via'' the ''Clear track'' option from the A/C menu.&lt;br /&gt;
* The A/C label (in clear blue near the A/C) contains the name of the A/C (Plaster), it's altitude (218 m) and it's ground speed (11.99 m/s). This option default is off. It can be activated with the ''A/C label'' option from the A/C menu.&lt;br /&gt;
* The carrot (the orange triangle). This is the point the A/C is following during autonomous navigation.&lt;br /&gt;
* The waypoints defined in the flight plan (blue diamonds).&lt;br /&gt;
* The intended trajectory is shown as a green line, in this example a circle around waypoint 2.&lt;br /&gt;
* The default background is black. [[#google_tiles|Map Photo Tiles]] or [[Maps|user defined maps]] can be loaded to provide navigation reference.&lt;br /&gt;
* The camera footprint (the grey polygon) is representative of the swath of land currently seen by the onboard camera. This option default is off. It can be activated with the ''Cam footprint'' option from the A/C menu. see also [[Pan_Tilt_Camera]]&lt;br /&gt;
* The WGS84 coordinates of the mouse cursor are displayed at the top right hand corner (43.462019   1.270474).&lt;br /&gt;
* A UTM kilometric grid can be added to the background ''via'' the ''UTM grid'' option from the ''Nav'' menu.&lt;br /&gt;
* The height Above Ground Level (AGL) displays the ground altitude of the mouse near the geographic position in the top right hand corner. The [http://srtm.usgs.gov/ SRTM] option must be enabled in the ''Nav'' menu. The height information comes from SRTM data files (&amp;lt;tt&amp;gt;.hgt.zip&amp;lt;/tt&amp;gt; or &amp;lt;tt&amp;gt;.hgt.bz2&amp;lt;/tt&amp;gt;) and must be copied to the &amp;lt;tt&amp;gt;data/srtm/&amp;lt;/tt&amp;gt; directory. They can be downloaded from [http://dds.cr.usgs.gov/srtm/version2_1/SRTM3/ http://dds.cr.usgs.gov/srtm/version2_1/SRTM3/]. For example: http://dds.cr.usgs.gov/srtm/version2_1/SRTM3/Eurasia/N47E016.hgt.zip is for 47 deg North latitude and 16 deg East longitude.&lt;br /&gt;
&lt;br /&gt;
=== Navigation ===&lt;br /&gt;
&lt;br /&gt;
You can pan/zoom the map using the following:&lt;br /&gt;
* Pan with the blue arrows on the map or use the arrow keys on the keyboard&lt;br /&gt;
* zoom in/out with the mouse scroll wheel, the page up/page down buttons or the small up/down buttons at the top right hand corner where the zoom factor is displayed&lt;br /&gt;
* fit the map to the window, in order to see all the waypoints and A/C, with the '''f''' key or the ''Fit'' option from the ''Nav'' menu;&lt;br /&gt;
* center the map on an A/C with the ''Center A/C'' option from the corresponding A/C menu.&lt;br /&gt;
&lt;br /&gt;
=== Map Photo Tiles ===&lt;br /&gt;
The default black background can be automatically filled with calibrated satellite photo tiles from Openstreetmaps, Google Maps or MS Maps. Note: If you download too much map data from Google into the GCS you may be blocked for downloading further map data for 24 hours. With OpenStreetmaps data and MS data there is no such limitation.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
See the [[Maps]] page for more info.&lt;br /&gt;
&lt;br /&gt;
=== Waypoint Editing ===&lt;br /&gt;
&lt;br /&gt;
The properties of any waypoint in the currently loaded flight plan can be modified by two methods:&lt;br /&gt;
* Drag and drop the waypoints to a new location (a confirmation dialog will appear).&lt;br /&gt;
* A single left click on a waypoint opens a dialog box where you can edit the waypoint's coordinates and altitude.&lt;br /&gt;
&lt;br /&gt;
Waypoint edits are sent to the aircraft immediately upon confirmation in the dialog box.  The GCS will re-send the data and the waypoint will animate until the aircraft confirms receipt of the move request.  New waypoints cannot be added during flight.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
See the [[Flight_Plans|Flight plans]] and [[Flight_Plan_Editor|Flight Plan Editor]] pages for more information on waypoints.&lt;br /&gt;
&lt;br /&gt;
== Notebook ==&lt;br /&gt;
&lt;br /&gt;
The notebook frame contains one page for each running aircraft. Each aircraft page is itself divided into subpages displaying telemetry data and giving access to the autopilot tuning parameters.&lt;br /&gt;
&lt;br /&gt;
Note that the colored tabs at the top of this section allow the user to select among multiple aircraft.&lt;br /&gt;
&lt;br /&gt;
=== Flight Plan ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;center&amp;gt;&lt;br /&gt;
[[Image:GCSfp.png|Flight plan tree]]&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The full tree of the flight plan is given in this page. The current block and the current stage are highlighted. A double-click on a block allows the operator to immediately switch navigation to this block.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
See the [[Flight_Plans|Flight plans]] and [[Flight_Plan_Editor|Flight Plan Editor]] pages for more information on flight plans.&lt;br /&gt;
&lt;br /&gt;
=== Settings ===&lt;br /&gt;
&amp;lt;center&amp;gt;&lt;br /&gt;
[[Image:GCSsettings.png|Settings tab]]&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
The setting page allows the operator to change variable values during flight. The layout of the page is generated from the &amp;lt;tt&amp;gt;dl_settings&amp;lt;/tt&amp;gt; section of the settings.xml file, one tab is associated to every section and sub-section.&lt;br /&gt;
&lt;br /&gt;
On each line is displayed (from left to right), the name of the variable, its current value (periodically sent by the A/C), a slider or radio buttons for user input, and commit/undo buttons.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
See the [[Telemetry#Settings|Telemetry]] page for more information on settings.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
The save button of this tab opens the following popup which proposes to the user to save the current values in the airframe file (according to the &amp;lt;tt&amp;gt;param&amp;lt;/tt&amp;gt; attribute in the [[Telemetry#Settings|setttings]] configuration file). The values of the checked rows will be saved in the airframe file (or any other file) for further use. Units (e.g. deg or rad) are taken into account. '''It is recommended to backup the airframe file before overwriting it with this utility''' (even if time-stamped copy of the airframe file is actually automatically done).&lt;br /&gt;
&lt;br /&gt;
Symetrically, the Upload button of this dialog button will send all the checked values of the airframe file to the live aircraft.&lt;br /&gt;
&amp;lt;center&amp;gt;&lt;br /&gt;
[[Image:Save settings.png|Settings tab]]&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== PFD ===&lt;br /&gt;
&lt;br /&gt;
[[Image:GCSpfd.png|Primary Flight Display]]&lt;br /&gt;
&lt;br /&gt;
The Primary Flight Display contains an artificial horizon and two scales displaying the current ground speed (left side) and the altitude (right side). Minimum and maximum speeds are shown under and above the speed scale. A click on the scale resets these values to the current speed value.&lt;br /&gt;
&lt;br /&gt;
=== GPS, Infrared, Wind ===&lt;br /&gt;
&lt;br /&gt;
The '''GPS''' page gives the list of satellites tracked by the receiver and their respective signal strengths in dB.&lt;br /&gt;
(35 is low, 45 is excellent) and if they are used to compute the fix (green: used, red:not used). This page may help to tune the position of the receiver on the aircraft relatively to other components (e.g. datalink and video transmitters).&lt;br /&gt;
&lt;br /&gt;
The '''Infrared''' page is only used for aircraft not equipped with the vertical infrared sensor. This page reports the required pre-flight calibration value as well as the evolution of the in-flight calibration correction factor (from hybridization with the GPS information).&lt;br /&gt;
&lt;br /&gt;
The '''Misc''' page displays the estimated wind velocity computed by the ground station during flight and relayed back to the aircraft.  Wind velocity is estimated by vector addition of the GPS-measured ground speed in many different directions during level flight.  This computation may soon be performed by the autopilot instead of the ground station.&lt;br /&gt;
&lt;br /&gt;
== Video Plugin ==&lt;br /&gt;
&lt;br /&gt;
The &amp;lt;tt&amp;gt;-mplayer&amp;lt;/tt&amp;gt; option of GCS allows the user to display a video stream in this window.  The video window can also be exchanged with the map by clicking anywhere inside the frame or from the menu.&lt;br /&gt;
Use the following line in your [[Control_panel.xml|control panel]] to enable the video window.&lt;br /&gt;
 &amp;lt;tt&amp;gt;path_to_ground_segment/cockpit/gcs -mplayer rtsp://localhost:7070/video -layout appropriate_layout.xml&amp;lt;/tt&amp;gt;&lt;br /&gt;
Note that a &amp;lt;tt&amp;gt;plugin&amp;lt;/tt&amp;gt; widget must be specified in the used layout:&lt;br /&gt;
 &amp;lt;tt&amp;gt; &amp;lt;widget size=&amp;quot;300&amp;quot; name=&amp;quot;plugin&amp;quot;/&amp;gt;&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The &amp;lt;tt&amp;gt;-plugin&amp;lt;/tt&amp;gt; option is another way to use the plugin widget: the X subwindow id is given to the provided command:&lt;br /&gt;
 &amp;lt;tt&amp;gt;path_to_ground_segment/cockpit/gcs -plugin &amp;quot;mplayer video_stream -wid &amp;quot; -layout appropriate_layout.xml&amp;lt;/tt&amp;gt;&lt;br /&gt;
 &amp;lt;tt&amp;gt;path_to_ground_segment/cockpit/gcs -plugin &amp;quot;cvlc video_stream --drawable-xid=&amp;quot; -layout appropriate_layout.xml&amp;lt;/tt&amp;gt;&lt;br /&gt;
The &amp;lt;tt&amp;gt;--vout-event=3&amp;lt;/tt&amp;gt; option can be used for vlc to disable mouse and keyboard events handling&lt;br /&gt;
&lt;br /&gt;
== Altitude graph widget ==&lt;br /&gt;
&amp;lt;center&amp;gt;&lt;br /&gt;
[[Image:altgraph.png|400px|The GCS with the altitude graph]]&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
An altitude graph can be displayed in the GCS by adding the widget ''altgraph'' in the layout configuration (See the [[GCS_Configuration|GCS configuration]] page). An example is provided in conf/gcs/alt.xml. To use this layout add -layout alt.xml to the /conf/control_panel.xml file. This type of layout is more suited to a multi UAV set up. The Papget ruler is a much less intrusive and better tool when you are only flying a single aircraft.&lt;br /&gt;
&lt;br /&gt;
==Papgets==&lt;br /&gt;
Graphical objects can be added to 2D maps: text, rule, gauge, buttons, .... These objects are named ''papgets''. The following snapshot&lt;br /&gt;
shows an example with buttons (left side), gauges (lower left corner), text (upper right corner) and ruler (right side). This example&lt;br /&gt;
has been produced with a layout file provided in the distribution:&lt;br /&gt;
&lt;br /&gt;
 .../gcs -layout papgets.xml &lt;br /&gt;
&lt;br /&gt;
&amp;lt;center&amp;gt;&lt;br /&gt;
[[Image:papgets.png|516px|A 2D map augmented with papgets]]&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Telemetry data report===&lt;br /&gt;
The easiest way to create a papget displaying telemetry data is to drag&amp;amp;drop a message field from the Messages window onto the 2D map of the GCS. The default rendering is then a string of text. Clicking on it allows the user to change its type (currently text, ruler or gauge) and some of its attributes (color, size, range for a gauge, format for a text ...). A papget can be moved by simply dragging it.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;center&amp;gt;&lt;br /&gt;
[[Image:papget_editor.png|Main characteristics of a papget can be dynamically edited]]&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Papgets can be saved in the layout of the GCS (from the Nav menu). The description is saved in an XML file (in &amp;lt;tt&amp;gt;conf/gcs/&amp;lt;/tt&amp;gt; folder) which can be manually edited:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
 &amp;lt;papget type=&amp;quot;message_field&amp;quot; display=&amp;quot;gauge&amp;quot; x=&amp;quot;47&amp;quot; y=&amp;quot;414&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;property name=&amp;quot;field&amp;quot; value=&amp;quot;BAT:voltage&amp;quot;/&amp;gt;&lt;br /&gt;
   &amp;lt;property name=&amp;quot;scale&amp;quot; value=&amp;quot;0.1&amp;quot;/&amp;gt;&lt;br /&gt;
   &amp;lt;property name=&amp;quot;min&amp;quot; value=&amp;quot;0.&amp;quot;/&amp;gt;&lt;br /&gt;
   &amp;lt;property name=&amp;quot;max&amp;quot; value=&amp;quot;15.&amp;quot;/&amp;gt;&lt;br /&gt;
   &amp;lt;property name=&amp;quot;size&amp;quot; value=&amp;quot;50.&amp;quot;/&amp;gt;&lt;br /&gt;
   &amp;lt;property name=&amp;quot;text&amp;quot; value=&amp;quot;Bat(V)&amp;quot;/&amp;gt;&lt;br /&gt;
 &amp;lt;/papget&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The file is used later by giving it to the gcs process:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
 .../gcs -layout my_fancy_papgets.xml&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Buttons===&lt;br /&gt;
In the same way, user buttons from the strip can be dragged&amp;amp;dropped on the 2D map. However, they currently cannot be directly edited, and&lt;br /&gt;
attributes changes have to be done in the XML file. Two types of button are provided to jump to a block or to set a value:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;papget type=&amp;quot;goto_block&amp;quot; display=&amp;quot;button&amp;quot; x=&amp;quot;10&amp;quot; y=&amp;quot;300&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;property name=&amp;quot;block_name&amp;quot; value=&amp;quot;Standby&amp;quot;/&amp;gt;&lt;br /&gt;
   &amp;lt;property name=&amp;quot;icon&amp;quot; value=&amp;quot;home.png&amp;quot;/&amp;gt;&lt;br /&gt;
 &amp;lt;/papget&amp;gt;&lt;br /&gt;
 &amp;lt;papget type=&amp;quot;variable_setting&amp;quot; display=&amp;quot;button&amp;quot; x=&amp;quot;10&amp;quot; y=&amp;quot;250&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;property name=&amp;quot;variable&amp;quot; value=&amp;quot;launch&amp;quot;/&amp;gt;&lt;br /&gt;
   &amp;lt;property name=&amp;quot;value&amp;quot; value=&amp;quot;1.&amp;quot;/&amp;gt;&lt;br /&gt;
   &amp;lt;property name=&amp;quot;icon&amp;quot; value=&amp;quot;launch.png&amp;quot;/&amp;gt;&lt;br /&gt;
  &amp;lt;/papget&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Video===&lt;br /&gt;
A video stream can be rendered in a &amp;lt;tt&amp;gt;video_plugin&amp;lt;/tt&amp;gt; papget, using the mplayer player:&lt;br /&gt;
 &amp;lt;papget type=&amp;quot;video_plugin&amp;quot; display=&amp;quot;mplayer&amp;quot; x=&amp;quot;300&amp;quot; y=&amp;quot;250&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;property name=&amp;quot;video_feed&amp;quot; value=&amp;quot;my video source&amp;quot;/&amp;gt;&lt;br /&gt;
  &amp;lt;property name=&amp;quot;width&amp;quot; VALUE=&amp;quot;320&amp;quot;/&amp;gt;&lt;br /&gt;
  &amp;lt;property name=&amp;quot;height&amp;quot; VALUE=&amp;quot;240&amp;quot;/&amp;gt;&lt;br /&gt;
 &amp;lt;/papget&amp;gt;&lt;br /&gt;
or any video player which takes in option the X window id :&lt;br /&gt;
 &amp;lt;papget type=&amp;quot;video_plugin&amp;quot; display=&amp;quot;plugin&amp;quot; x=&amp;quot;300&amp;quot; y=&amp;quot;250&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;property name=&amp;quot;command&amp;quot; value=&amp;quot;cvlc video_source --drawable-xid=&amp;quot;/&amp;gt;&lt;br /&gt;
  &amp;lt;property NAME=&amp;quot;width&amp;quot; VALUE=&amp;quot;320&amp;quot;/&amp;gt;&lt;br /&gt;
  &amp;lt;property NAME=&amp;quot;height&amp;quot; VALUE=&amp;quot;240&amp;quot;/&amp;gt;&lt;br /&gt;
 &amp;lt;/papget&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Development===&lt;br /&gt;
Graphical appearence of papgets is defined in &amp;lt;tt&amp;gt;sw/lib/ocaml/papget_renderer.ml&amp;lt;/tt&amp;gt;. A renderer must implement the Papget_renderer.t class type interface (&amp;lt;tt&amp;gt;canvas_text&amp;lt;/tt&amp;gt; is probably the simpler example) and listed in the &amp;lt;tt&amp;gt;renderers&amp;lt;/tt&amp;gt; list to be available&lt;br /&gt;
in the edit popup box.&lt;br /&gt;
&lt;br /&gt;
The XML configuration is parsed in &amp;lt;tt&amp;gt;sw/ground_segment/cockpit/papgets.ml&amp;lt;/tt&amp;gt;: a new created papget identifier must listed here.&lt;br /&gt;
&lt;br /&gt;
== Alarms ==&lt;br /&gt;
&lt;br /&gt;
The alarm window displays a list of recent errors such as:&lt;br /&gt;
* Low battery warning&lt;br /&gt;
* Low altitude warning&lt;br /&gt;
* Autopilot mode changes (i.e. Manual, Auto2)&lt;br /&gt;
* Flight plan block changes&lt;br /&gt;
&lt;br /&gt;
These alarms can be provided via the speaker using the [[speech]] function.&lt;br /&gt;
&lt;br /&gt;
== Configuration Options ==&lt;br /&gt;
The GCS is highly configurable and modules can be added, removed, or resized as needed. In addition to this the gcs has many command line options which can be used when launching the GCS&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
See the [[GCS_Configuration|GCS configuration]] page for details.&lt;br /&gt;
&lt;br /&gt;
== Simulation of Flightplan ==&lt;br /&gt;
Complex flight plans should always be carefully tested prior to flight.  See the [[Simulation|simulation]] page for details.&lt;br /&gt;
&lt;br /&gt;
==Related Links:==&lt;/div&gt;</summary>
		<author><name>Andrelim</name></author>
	</entry>
	<entry>
		<id>http://wiki.paparazziuav.org/w/index.php?title=Overview&amp;diff=8455</id>
		<title>Overview</title>
		<link rel="alternate" type="text/html" href="http://wiki.paparazziuav.org/w/index.php?title=Overview&amp;diff=8455"/>
		<updated>2011-01-24T09:11:23Z</updated>

		<summary type="html">&lt;p&gt;Andrelim: /* Disclaimers */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[image:Paparazzi_System_overview.jpg|right|Paparazzi System Overview]]&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
== System Architecture ==&lt;br /&gt;
&lt;br /&gt;
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):&lt;br /&gt;
&lt;br /&gt;
[[Image:Pprz_communication_agents.gif]]&lt;br /&gt;
&lt;br /&gt;
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:&lt;br /&gt;
* '''messages''' - a real-time display of all telemetry data&lt;br /&gt;
* '''server''' - an agent that logs, distributes, and preprocesses these messages for the GCS.&lt;br /&gt;
All of these processes run simultaneously and each module is independently controled and configured from [[Paparazzi_Center]]. &lt;br /&gt;
&lt;br /&gt;
Your first experiments with the system should be with the simulator where everything runs on your local machine. The configuration is then slightly different:&lt;br /&gt;
&lt;br /&gt;
[[Image:comm_sitl.gif]]&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Aircraft ==&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[image:Paparazzi_Equiped_Aircraft.jpg|Paparazzi Equiped Aircraft]]&lt;br /&gt;
|&lt;br /&gt;
* '''A'''utopilot Control Board&lt;br /&gt;
* '''B'''attery&lt;br /&gt;
* '''D'''atalink Radio-Modem &amp;amp; Antenna&lt;br /&gt;
* '''G'''PS Receiver&lt;br /&gt;
* '''I'''R Sensor Board&lt;br /&gt;
* '''M'''otor &amp;amp; Controller&lt;br /&gt;
* '''R'''C Receiver &amp;amp; Antenna&lt;br /&gt;
* '''S'''ervos&lt;br /&gt;
* '''P'''ayload = Camera &amp;amp; Video Transmitter&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== The Airframe ===&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
The [[Gallery|User's Gallery]] shows some of the many Paparazzi aircraft.&lt;br /&gt;
&lt;br /&gt;
=== Airborne Electronics ===&lt;br /&gt;
&lt;br /&gt;
===== Controller Board =====&lt;br /&gt;
&lt;br /&gt;
[[image:tiny_proto1_top_small.jpg|frame|Tiny Controller Board]]&lt;br /&gt;
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. &lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
More details on the controller boards are available on the [[Hardware|Hardware Pages]].&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear:both;&amp;quot;/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Sensors =====&lt;br /&gt;
&lt;br /&gt;
[[image:ir_sensor_bot_small.jpg|frame|2 Axis IR Sensor Board]]&lt;br /&gt;
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].  &amp;lt;br&amp;gt;&amp;lt;br&amp;gt; Fixed wing airborne hardware typically includes infrared sensors, GPS &amp;amp; occasionally a gyroscope for roll or pitch rate damping on more agile aircraft.&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
More details on the sensors are available on the [[Sensors|Sensors page]].&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear:both;&amp;quot;/&amp;gt;&lt;br /&gt;
===== Communications =====&lt;br /&gt;
&lt;br /&gt;
[[image:ac4868_transceiver.jpg|frame|Aerocomm AC4868 Radio-Modem]]&lt;br /&gt;
Airborne hardware also includes communications devices : Radio Modem (Datalink) &amp;amp; RC Receiver (Safety Link).&lt;br /&gt;
Any wireless device providing a serial link can be used for the telemetry and the telecontrol (Datalink). &lt;br /&gt;
&lt;br /&gt;
More details on communications hardware are available on the [[Modems|Modems page]].&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear:both;&amp;quot;/&amp;gt;&lt;br /&gt;
===== Example Setup =====&lt;br /&gt;
&lt;br /&gt;
[[image:ppzsetup002.jpg|frame|Sample 2 servo setup]]&lt;br /&gt;
A typical configuration would include two servos (elevon setup), receiver, IR sensors, FTDI or RF Modem for serial communications either wired or wireless. ESC is not shown. NOTE: DO NOT CONNECT POWER WIRE FROM ESC TO TINY. Only connect Ground and Signal for the ESC to the Tiny.&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear:both;&amp;quot;/&amp;gt;&lt;br /&gt;
=== Airborne Software ===&lt;br /&gt;
&lt;br /&gt;
The Paparazzi autopilot provides the following features:&lt;br /&gt;
* RC receiver (PPM signal) decoding&lt;br /&gt;
* Servos and motor controller (PPM signal) control&lt;br /&gt;
* Manual control with the RC&lt;br /&gt;
* Control with augmented stability (named '''AUTO1''')&lt;br /&gt;
* Autonomous navigation (named '''AUTO2''') in 3D, including&lt;br /&gt;
** Waypoint navigation&lt;br /&gt;
** Segment and circle navigation&lt;br /&gt;
** Altitude hold, glide following&lt;br /&gt;
** High level flight plan language execution (sequence, loops, goto, ...)&lt;br /&gt;
* Telemetry to the ground station&lt;br /&gt;
* Telecontrol (datalink) from the ground station (navigation control, waypoint modifications, tuning)&lt;br /&gt;
&lt;br /&gt;
The autopilot code is written in C while all the configuration code is translated from XML files at compile time.&lt;br /&gt;
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|Classix]].&lt;br /&gt;
&lt;br /&gt;
== Ground Control Station (GCS) ==&lt;br /&gt;
&lt;br /&gt;
=== Ground Computer ===&lt;br /&gt;
&lt;br /&gt;
The software is developped to be run on a i386 architecture with the [http://www.debian.org Debian GNU/linux] operating system. However a Live CD including all the software is provided: it should be able to boot any standard laptop.&lt;br /&gt;
&lt;br /&gt;
=== Ground Software ===&lt;br /&gt;
&lt;br /&gt;
The software mainly provides&lt;br /&gt;
* compiling tools to produce the airborne code from the configuration;&lt;br /&gt;
* a GUI to control and interact with the UAV(s) during flight;&lt;br /&gt;
* a basic simulator to ease the development of flight plans.&lt;br /&gt;
&lt;br /&gt;
=== Datalink ===&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
=== Safety Link ===&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
== Payloads ==&lt;br /&gt;
&lt;br /&gt;
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&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;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.&lt;br /&gt;
&lt;br /&gt;
== Disclaimers ==&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
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|Contact]] someone from the Paparazzi team before beginning any hardware investment as we can help you get the most out of the system.&lt;/div&gt;</summary>
		<author><name>Andrelim</name></author>
	</entry>
	<entry>
		<id>http://wiki.paparazziuav.org/w/index.php?title=GCS&amp;diff=8454</id>
		<title>GCS</title>
		<link rel="alternate" type="text/html" href="http://wiki.paparazziuav.org/w/index.php?title=GCS&amp;diff=8454"/>
		<updated>2011-01-24T08:51:01Z</updated>

		<summary type="html">&lt;p&gt;Andrelim: /* Strips */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{|&lt;br /&gt;
|-valign=&amp;quot;top&amp;quot;&lt;br /&gt;
|__TOC__&lt;br /&gt;
|&lt;br /&gt;
[[Image:gcs.jpg|frame|right|The Paparazzi Ground Control Station is the heart of the system and the user's primary interaction interface.]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Strips ==&lt;br /&gt;
&lt;br /&gt;
Each A/C has an associated strip that displays information about the A/C and provides buttons for common commands. The strip has the following layout by default. Paparazzi GCS is very flexible and the strip can have more and less buttons according to your configuration.&lt;br /&gt;
&lt;br /&gt;
[[Image:strip.png|Aircraft information strip]]&lt;br /&gt;
&lt;br /&gt;
=== Displayed information ===&lt;br /&gt;
&lt;br /&gt;
* Left: Flight information&lt;br /&gt;
* Center: Navigation information&lt;br /&gt;
* Right: Navigation control&lt;br /&gt;
* Bottom: Custom navigation and setting buttons&lt;br /&gt;
&lt;br /&gt;
=== Actions ===&lt;br /&gt;
&lt;br /&gt;
Every change in the waypoints (position or/and altitude) must be confirmed with the dialog box that appears after the move. A modified waypoint remains animated on the map and the GCS continues to re-send the move request until confirmation is received from the aircraft.&lt;br /&gt;
When clicked, the '''Mark''' button places a mark on the map at the A/C position. A snapshot from the video plugin is associated to this mark and can be viewed by moving the mouse over the mark. A click on the mark opens a dialog box allowing to delete the mark.&lt;br /&gt;
A click on the colored bar at the top selects the corresponding A/C in the [[#notebook|Notebook]].&lt;br /&gt;
&lt;br /&gt;
== Map ==&lt;br /&gt;
&lt;br /&gt;
[[Image:GCSmap.png|thumb|400px|Sample map showing the various features]]&lt;br /&gt;
&lt;br /&gt;
=== Display ===&lt;br /&gt;
&lt;br /&gt;
The map display contains the following information:&lt;br /&gt;
* The A/C track: it can be erased ''via'' the ''Clear track'' option from the A/C menu.&lt;br /&gt;
* The A/C label (in clear blue near the A/C) contains the name of the A/C (Plaster), it's altitude (218 m) and it's ground speed (11.99 m/s). This option default is off. It can be activated with the ''A/C label'' option from the A/C menu.&lt;br /&gt;
* The carrot (the orange triangle). This is the point the A/C is following during autonomous navigation.&lt;br /&gt;
* The waypoints defined in the flight plan (blue diamonds).&lt;br /&gt;
* The intended trajectory is shown as a green line, in this example a circle around waypoint 2.&lt;br /&gt;
* The default background is black. [[#google_tiles|Map Photo Tiles]] or [[Maps|user defined maps]] can be loaded to provide navigation reference.&lt;br /&gt;
* The camera footprint (the grey polygon) is representative of the swath of land currently seen by the onboard camera. This option default is off. It can be activated with the ''Cam footprint'' option from the A/C menu. see also [[Pan_Tilt_Camera]]&lt;br /&gt;
* The WGS84 coordinates of the mouse cursor are displayed at the top right hand corner (43.462019   1.270474).&lt;br /&gt;
* A UTM kilometric grid can be added to the background ''via'' the ''UTM grid'' option from the ''Nav'' menu.&lt;br /&gt;
* The height Above Ground Level (AGL) displays the ground altitude of the mouse near the geographic position in the top right hand corner. The [http://srtm.usgs.gov/ SRTM] option must be enabled in the ''Nav'' menu. The height information comes from SRTM data files (&amp;lt;tt&amp;gt;.hgt.zip&amp;lt;/tt&amp;gt; or &amp;lt;tt&amp;gt;.hgt.bz2&amp;lt;/tt&amp;gt;) and must be copied to the &amp;lt;tt&amp;gt;data/srtm/&amp;lt;/tt&amp;gt; directory. They can be downloaded from [http://dds.cr.usgs.gov/srtm/version2_1/SRTM3/ http://dds.cr.usgs.gov/srtm/version2_1/SRTM3/]. For example: http://dds.cr.usgs.gov/srtm/version2_1/SRTM3/Eurasia/N47E016.hgt.zip is for 47 deg North latitude and 16 deg East longitude.&lt;br /&gt;
&lt;br /&gt;
=== Navigation ===&lt;br /&gt;
&lt;br /&gt;
You can pan/zoom the map using the following:&lt;br /&gt;
* Pan with the blue arrows on the map or use the arrow keys on the keyboard&lt;br /&gt;
* zoom in/out with the mouse scroll wheel, the page up/page down buttons or the small up/down buttons at the top right hand corner where the zoom factor is displayed&lt;br /&gt;
* fit the map to the window, in order to see all the waypoints and A/C, with the '''f''' key or the ''Fit'' option from the ''Nav'' menu;&lt;br /&gt;
* center the map on an A/C with the ''Center A/C'' option from the corresponding A/C menu.&lt;br /&gt;
&lt;br /&gt;
=== Map Photo Tiles ===&lt;br /&gt;
The default black background can be automatically filled with calibrated satellite photo tiles from Openstreetmaps, Google Maps or MS Maps. Note: If you download too much map data from Google into the GCS you may be blocked for downloading further map data for 24 hours. With OpenStreetmaps data and MS data there is no such limitation.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
See the [[Maps]] page for more info.&lt;br /&gt;
&lt;br /&gt;
=== Waypoint Editing ===&lt;br /&gt;
&lt;br /&gt;
The properties of any waypoint in the currently loaded flight plan can be modified by two methods:&lt;br /&gt;
* Drag and drop the waypoints to a new location (a confirmation dialog will appear).&lt;br /&gt;
* A single left click on a waypoint opens a dialog box where you can edit the waypoint's coordinates and altitude.&lt;br /&gt;
&lt;br /&gt;
Waypoint edits are sent to the aircraft immediately upon confirmation in the dialog box.  The GCS will re-send the data and the waypoint will animate until the aircraft confirms receipt of the move request.  New waypoints cannot be added during flight.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
See the [[Flight_Plans|Flight plans]] and [[Flight_Plan_Editor|Flight Plan Editor]] pages for more information on waypoints.&lt;br /&gt;
&lt;br /&gt;
== Notebook ==&lt;br /&gt;
&lt;br /&gt;
The notebook frame contains one page for each running aircraft. Each aircraft page is itself divided into subpages displaying telemetry data and giving access to the autopilot tuning parameters.&lt;br /&gt;
&lt;br /&gt;
Note that the colored tabs at the top of this section allow the user to select among multiple aircraft.&lt;br /&gt;
&lt;br /&gt;
=== Flight Plan ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;center&amp;gt;&lt;br /&gt;
[[Image:GCSfp.png|Flight plan tree]]&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The full tree of the flight plan is given in this page. The current block and the current stage are highlighted. A double-click on a block allows the operator to immediately switch navigation to this block.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
See the [[Flight_Plans|Flight plans]] and [[Flight_Plan_Editor|Flight Plan Editor]] pages for more information on flight plans.&lt;br /&gt;
&lt;br /&gt;
=== Settings ===&lt;br /&gt;
&amp;lt;center&amp;gt;&lt;br /&gt;
[[Image:GCSsettings.png|Settings tab]]&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
The setting page allows the operator to change variable values during flight. The layout of the page is generated from the &amp;lt;tt&amp;gt;dl_settings&amp;lt;/tt&amp;gt; section of the settings.xml file, one tab is associated to every section and sub-section.&lt;br /&gt;
&lt;br /&gt;
On each line is displayed (from left to right), the name of the variable, its current value (periodically sent by the A/C), a slider or radio buttons for user input, and commit/undo buttons.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
See the [[Telemetry#Settings|Telemetry]] page for more information on settings.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
The save button of this tab opens the following popup which proposes to the user to save the current values in the airframe file (according to the &amp;lt;tt&amp;gt;param&amp;lt;/tt&amp;gt; attribute in the [[Telemetry#Settings|setttings]] configuration file). The values of the checked rows will be saved in the airframe file (or any other file) for further use. Units (e.g. deg or rad) are taken into account. '''It is recommended to backup the airframe file before overwriting it with this utility''' (even if time-stamped copy of the airframe file is actually automatically done).&lt;br /&gt;
&lt;br /&gt;
Symetrically, the Upload button of this dialog button will send all the checked values of the airframe file to the live aircraft.&lt;br /&gt;
&amp;lt;center&amp;gt;&lt;br /&gt;
[[Image:Save settings.png|Settings tab]]&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== PFD ===&lt;br /&gt;
&lt;br /&gt;
[[Image:GCSpfd.png|Primary Flight Display]]&lt;br /&gt;
&lt;br /&gt;
The Primary Flight Display contains an artificial horizon and two scales displaying the current ground speed (left side) and the altitude (right side). Minimum and maximum speeds are shown under and above the speed scale. A click on the scale resets these values to the current speed value.&lt;br /&gt;
&lt;br /&gt;
=== GPS, Infrared, Wind ===&lt;br /&gt;
&lt;br /&gt;
The '''GPS''' page gives the list of satellites tracked by the receiver and their respective signal strengths in dB.&lt;br /&gt;
(35 is low, 45 is excellent) and if they are used to compute the fix (green: used, red:not used). This page may help to tune the position of the receiver on the aircraft relatively to other components (e.g. datalink and video transmitters).&lt;br /&gt;
&lt;br /&gt;
The '''Infrared''' page is only used for aircraft not equipped with the vertical infrared sensor. This page reports the required pre-flight calibration value as well as the evolution of the in-flight calibration correction factor (from hybridization with the GPS information).&lt;br /&gt;
&lt;br /&gt;
The '''Misc''' page displays the estimated wind velocity computed by the ground station during flight and relayed back to the aircraft.  Wind velocity is estimated by vector addition of the GPS-measured ground speed in many different directions during level flight.  This computation may soon be performed by the autopilot instead of the ground station.&lt;br /&gt;
&lt;br /&gt;
== Video Plugin ==&lt;br /&gt;
&lt;br /&gt;
The &amp;lt;tt&amp;gt;-mplayer&amp;lt;/tt&amp;gt; option of GCS allows the user to display a video stream in this window.  The video window can also be exchanged with the map by clicking anywhere inside the frame or from the menu.&lt;br /&gt;
Use the following line in your [[Control_panel.xml|control panel]] to enable the video window.&lt;br /&gt;
 &amp;lt;tt&amp;gt;path_to_ground_segment/cockpit/gcs -mplayer rtsp://localhost:7070/video -layout appropriate_layout.xml&amp;lt;/tt&amp;gt;&lt;br /&gt;
Note that a &amp;lt;tt&amp;gt;plugin&amp;lt;/tt&amp;gt; widget must be specified in the used layout:&lt;br /&gt;
 &amp;lt;tt&amp;gt; &amp;lt;widget size=&amp;quot;300&amp;quot; name=&amp;quot;plugin&amp;quot;/&amp;gt;&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The &amp;lt;tt&amp;gt;-plugin&amp;lt;/tt&amp;gt; option is another way to use the plugin widget: the X subwindow id is given to the provided command:&lt;br /&gt;
 &amp;lt;tt&amp;gt;path_to_ground_segment/cockpit/gcs -plugin &amp;quot;mplayer video_stream -wid &amp;quot; -layout appropriate_layout.xml&amp;lt;/tt&amp;gt;&lt;br /&gt;
 &amp;lt;tt&amp;gt;path_to_ground_segment/cockpit/gcs -plugin &amp;quot;cvlc video_stream --drawable-xid=&amp;quot; -layout appropriate_layout.xml&amp;lt;/tt&amp;gt;&lt;br /&gt;
The &amp;lt;tt&amp;gt;--vout-event=3&amp;lt;/tt&amp;gt; option can be used for vlc to disable mouse and keyboard events handling&lt;br /&gt;
&lt;br /&gt;
== Altitude graph widget ==&lt;br /&gt;
&amp;lt;center&amp;gt;&lt;br /&gt;
[[Image:altgraph.png|400px|The GCS with the altitude graph]]&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
An altitude graph can be displayed in the GCS by adding the widget ''altgraph'' in the layout configuration (See the [[GCS_Configuration|GCS configuration]] page). An example is provided in conf/gcs/alt.xml. To use this layout add -layout alt.xml to the /conf/control_panel.xml file. This type of layout is more suited to a multi UAV set up. The Papget ruler is a much less intrusive and better tool when you are only flying a single aircraft.&lt;br /&gt;
&lt;br /&gt;
==Papgets==&lt;br /&gt;
Graphical objects can be added to 2D maps: text, rule, gauge, buttons, .... These objects are named ''papgets''. The following snapshot&lt;br /&gt;
shows an example with buttons (left side), gauges (lower left corner), text (upper right corner) and ruler (right side). This example&lt;br /&gt;
has been produced with a layout file provided in the distribution:&lt;br /&gt;
&lt;br /&gt;
 .../gcs -layout papgets.xml &lt;br /&gt;
&lt;br /&gt;
&amp;lt;center&amp;gt;&lt;br /&gt;
[[Image:papgets.png|516px|A 2D map augmented with papgets]]&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Telemetry data report===&lt;br /&gt;
The easiest way to create a papget displaying telemetry data is to drag&amp;amp;drop a message field from the Messages window onto the 2D map of the GCS. The default rendering is then a string of text. Clicking on it allows the user to change its type (currently text, ruler or gauge) and some of its attributes (color, size, range for a gauge, format for a text ...). A papget can be moved by simply dragging it.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;center&amp;gt;&lt;br /&gt;
[[Image:papget_editor.png|Main characteristics of a papget can be dynamically edited]]&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Papgets can be saved in the layout of the GCS (from the Nav menu). The description is saved in an XML file (in &amp;lt;tt&amp;gt;conf/gcs/&amp;lt;/tt&amp;gt; folder) which can be manually edited:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
 &amp;lt;papget type=&amp;quot;message_field&amp;quot; display=&amp;quot;gauge&amp;quot; x=&amp;quot;47&amp;quot; y=&amp;quot;414&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;property name=&amp;quot;field&amp;quot; value=&amp;quot;BAT:voltage&amp;quot;/&amp;gt;&lt;br /&gt;
   &amp;lt;property name=&amp;quot;scale&amp;quot; value=&amp;quot;0.1&amp;quot;/&amp;gt;&lt;br /&gt;
   &amp;lt;property name=&amp;quot;min&amp;quot; value=&amp;quot;0.&amp;quot;/&amp;gt;&lt;br /&gt;
   &amp;lt;property name=&amp;quot;max&amp;quot; value=&amp;quot;15.&amp;quot;/&amp;gt;&lt;br /&gt;
   &amp;lt;property name=&amp;quot;size&amp;quot; value=&amp;quot;50.&amp;quot;/&amp;gt;&lt;br /&gt;
   &amp;lt;property name=&amp;quot;text&amp;quot; value=&amp;quot;Bat(V)&amp;quot;/&amp;gt;&lt;br /&gt;
 &amp;lt;/papget&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The file is used later by giving it to the gcs process:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
 .../gcs -layout my_fancy_papgets.xml&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Buttons===&lt;br /&gt;
In the same way, user buttons from the strip can be dragged&amp;amp;dropped on the 2D map. However, they currently cannot be directly edited, and&lt;br /&gt;
attributes changes have to be done in the XML file. Two types of button are provided to jump to a block or to set a value:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;papget type=&amp;quot;goto_block&amp;quot; display=&amp;quot;button&amp;quot; x=&amp;quot;10&amp;quot; y=&amp;quot;300&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;property name=&amp;quot;block_name&amp;quot; value=&amp;quot;Standby&amp;quot;/&amp;gt;&lt;br /&gt;
   &amp;lt;property name=&amp;quot;icon&amp;quot; value=&amp;quot;home.png&amp;quot;/&amp;gt;&lt;br /&gt;
 &amp;lt;/papget&amp;gt;&lt;br /&gt;
 &amp;lt;papget type=&amp;quot;variable_setting&amp;quot; display=&amp;quot;button&amp;quot; x=&amp;quot;10&amp;quot; y=&amp;quot;250&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;property name=&amp;quot;variable&amp;quot; value=&amp;quot;launch&amp;quot;/&amp;gt;&lt;br /&gt;
   &amp;lt;property name=&amp;quot;value&amp;quot; value=&amp;quot;1.&amp;quot;/&amp;gt;&lt;br /&gt;
   &amp;lt;property name=&amp;quot;icon&amp;quot; value=&amp;quot;launch.png&amp;quot;/&amp;gt;&lt;br /&gt;
  &amp;lt;/papget&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Video===&lt;br /&gt;
A video stream can be rendered in a &amp;lt;tt&amp;gt;video_plugin&amp;lt;/tt&amp;gt; papget, using the mplayer player:&lt;br /&gt;
 &amp;lt;papget type=&amp;quot;video_plugin&amp;quot; display=&amp;quot;mplayer&amp;quot; x=&amp;quot;300&amp;quot; y=&amp;quot;250&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;property name=&amp;quot;video_feed&amp;quot; value=&amp;quot;my video source&amp;quot;/&amp;gt;&lt;br /&gt;
  &amp;lt;property name=&amp;quot;width&amp;quot; VALUE=&amp;quot;320&amp;quot;/&amp;gt;&lt;br /&gt;
  &amp;lt;property name=&amp;quot;height&amp;quot; VALUE=&amp;quot;240&amp;quot;/&amp;gt;&lt;br /&gt;
 &amp;lt;/papget&amp;gt;&lt;br /&gt;
or any video player which takes in option the X window id :&lt;br /&gt;
 &amp;lt;papget type=&amp;quot;video_plugin&amp;quot; display=&amp;quot;plugin&amp;quot; x=&amp;quot;300&amp;quot; y=&amp;quot;250&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;property name=&amp;quot;command&amp;quot; value=&amp;quot;cvlc video_source --drawable-xid=&amp;quot;/&amp;gt;&lt;br /&gt;
  &amp;lt;property NAME=&amp;quot;width&amp;quot; VALUE=&amp;quot;320&amp;quot;/&amp;gt;&lt;br /&gt;
  &amp;lt;property NAME=&amp;quot;height&amp;quot; VALUE=&amp;quot;240&amp;quot;/&amp;gt;&lt;br /&gt;
 &amp;lt;/papget&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Development===&lt;br /&gt;
Graphical appearence of papgets is defined in &amp;lt;tt&amp;gt;sw/lib/ocaml/papget_renderer.ml&amp;lt;/tt&amp;gt;. A renderer must implement the Papget_renderer.t class type interface (&amp;lt;tt&amp;gt;canvas_text&amp;lt;/tt&amp;gt; is probably the simpler example) and listed in the &amp;lt;tt&amp;gt;renderers&amp;lt;/tt&amp;gt; list to be available&lt;br /&gt;
in the edit popup box.&lt;br /&gt;
&lt;br /&gt;
The XML configuration is parsed in &amp;lt;tt&amp;gt;sw/ground_segment/cockpit/papgets.ml&amp;lt;/tt&amp;gt;: a new created papget identifier must listed here.&lt;br /&gt;
&lt;br /&gt;
== Alarms ==&lt;br /&gt;
&lt;br /&gt;
The alarm window displays a list of recent errors such as:&lt;br /&gt;
* Low battery warning&lt;br /&gt;
* Low altitude warning&lt;br /&gt;
* Autopilot mode changes (i.e. Manual, Auto2)&lt;br /&gt;
* Flight plan block changes&lt;br /&gt;
&lt;br /&gt;
These alarms can be provided via the speaker using the [[speech]] function.&lt;br /&gt;
&lt;br /&gt;
== Configuration Options ==&lt;br /&gt;
The GCS is highly configurable and modules can be added, removed, or resized as needed. In addition to this the gcs has many command line options which can be used when launching the GCS&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
See the [[GCS_Configuration|GCS configuration]] page for details.&lt;br /&gt;
&lt;br /&gt;
== Simulation of Flightplan ==&lt;br /&gt;
Complex flight plans should always be carefully tested prior to flight.  See the [[Simulation|simulation]] page for details.&lt;br /&gt;
&lt;br /&gt;
==Related Links:==&lt;/div&gt;</summary>
		<author><name>Andrelim</name></author>
	</entry>
	<entry>
		<id>http://wiki.paparazziuav.org/w/index.php?title=GCS&amp;diff=8453</id>
		<title>GCS</title>
		<link rel="alternate" type="text/html" href="http://wiki.paparazziuav.org/w/index.php?title=GCS&amp;diff=8453"/>
		<updated>2011-01-24T08:50:05Z</updated>

		<summary type="html">&lt;p&gt;Andrelim: /* Strips */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{|&lt;br /&gt;
|-valign=&amp;quot;top&amp;quot;&lt;br /&gt;
|__TOC__&lt;br /&gt;
|&lt;br /&gt;
[[Image:gcs.jpg|frame|right|The Paparazzi Ground Control Station is the heart of the system and the user's primary interaction interface.]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Strips ==&lt;br /&gt;
&lt;br /&gt;
Each A/C has an associated strip that displays information about the A/C and provides buttons for common commands. The strip has the following layout by default. Paparazzi GCS is very flexible the strip can have more and less button according to your configuration.&lt;br /&gt;
&lt;br /&gt;
[[Image:strip.png|Aircraft information strip]]&lt;br /&gt;
&lt;br /&gt;
=== Displayed information ===&lt;br /&gt;
&lt;br /&gt;
* Left: Flight information&lt;br /&gt;
* Center: Navigation information&lt;br /&gt;
* Right: Navigation control&lt;br /&gt;
* Bottom: Custom navigation and setting buttons&lt;br /&gt;
&lt;br /&gt;
=== Actions ===&lt;br /&gt;
&lt;br /&gt;
Every change in the waypoints (position or/and altitude) must be confirmed with the dialog box that appears after the move. A modified waypoint remains animated on the map and the GCS continues to re-send the move request until confirmation is received from the aircraft.&lt;br /&gt;
When clicked, the '''Mark''' button places a mark on the map at the A/C position. A snapshot from the video plugin is associated to this mark and can be viewed by moving the mouse over the mark. A click on the mark opens a dialog box allowing to delete the mark.&lt;br /&gt;
A click on the colored bar at the top selects the corresponding A/C in the [[#notebook|Notebook]].&lt;br /&gt;
&lt;br /&gt;
== Map ==&lt;br /&gt;
&lt;br /&gt;
[[Image:GCSmap.png|thumb|400px|Sample map showing the various features]]&lt;br /&gt;
&lt;br /&gt;
=== Display ===&lt;br /&gt;
&lt;br /&gt;
The map display contains the following information:&lt;br /&gt;
* The A/C track: it can be erased ''via'' the ''Clear track'' option from the A/C menu.&lt;br /&gt;
* The A/C label (in clear blue near the A/C) contains the name of the A/C (Plaster), it's altitude (218 m) and it's ground speed (11.99 m/s). This option default is off. It can be activated with the ''A/C label'' option from the A/C menu.&lt;br /&gt;
* The carrot (the orange triangle). This is the point the A/C is following during autonomous navigation.&lt;br /&gt;
* The waypoints defined in the flight plan (blue diamonds).&lt;br /&gt;
* The intended trajectory is shown as a green line, in this example a circle around waypoint 2.&lt;br /&gt;
* The default background is black. [[#google_tiles|Map Photo Tiles]] or [[Maps|user defined maps]] can be loaded to provide navigation reference.&lt;br /&gt;
* The camera footprint (the grey polygon) is representative of the swath of land currently seen by the onboard camera. This option default is off. It can be activated with the ''Cam footprint'' option from the A/C menu. see also [[Pan_Tilt_Camera]]&lt;br /&gt;
* The WGS84 coordinates of the mouse cursor are displayed at the top right hand corner (43.462019   1.270474).&lt;br /&gt;
* A UTM kilometric grid can be added to the background ''via'' the ''UTM grid'' option from the ''Nav'' menu.&lt;br /&gt;
* The height Above Ground Level (AGL) displays the ground altitude of the mouse near the geographic position in the top right hand corner. The [http://srtm.usgs.gov/ SRTM] option must be enabled in the ''Nav'' menu. The height information comes from SRTM data files (&amp;lt;tt&amp;gt;.hgt.zip&amp;lt;/tt&amp;gt; or &amp;lt;tt&amp;gt;.hgt.bz2&amp;lt;/tt&amp;gt;) and must be copied to the &amp;lt;tt&amp;gt;data/srtm/&amp;lt;/tt&amp;gt; directory. They can be downloaded from [http://dds.cr.usgs.gov/srtm/version2_1/SRTM3/ http://dds.cr.usgs.gov/srtm/version2_1/SRTM3/]. For example: http://dds.cr.usgs.gov/srtm/version2_1/SRTM3/Eurasia/N47E016.hgt.zip is for 47 deg North latitude and 16 deg East longitude.&lt;br /&gt;
&lt;br /&gt;
=== Navigation ===&lt;br /&gt;
&lt;br /&gt;
You can pan/zoom the map using the following:&lt;br /&gt;
* Pan with the blue arrows on the map or use the arrow keys on the keyboard&lt;br /&gt;
* zoom in/out with the mouse scroll wheel, the page up/page down buttons or the small up/down buttons at the top right hand corner where the zoom factor is displayed&lt;br /&gt;
* fit the map to the window, in order to see all the waypoints and A/C, with the '''f''' key or the ''Fit'' option from the ''Nav'' menu;&lt;br /&gt;
* center the map on an A/C with the ''Center A/C'' option from the corresponding A/C menu.&lt;br /&gt;
&lt;br /&gt;
=== Map Photo Tiles ===&lt;br /&gt;
The default black background can be automatically filled with calibrated satellite photo tiles from Openstreetmaps, Google Maps or MS Maps. Note: If you download too much map data from Google into the GCS you may be blocked for downloading further map data for 24 hours. With OpenStreetmaps data and MS data there is no such limitation.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
See the [[Maps]] page for more info.&lt;br /&gt;
&lt;br /&gt;
=== Waypoint Editing ===&lt;br /&gt;
&lt;br /&gt;
The properties of any waypoint in the currently loaded flight plan can be modified by two methods:&lt;br /&gt;
* Drag and drop the waypoints to a new location (a confirmation dialog will appear).&lt;br /&gt;
* A single left click on a waypoint opens a dialog box where you can edit the waypoint's coordinates and altitude.&lt;br /&gt;
&lt;br /&gt;
Waypoint edits are sent to the aircraft immediately upon confirmation in the dialog box.  The GCS will re-send the data and the waypoint will animate until the aircraft confirms receipt of the move request.  New waypoints cannot be added during flight.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
See the [[Flight_Plans|Flight plans]] and [[Flight_Plan_Editor|Flight Plan Editor]] pages for more information on waypoints.&lt;br /&gt;
&lt;br /&gt;
== Notebook ==&lt;br /&gt;
&lt;br /&gt;
The notebook frame contains one page for each running aircraft. Each aircraft page is itself divided into subpages displaying telemetry data and giving access to the autopilot tuning parameters.&lt;br /&gt;
&lt;br /&gt;
Note that the colored tabs at the top of this section allow the user to select among multiple aircraft.&lt;br /&gt;
&lt;br /&gt;
=== Flight Plan ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;center&amp;gt;&lt;br /&gt;
[[Image:GCSfp.png|Flight plan tree]]&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The full tree of the flight plan is given in this page. The current block and the current stage are highlighted. A double-click on a block allows the operator to immediately switch navigation to this block.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
See the [[Flight_Plans|Flight plans]] and [[Flight_Plan_Editor|Flight Plan Editor]] pages for more information on flight plans.&lt;br /&gt;
&lt;br /&gt;
=== Settings ===&lt;br /&gt;
&amp;lt;center&amp;gt;&lt;br /&gt;
[[Image:GCSsettings.png|Settings tab]]&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
The setting page allows the operator to change variable values during flight. The layout of the page is generated from the &amp;lt;tt&amp;gt;dl_settings&amp;lt;/tt&amp;gt; section of the settings.xml file, one tab is associated to every section and sub-section.&lt;br /&gt;
&lt;br /&gt;
On each line is displayed (from left to right), the name of the variable, its current value (periodically sent by the A/C), a slider or radio buttons for user input, and commit/undo buttons.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
See the [[Telemetry#Settings|Telemetry]] page for more information on settings.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
The save button of this tab opens the following popup which proposes to the user to save the current values in the airframe file (according to the &amp;lt;tt&amp;gt;param&amp;lt;/tt&amp;gt; attribute in the [[Telemetry#Settings|setttings]] configuration file). The values of the checked rows will be saved in the airframe file (or any other file) for further use. Units (e.g. deg or rad) are taken into account. '''It is recommended to backup the airframe file before overwriting it with this utility''' (even if time-stamped copy of the airframe file is actually automatically done).&lt;br /&gt;
&lt;br /&gt;
Symetrically, the Upload button of this dialog button will send all the checked values of the airframe file to the live aircraft.&lt;br /&gt;
&amp;lt;center&amp;gt;&lt;br /&gt;
[[Image:Save settings.png|Settings tab]]&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== PFD ===&lt;br /&gt;
&lt;br /&gt;
[[Image:GCSpfd.png|Primary Flight Display]]&lt;br /&gt;
&lt;br /&gt;
The Primary Flight Display contains an artificial horizon and two scales displaying the current ground speed (left side) and the altitude (right side). Minimum and maximum speeds are shown under and above the speed scale. A click on the scale resets these values to the current speed value.&lt;br /&gt;
&lt;br /&gt;
=== GPS, Infrared, Wind ===&lt;br /&gt;
&lt;br /&gt;
The '''GPS''' page gives the list of satellites tracked by the receiver and their respective signal strengths in dB.&lt;br /&gt;
(35 is low, 45 is excellent) and if they are used to compute the fix (green: used, red:not used). This page may help to tune the position of the receiver on the aircraft relatively to other components (e.g. datalink and video transmitters).&lt;br /&gt;
&lt;br /&gt;
The '''Infrared''' page is only used for aircraft not equipped with the vertical infrared sensor. This page reports the required pre-flight calibration value as well as the evolution of the in-flight calibration correction factor (from hybridization with the GPS information).&lt;br /&gt;
&lt;br /&gt;
The '''Misc''' page displays the estimated wind velocity computed by the ground station during flight and relayed back to the aircraft.  Wind velocity is estimated by vector addition of the GPS-measured ground speed in many different directions during level flight.  This computation may soon be performed by the autopilot instead of the ground station.&lt;br /&gt;
&lt;br /&gt;
== Video Plugin ==&lt;br /&gt;
&lt;br /&gt;
The &amp;lt;tt&amp;gt;-mplayer&amp;lt;/tt&amp;gt; option of GCS allows the user to display a video stream in this window.  The video window can also be exchanged with the map by clicking anywhere inside the frame or from the menu.&lt;br /&gt;
Use the following line in your [[Control_panel.xml|control panel]] to enable the video window.&lt;br /&gt;
 &amp;lt;tt&amp;gt;path_to_ground_segment/cockpit/gcs -mplayer rtsp://localhost:7070/video -layout appropriate_layout.xml&amp;lt;/tt&amp;gt;&lt;br /&gt;
Note that a &amp;lt;tt&amp;gt;plugin&amp;lt;/tt&amp;gt; widget must be specified in the used layout:&lt;br /&gt;
 &amp;lt;tt&amp;gt; &amp;lt;widget size=&amp;quot;300&amp;quot; name=&amp;quot;plugin&amp;quot;/&amp;gt;&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The &amp;lt;tt&amp;gt;-plugin&amp;lt;/tt&amp;gt; option is another way to use the plugin widget: the X subwindow id is given to the provided command:&lt;br /&gt;
 &amp;lt;tt&amp;gt;path_to_ground_segment/cockpit/gcs -plugin &amp;quot;mplayer video_stream -wid &amp;quot; -layout appropriate_layout.xml&amp;lt;/tt&amp;gt;&lt;br /&gt;
 &amp;lt;tt&amp;gt;path_to_ground_segment/cockpit/gcs -plugin &amp;quot;cvlc video_stream --drawable-xid=&amp;quot; -layout appropriate_layout.xml&amp;lt;/tt&amp;gt;&lt;br /&gt;
The &amp;lt;tt&amp;gt;--vout-event=3&amp;lt;/tt&amp;gt; option can be used for vlc to disable mouse and keyboard events handling&lt;br /&gt;
&lt;br /&gt;
== Altitude graph widget ==&lt;br /&gt;
&amp;lt;center&amp;gt;&lt;br /&gt;
[[Image:altgraph.png|400px|The GCS with the altitude graph]]&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
An altitude graph can be displayed in the GCS by adding the widget ''altgraph'' in the layout configuration (See the [[GCS_Configuration|GCS configuration]] page). An example is provided in conf/gcs/alt.xml. To use this layout add -layout alt.xml to the /conf/control_panel.xml file. This type of layout is more suited to a multi UAV set up. The Papget ruler is a much less intrusive and better tool when you are only flying a single aircraft.&lt;br /&gt;
&lt;br /&gt;
==Papgets==&lt;br /&gt;
Graphical objects can be added to 2D maps: text, rule, gauge, buttons, .... These objects are named ''papgets''. The following snapshot&lt;br /&gt;
shows an example with buttons (left side), gauges (lower left corner), text (upper right corner) and ruler (right side). This example&lt;br /&gt;
has been produced with a layout file provided in the distribution:&lt;br /&gt;
&lt;br /&gt;
 .../gcs -layout papgets.xml &lt;br /&gt;
&lt;br /&gt;
&amp;lt;center&amp;gt;&lt;br /&gt;
[[Image:papgets.png|516px|A 2D map augmented with papgets]]&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Telemetry data report===&lt;br /&gt;
The easiest way to create a papget displaying telemetry data is to drag&amp;amp;drop a message field from the Messages window onto the 2D map of the GCS. The default rendering is then a string of text. Clicking on it allows the user to change its type (currently text, ruler or gauge) and some of its attributes (color, size, range for a gauge, format for a text ...). A papget can be moved by simply dragging it.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;center&amp;gt;&lt;br /&gt;
[[Image:papget_editor.png|Main characteristics of a papget can be dynamically edited]]&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Papgets can be saved in the layout of the GCS (from the Nav menu). The description is saved in an XML file (in &amp;lt;tt&amp;gt;conf/gcs/&amp;lt;/tt&amp;gt; folder) which can be manually edited:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
 &amp;lt;papget type=&amp;quot;message_field&amp;quot; display=&amp;quot;gauge&amp;quot; x=&amp;quot;47&amp;quot; y=&amp;quot;414&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;property name=&amp;quot;field&amp;quot; value=&amp;quot;BAT:voltage&amp;quot;/&amp;gt;&lt;br /&gt;
   &amp;lt;property name=&amp;quot;scale&amp;quot; value=&amp;quot;0.1&amp;quot;/&amp;gt;&lt;br /&gt;
   &amp;lt;property name=&amp;quot;min&amp;quot; value=&amp;quot;0.&amp;quot;/&amp;gt;&lt;br /&gt;
   &amp;lt;property name=&amp;quot;max&amp;quot; value=&amp;quot;15.&amp;quot;/&amp;gt;&lt;br /&gt;
   &amp;lt;property name=&amp;quot;size&amp;quot; value=&amp;quot;50.&amp;quot;/&amp;gt;&lt;br /&gt;
   &amp;lt;property name=&amp;quot;text&amp;quot; value=&amp;quot;Bat(V)&amp;quot;/&amp;gt;&lt;br /&gt;
 &amp;lt;/papget&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The file is used later by giving it to the gcs process:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
 .../gcs -layout my_fancy_papgets.xml&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Buttons===&lt;br /&gt;
In the same way, user buttons from the strip can be dragged&amp;amp;dropped on the 2D map. However, they currently cannot be directly edited, and&lt;br /&gt;
attributes changes have to be done in the XML file. Two types of button are provided to jump to a block or to set a value:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;papget type=&amp;quot;goto_block&amp;quot; display=&amp;quot;button&amp;quot; x=&amp;quot;10&amp;quot; y=&amp;quot;300&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;property name=&amp;quot;block_name&amp;quot; value=&amp;quot;Standby&amp;quot;/&amp;gt;&lt;br /&gt;
   &amp;lt;property name=&amp;quot;icon&amp;quot; value=&amp;quot;home.png&amp;quot;/&amp;gt;&lt;br /&gt;
 &amp;lt;/papget&amp;gt;&lt;br /&gt;
 &amp;lt;papget type=&amp;quot;variable_setting&amp;quot; display=&amp;quot;button&amp;quot; x=&amp;quot;10&amp;quot; y=&amp;quot;250&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;property name=&amp;quot;variable&amp;quot; value=&amp;quot;launch&amp;quot;/&amp;gt;&lt;br /&gt;
   &amp;lt;property name=&amp;quot;value&amp;quot; value=&amp;quot;1.&amp;quot;/&amp;gt;&lt;br /&gt;
   &amp;lt;property name=&amp;quot;icon&amp;quot; value=&amp;quot;launch.png&amp;quot;/&amp;gt;&lt;br /&gt;
  &amp;lt;/papget&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Video===&lt;br /&gt;
A video stream can be rendered in a &amp;lt;tt&amp;gt;video_plugin&amp;lt;/tt&amp;gt; papget, using the mplayer player:&lt;br /&gt;
 &amp;lt;papget type=&amp;quot;video_plugin&amp;quot; display=&amp;quot;mplayer&amp;quot; x=&amp;quot;300&amp;quot; y=&amp;quot;250&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;property name=&amp;quot;video_feed&amp;quot; value=&amp;quot;my video source&amp;quot;/&amp;gt;&lt;br /&gt;
  &amp;lt;property name=&amp;quot;width&amp;quot; VALUE=&amp;quot;320&amp;quot;/&amp;gt;&lt;br /&gt;
  &amp;lt;property name=&amp;quot;height&amp;quot; VALUE=&amp;quot;240&amp;quot;/&amp;gt;&lt;br /&gt;
 &amp;lt;/papget&amp;gt;&lt;br /&gt;
or any video player which takes in option the X window id :&lt;br /&gt;
 &amp;lt;papget type=&amp;quot;video_plugin&amp;quot; display=&amp;quot;plugin&amp;quot; x=&amp;quot;300&amp;quot; y=&amp;quot;250&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;property name=&amp;quot;command&amp;quot; value=&amp;quot;cvlc video_source --drawable-xid=&amp;quot;/&amp;gt;&lt;br /&gt;
  &amp;lt;property NAME=&amp;quot;width&amp;quot; VALUE=&amp;quot;320&amp;quot;/&amp;gt;&lt;br /&gt;
  &amp;lt;property NAME=&amp;quot;height&amp;quot; VALUE=&amp;quot;240&amp;quot;/&amp;gt;&lt;br /&gt;
 &amp;lt;/papget&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Development===&lt;br /&gt;
Graphical appearence of papgets is defined in &amp;lt;tt&amp;gt;sw/lib/ocaml/papget_renderer.ml&amp;lt;/tt&amp;gt;. A renderer must implement the Papget_renderer.t class type interface (&amp;lt;tt&amp;gt;canvas_text&amp;lt;/tt&amp;gt; is probably the simpler example) and listed in the &amp;lt;tt&amp;gt;renderers&amp;lt;/tt&amp;gt; list to be available&lt;br /&gt;
in the edit popup box.&lt;br /&gt;
&lt;br /&gt;
The XML configuration is parsed in &amp;lt;tt&amp;gt;sw/ground_segment/cockpit/papgets.ml&amp;lt;/tt&amp;gt;: a new created papget identifier must listed here.&lt;br /&gt;
&lt;br /&gt;
== Alarms ==&lt;br /&gt;
&lt;br /&gt;
The alarm window displays a list of recent errors such as:&lt;br /&gt;
* Low battery warning&lt;br /&gt;
* Low altitude warning&lt;br /&gt;
* Autopilot mode changes (i.e. Manual, Auto2)&lt;br /&gt;
* Flight plan block changes&lt;br /&gt;
&lt;br /&gt;
These alarms can be provided via the speaker using the [[speech]] function.&lt;br /&gt;
&lt;br /&gt;
== Configuration Options ==&lt;br /&gt;
The GCS is highly configurable and modules can be added, removed, or resized as needed. In addition to this the gcs has many command line options which can be used when launching the GCS&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
See the [[GCS_Configuration|GCS configuration]] page for details.&lt;br /&gt;
&lt;br /&gt;
== Simulation of Flightplan ==&lt;br /&gt;
Complex flight plans should always be carefully tested prior to flight.  See the [[Simulation|simulation]] page for details.&lt;br /&gt;
&lt;br /&gt;
==Related Links:==&lt;/div&gt;</summary>
		<author><name>Andrelim</name></author>
	</entry>
</feed>