<?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=Vincent+van+Hoek</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=Vincent+van+Hoek"/>
	<link rel="alternate" type="text/html" href="http://wiki.paparazziuav.org/wiki/Special:Contributions/Vincent_van_Hoek"/>
	<updated>2026-05-06T02:21:51Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.37.1</generator>
	<entry>
		<id>http://wiki.paparazziuav.org/w/index.php?title=TU_Delft_-_Autonomous_Quadrotor&amp;diff=14002</id>
		<title>TU Delft - Autonomous Quadrotor</title>
		<link rel="alternate" type="text/html" href="http://wiki.paparazziuav.org/w/index.php?title=TU_Delft_-_Autonomous_Quadrotor&amp;diff=14002"/>
		<updated>2013-01-14T09:50:15Z</updated>

		<summary type="html">&lt;p&gt;Vincent van Hoek: /* Installing Paparazzi on AR.Drone 2 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[File:tudelft_logo.jpg|link=http://tudelft.nl/en/]]&lt;br /&gt;
&lt;br /&gt;
== TU Delft - Autonomous Quadrotor ==&lt;br /&gt;
&lt;br /&gt;
On 3 September 2012 two student teams of the Delft University of Technology started with a UAV robotics project, under guidance of dr. ir. M. Wisse and ir. B. D. W. Remes. Each team would have a slightly different initial objective. After completing this objective each team will be free to set its own objectives for the next phase of this project.&lt;br /&gt;
&lt;br /&gt;
=== Objectives ===&lt;br /&gt;
Our first objective is to enable the Parrot AR Drone v2.0 (from now on referred to as the AR Drone 2) to fly autonomously on the Paparazzi Software.&lt;br /&gt;
* Team one will work with the raw navigation data, creating their own software to retrieve and interpret the date. They will need to describe a new board configuration within for Paparazzi to work with.&lt;br /&gt;
* Team two will work with the programming as developed by Parrot. They will need to interpret the data as provided by the program and determine what data to send back.&lt;br /&gt;
&lt;br /&gt;
The second objective is that each team has to add a GPS sensor to the AR Drone 2. We will use the US Globalsat BU-353 GPS receiver for this purpose and mount it to the AR Drone 2 using the USB connection on the board.&lt;br /&gt;
&lt;br /&gt;
=== Project Contents ===&lt;br /&gt;
* [[AR Drone 2]]&lt;br /&gt;
** [[AR Drone 2/Motor driver]]&lt;br /&gt;
** [[AR Drone 2/Sensor specifications]]&lt;br /&gt;
** [[BU 353 specifications|GPS specifications]]&lt;br /&gt;
&lt;br /&gt;
=== Teams ===&lt;br /&gt;
* Team 1: [[TU Delft - Search and Rescue with AR Drone 2]]&lt;br /&gt;
* Team 2: [[TU Delft - Lasergame with Autonomous AR Drone]]&lt;br /&gt;
&lt;br /&gt;
== Development ==&lt;br /&gt;
To try and keep you up to date with the most recent developments in this project we have created the [[Talk: TU Delft: AR Drone 2 - News|TU Delft: AR Drone 2 - News]] page. Here we will post breakthroughs, summaries of a page update and small facts that might be nice to know. &lt;br /&gt;
&lt;br /&gt;
=== Installing Paparazzi on AR.Drone 2 ===&lt;br /&gt;
Installing Paparazzi on the AR Drone 2 is taking more effort than we initially expected. To make life easier for everyone that wants to use Paparazzi on the AR Drone 2 We have set up a AR-Drone 2: starters page. This page will guide you through that process step by step.&lt;br /&gt;
&lt;br /&gt;
''Editors note: This page is not complete yet. We will let you know when it nears completion''&lt;br /&gt;
&lt;br /&gt;
* [[AR-Drone 2: starters page]]&lt;br /&gt;
&lt;br /&gt;
[[Category: TU Delft - Autonomous Quadrotor]]&lt;/div&gt;</summary>
		<author><name>Vincent van Hoek</name></author>
	</entry>
	<entry>
		<id>http://wiki.paparazziuav.org/w/index.php?title=Developers_Page&amp;diff=13875</id>
		<title>Developers Page</title>
		<link rel="alternate" type="text/html" href="http://wiki.paparazziuav.org/w/index.php?title=Developers_Page&amp;diff=13875"/>
		<updated>2012-12-13T13:04:50Z</updated>

		<summary type="html">&lt;p&gt;Vincent van Hoek: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== An Introduction ==&lt;br /&gt;
&lt;br /&gt;
Welcome to the Developers Page!&lt;br /&gt;
&lt;br /&gt;
We of the TU Delft - Minor Robotics have created this page in order to help others contribute to the Paparazzi software. If you have any questions or suggestions feel free to post anything on [[Talk: Developers Page|Developers Q&amp;amp;A]] or go to [[Contact]] and get in touch with us or other people developing Paparazzi.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Development section ==&lt;br /&gt;
If this is the first time that you work with Paparazzi we suggest that you read the [[Beginners Page]] page first before continuing. This page gives you a brief overview of how Paparazzi works and what it can and can not (yet) do.&lt;br /&gt;
&lt;br /&gt;
=== Paparazzi Architecture ===&lt;br /&gt;
When you open the Paparazzi folder for the first time it can seem like one big mess. Lets first make some order of all of the chaos by going through the architecture for a bit.&lt;br /&gt;
&lt;br /&gt;
=== Adding a new UAV to Paparazzi ===&lt;br /&gt;
&lt;br /&gt;
==== Adding a new core architecture ====&lt;br /&gt;
&lt;br /&gt;
Most of you won't be needing this, as the types of cores used for UAV's don't change that often. However if you need to implement a new core architecture this is what you should know and do.&lt;br /&gt;
&lt;br /&gt;
The core architecture consists of the file ''/../Paparazzi/conf/Makefile.&amp;lt;core architecture&amp;gt;'' and the folder ''/../Paparazzi/sw/airborne/&amp;lt;core architecture&amp;gt;/..'' and all files and folders inside it. Some of these files and folders must be implemented others are not required but can be found here. We will go through all of these one by one.&lt;br /&gt;
&lt;br /&gt;
First of all the files and folders it must contain:&lt;br /&gt;
&lt;br /&gt;
===== MCU Peripherals =====&lt;br /&gt;
The folder /../Paparazzi/sw/airborne/&lt;br /&gt;
&lt;br /&gt;
== Have you thought of...? ==&lt;/div&gt;</summary>
		<author><name>Vincent van Hoek</name></author>
	</entry>
	<entry>
		<id>http://wiki.paparazziuav.org/w/index.php?title=Developers_Page&amp;diff=13874</id>
		<title>Developers Page</title>
		<link rel="alternate" type="text/html" href="http://wiki.paparazziuav.org/w/index.php?title=Developers_Page&amp;diff=13874"/>
		<updated>2012-12-13T13:04:16Z</updated>

		<summary type="html">&lt;p&gt;Vincent van Hoek: Created page with &amp;quot;== An Introduction ==  Welcome to the Developers Page!  We of the TU Delft - Minor Robotics have created this page in order to help others contribute to the Paparazzi software. I…&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== An Introduction ==&lt;br /&gt;
&lt;br /&gt;
Welcome to the Developers Page!&lt;br /&gt;
&lt;br /&gt;
We of the TU Delft - Minor Robotics have created this page in order to help others contribute to the Paparazzi software. If you have any questions or suggestions feel free to post anything on [[Talk: Developers Page|Developers Q&amp;amp;A]] or go to [[Contact]] and get in touch with us or other people developing Paparazzi.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Development section ==&lt;br /&gt;
If this is the first time that you work with Paparazzi we suggest that you read the [[Beginners Page]] page first before continuing. This page gives you a brief overview of how Paparazzi works and what it can and can not (yet) do.&lt;br /&gt;
&lt;br /&gt;
=== Installing Paparazzi ===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Paparazzi Architecture ===&lt;br /&gt;
When you open the Paparazzi folder for the first time it can seem like one big mess. Lets first make some order of all of the chaos by going through the architecture for a bit.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Adding a new UAV to Paparazzi ===&lt;br /&gt;
&lt;br /&gt;
==== Adding a new core architecture ====&lt;br /&gt;
&lt;br /&gt;
Most of you won't be needing this, as the types of cores used for UAV's don't change that often. However if you need to implement a new core architecture this is what you should know and do.&lt;br /&gt;
&lt;br /&gt;
The core architecture consists of the file ''/../Paparazzi/conf/Makefile.&amp;lt;core architecture&amp;gt;'' and the folder ''/../Paparazzi/sw/airborne/&amp;lt;core architecture&amp;gt;/..'' and all files and folders inside it. Some of these files and folders must be implemented others are not required but can be found here. We will go through all of these one by one.&lt;br /&gt;
&lt;br /&gt;
First of all the files and folders it must contain:&lt;br /&gt;
&lt;br /&gt;
===== MCU Peripherals =====&lt;br /&gt;
The folder /../Paparazzi/sw/airborne/&lt;br /&gt;
&lt;br /&gt;
== Have you thought of...? ==&lt;/div&gt;</summary>
		<author><name>Vincent van Hoek</name></author>
	</entry>
	<entry>
		<id>http://wiki.paparazziuav.org/w/index.php?title=TU_Delft_-_Search_and_Rescue_with_AR_Drone_2&amp;diff=13872</id>
		<title>TU Delft - Search and Rescue with AR Drone 2</title>
		<link rel="alternate" type="text/html" href="http://wiki.paparazziuav.org/w/index.php?title=TU_Delft_-_Search_and_Rescue_with_AR_Drone_2&amp;diff=13872"/>
		<updated>2012-12-13T11:56:24Z</updated>

		<summary type="html">&lt;p&gt;Vincent van Hoek: /* Autonomous flight */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Image:2012-10-03 12.40.46.jpg|thumb|right|400px|TU Delft Minor Robotics: Quadrotor Group 1]]__TOC__&lt;br /&gt;
&lt;br /&gt;
== Introduction==&lt;br /&gt;
The high maneuverability and stability of a quadrotor inspired us to make an autonomous search and rescue vehicle. For this the AR Drone 2 was used.  The goal of this project is thus to further develop the AR Drone2 into a robot capable of performing an autonomous search mission. All the steps taken are described on this page.&lt;br /&gt;
&lt;br /&gt;
In order to achieve this goal we decided to work with raw data. The data was obtained by creating drivers capable of extracting and interpreting sensor data from the AR Drone2. In order to get the quadrotor flying paparazzi was used. For simulation JSBSim was used, which was then visualized using Flight Gear. The final section of the page will discuss the subject of making the quadrotor autonomous.&lt;br /&gt;
&lt;br /&gt;
First some general information about the project is given in chapter2. How all the data was obtained is presented in chapter 3. In chapter 4 it is described how to get paparazzi working on the drone. Next in chapter 5 we present how simulation was done and finally the proces of making the drone capable of performing an autonomous search and rescue mission is described in chapter 6.&lt;br /&gt;
&lt;br /&gt;
== General project information==&lt;br /&gt;
&lt;br /&gt;
This project was develloped using Linux, more specific Ubuntu. So except for the simulation part all steps are explained for this operating system. But it's a free operating system, so if you want to retrace our steps you can simply download it and access it from your current operating system using virtual box. A small tutorial can be found [[ Virtualbox 4.1.22 for Windows Hosts &amp;amp; Ubuntu 12.04 LTS| here]].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
For this project we used a repository, Github. This allows multiple people to work on the same project at the same time without getting in eachother's way. So all files assosiated with our project assosiated can be accesed using Github. For beginners, you can read the manual to setup Github for Ubuntu:&lt;br /&gt;
&lt;br /&gt;
* [[Github manual for Ubuntu]]&lt;br /&gt;
&lt;br /&gt;
Our git repository is at [https://github.com/RoboticaTUDelft/paparazzi Github RoboticaTUDelft] in the &amp;quot;minor1&amp;quot; branch. You can change to this branch by executing the following command &amp;quot;git checkout minor1&amp;quot;. The related project, [[TU Delft - Lasergame with Autonomous AR Drone]], can be found under the minor2 branch.&lt;br /&gt;
&lt;br /&gt;
== Data acquisition==&lt;br /&gt;
&lt;br /&gt;
So as explained in the introduction, firstly the raw data had to be extracted from the AR Drone2. So this data could be fed to paparazzi. So we started with trying to connect and pass files to the AR Drone2, which is desribed in the connecing section. The exact details of the extraction of the data is described in the NAV board section. Next the data from paparazzi had to be passed on to our actuators correctly. This is described in the motor driver section. To be able to perform better in our autonomous mission a GPS was added to  the AR Drone2. The details of this are described in the GPS section.&lt;br /&gt;
&lt;br /&gt;
=== Connecting===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
For our project the operating system Ubuntu was used, so all the steps described here are for an Ubuntu operating system.&lt;br /&gt;
&lt;br /&gt;
The connecting was done using Telnet.&lt;br /&gt;
&lt;br /&gt;
*[[Telnet AR.Drone2]]&lt;br /&gt;
&lt;br /&gt;
The actual transferring of files is done using a File Transfer Protocol (FTP).&lt;br /&gt;
&lt;br /&gt;
*[[FTP AR.Drone2]]&lt;br /&gt;
&lt;br /&gt;
=== NAV board===&lt;br /&gt;
&lt;br /&gt;
Throughout this project, on several different occasions, it will be apparent that the AR Drone2 was never really meant to be used as we inteded to. In addition to this, Parrot SA has a vested interest in maintaining the exclusivity of its product, rightfully so. So with what little information is publicly available, reverse engineering was a lot harder than we first thought when we began the project. However the AR.Drone2 looks a lot like the AR.Drone1, its predecessor, for which a lot of reverse engineering has allready been done by other people. Ofcourse there are differences and this is where we started reverse engineering the bits and pieces for the NAV board.&lt;br /&gt;
&lt;br /&gt;
*[[NAV board AR.Drone2]]&lt;br /&gt;
&lt;br /&gt;
=== Motor driver===&lt;br /&gt;
&lt;br /&gt;
Using a similar technique as for the NAV board, the motor drivers were obtained.&lt;br /&gt;
&lt;br /&gt;
*[[Motor driver AR.Drone2]]&lt;br /&gt;
&lt;br /&gt;
=== GPS===&lt;br /&gt;
The GPS we use with the AR.Drone2 is the [[BU_353_specifications | BU-353 GPS]]. To make good use of this GPS we had to create our own driver for it. &lt;br /&gt;
&lt;br /&gt;
*[[GPS Driver AR.Drone2]]&lt;br /&gt;
&lt;br /&gt;
== Paparazzi==&lt;br /&gt;
&lt;br /&gt;
Now the necessary raw data can be obtained and the actuators can be controlled, it's time to focus on paparazzi. This section consists of two parts. The first part deals with integrating the AR.Drone2 into the paparazzi libraries, the second part deals with compiling paparazzi for the drone. More inforamtion on how to install paparazzi can be found [[installation|here]].&lt;br /&gt;
&lt;br /&gt;
=== Using Paparazzi===&lt;br /&gt;
&lt;br /&gt;
This parts describes the process of adapting the paparazzi libraries to make them compatible with the AR.Drone’s hard en software.&lt;br /&gt;
&lt;br /&gt;
*[[Integrating the AR Drone 2 with Paparazzi]]&lt;br /&gt;
&lt;br /&gt;
=== Compiling===&lt;br /&gt;
&lt;br /&gt;
Finally paparazzi can be compiled and be put on the AR.Drone 2. This is describes in this section.&lt;br /&gt;
&lt;br /&gt;
*[[compiling paparazzi for  the AR.Drone2]]&lt;br /&gt;
&lt;br /&gt;
=== Paparazzi architecture===&lt;br /&gt;
&lt;br /&gt;
In the near future, we'd like to add features like object avoidance. Since this isn't yet implemented in paparazzi we have to start from scratch. Therefore we tried to understand the architecture a little better than is explained on this wiki at the moment.&lt;br /&gt;
&lt;br /&gt;
*[[Insight of paparazzi architecture]] &lt;br /&gt;
&lt;br /&gt;
== Simulation==&lt;br /&gt;
&lt;br /&gt;
Now paparazzi was compiled and our drone was ready to go, simulation could begin. The simulation was done in JSBSim, which was then visualized using flightgear. This are also the 2 parts in this section. More information on how to install JSBSim see [[JSBSim]]. For more information on how to install Flightgear and link it to Paparazzi see [[Simulation#View_the_simulation_in_Flight_Gear]].&lt;br /&gt;
&lt;br /&gt;
=== JSBSim===&lt;br /&gt;
'''Creating A Flight Dynamics Model'''&lt;br /&gt;
&lt;br /&gt;
In order to control the otherwise highly active dynamic nature of the quadrotor, an autopilot system will be necessary because the reaction time of the pilot will, otherwise, not be sufficient to maintain stable flight.  The autopilot system will be created in Paparazzi for which a prerequisite is a proper flight dynamics model (FDM). To create the FDM the team will use [http://jsbsim.sourceforge.net/ JSBSIM], an open-source, platform-independent, flight-dynamics and control software library. Installing JSBSIM is covered for several different operating systems on the Paparazzi Wiki,  [[JSBSim|Installing JSBSIM]].&lt;br /&gt;
&lt;br /&gt;
Once JSBSim had been installed, the actual work could begin. Flight Dynamics and the creation of an individual model for an aircraft is essentially a case study regarding its control, stability, and performance. To model those three dynamics aspects is essentially what JSBSIM was used for but before work could begin, JSBSIM would first need to be fed a configuration file. The configuration file is written in a .xml format and, naturally, is unique to each aircraft. Although not applicable to this project, it is worth mentioning in the event that the reader of this page is not following the instruction exactly and is using it more for reference, there is a tool on the JSBSIM page called [http://jsbsim.sourceforge.net/aeromatic2.html Aeromatic], which is a capable .xml configuration file generator. For those following this project closely, a link will follow for creating a suitable JSBSIM .xml configuration file for the AR.Drone2.&lt;br /&gt;
&lt;br /&gt;
*[[Creating a JSBSIM .xml Configuration File for AR.Drone2]]&lt;br /&gt;
&lt;br /&gt;
=== Flightgear===&lt;br /&gt;
Without actually using the drone itself, and only the previously developed JSBSIM configuration file, a simulated drone can be flown in Flightgear. To do so, a CAD model of the drone is implemented to give a visualization to the simulated model. Flightgear is the preeminent open-source flight simulator backed by a large community of active users. Implementation for this particular project can be read about on the [[AR.Drone 2 - Flightgear]] wikipage. More on the software can be found on the [http://www.flightgear.org/ Flightgear website].&lt;br /&gt;
&lt;br /&gt;
== Autonomous Search and Rescue Mission==&lt;br /&gt;
&lt;br /&gt;
This section deals with the final stage of our project of making the further developing the AR.Drone2 into a quadrotor performing an autonomous search and rescue mission. First autonomous flight is discussed, next the features in order to perform a search and rescue mission are discussed.  &lt;br /&gt;
&lt;br /&gt;
=== Autonomous flight===&lt;br /&gt;
&lt;br /&gt;
One of the last parts of this project consist of making the AR.Drone2 Autonomous. The this process consist of 5 branches:&lt;br /&gt;
&lt;br /&gt;
*[[Autonomous flight of Paparazzi AR.Drone2]]&lt;br /&gt;
*[[Multidirectional distance measurement AR.Drone2]]&lt;br /&gt;
*[[Object Avoidance AR.Drone2]]&lt;br /&gt;
*[[Fail safe AR.Drone2]]&lt;br /&gt;
*[[Optical flow AR.Drone2]]&lt;br /&gt;
&lt;br /&gt;
=== Search and Rescue Features===&lt;br /&gt;
&lt;br /&gt;
*[[Mapping AR.Drone2]]&lt;br /&gt;
*[[Hull Desing AR.Drone2]]&lt;br /&gt;
*[[Immage recognitionAR.Drone2]]&lt;br /&gt;
&lt;br /&gt;
[[Category: TU Delft - Autonomous Quadrotor]]&lt;br /&gt;
[[Category: Minor Team 1]]&lt;/div&gt;</summary>
		<author><name>Vincent van Hoek</name></author>
	</entry>
	<entry>
		<id>http://wiki.paparazziuav.org/w/index.php?title=TU_Delft_-_Search_and_Rescue_with_AR_Drone_2&amp;diff=13869</id>
		<title>TU Delft - Search and Rescue with AR Drone 2</title>
		<link rel="alternate" type="text/html" href="http://wiki.paparazziuav.org/w/index.php?title=TU_Delft_-_Search_and_Rescue_with_AR_Drone_2&amp;diff=13869"/>
		<updated>2012-12-13T10:47:42Z</updated>

		<summary type="html">&lt;p&gt;Vincent van Hoek: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Image:2012-10-03 12.40.46.jpg|thumb|right|400px|TU Delft Minor Robotics: Quadrotor Group 1]]__TOC__&lt;br /&gt;
&lt;br /&gt;
== Introduction==&lt;br /&gt;
The high maneuverability and stability of a quadrotor inspired us to make an autonomous search and rescue vehicle. For this the AR Drone 2 was used.  The goal of this project is thus to further develop the AR Drone2 into a robot capable of performing an autonomous search mission. All the steps taken are described on this page.&lt;br /&gt;
&lt;br /&gt;
In order to achieve this goal we decided to work with raw data. The data was obtained by creating drivers capable of extracting and interpreting sensor data from the AR Drone2. In order to get the quadrotor flying paparazzi was used. For simulation JSBSim was used, which was then visualized using Flight Gear. The final section of the page will discuss the subject of making the quadrotor autonomous.&lt;br /&gt;
&lt;br /&gt;
First some general information about the project is given in chapter2. How all the data was obtained is presented in chapter 3. In chapter 4 it is described how to get paparazzi working on the drone. Next in chapter 5 we present how simulation was done and finally the proces of making the drone capable of performing an autonomous search and rescue mission is described in chapter 6.&lt;br /&gt;
&lt;br /&gt;
== General project information==&lt;br /&gt;
&lt;br /&gt;
This project was develloped using Linux, more specific Ubuntu. So except for the simulation part all steps are explained for this operating system. But it's a free operating system, so if you want to retrace our steps you can simply download it and access it from your current operating system using virtual box. A small tutorial can be found [[ Virtualbox 4.1.22 for Windows Hosts &amp;amp; Ubuntu 12.04 LTS| here]].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
For this project we used a repository, Github. This allows multiple people to work on the same project at the same time without getting in eachother's way. So all files assosiated with our project assosiated can be accesed using Github. For beginners, you can read the manual to setup Github for Ubuntu:&lt;br /&gt;
&lt;br /&gt;
* [[Github manual for Ubuntu]]&lt;br /&gt;
&lt;br /&gt;
Our git repository is at [https://github.com/RoboticaTUDelft/paparazzi Github RoboticaTUDelft] in the &amp;quot;minor1&amp;quot; branch. You can change to this branch by executing the following command &amp;quot;git checkout minor1&amp;quot;. The related project, [[TU Delft - Lasergame with Autonomous AR Drone]], can be found under the minor2 branch.&lt;br /&gt;
&lt;br /&gt;
== Data acquisition==&lt;br /&gt;
&lt;br /&gt;
So as explained in the introduction, firstly the raw data had to be extracted from the AR Drone2. So this data could be fed to paparazzi. So we started with trying to connect and pass files to the AR Drone2, which is desribed in the connecing section. The exact details of the extraction of the data is described in the NAV board section. Next the data from paparazzi had to be passed on to our actuators correctly. This is described in the motor driver section. To be able to perform better in our autonomous mission a GPS was added to  the AR Drone2. The details of this are described in the GPS section.&lt;br /&gt;
&lt;br /&gt;
=== Connecting===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
For our project the operating system Ubuntu was used, so all the steps described here are for an Ubuntu operating system.&lt;br /&gt;
&lt;br /&gt;
The connecting was done using Telnet.&lt;br /&gt;
&lt;br /&gt;
*[[Telnet AR.Drone2]]&lt;br /&gt;
&lt;br /&gt;
The actual transferring of files is done using a File Transfer Protocol (FTP).&lt;br /&gt;
&lt;br /&gt;
*[[FTP AR.Drone2]]&lt;br /&gt;
&lt;br /&gt;
=== NAV board===&lt;br /&gt;
&lt;br /&gt;
Throughout this project, on several different occasions, it will be apparent that the AR Drone2 was never really meant to be used as we inteded to. In addition to this, Parrot SA has a vested interest in maintaining the exclusivity of its product, rightfully so. So with what little information is publicly available, reverse engineering was a lot harder than we first thought when we began the project. However the AR.Drone2 looks a lot like the AR.Drone1, its predecessor, for which a lot of reverse engineering has allready been done by other people. Ofcourse there are differences and this is where we started reverse engineering the bits and pieces for the NAV board.&lt;br /&gt;
&lt;br /&gt;
*[[NAV board AR.Drone2]]&lt;br /&gt;
&lt;br /&gt;
=== Motor driver===&lt;br /&gt;
&lt;br /&gt;
Using a similar technique as for the NAV board, the motor drivers were obtained.&lt;br /&gt;
&lt;br /&gt;
*[[Motor driver AR.Drone2]]&lt;br /&gt;
&lt;br /&gt;
=== GPS===&lt;br /&gt;
The GPS we use with the AR.Drone2 is the [[BU_353_specifications | BU-353 GPS]]. To make good use of this GPS we had to create our own driver for it. &lt;br /&gt;
&lt;br /&gt;
*[[GPS Driver AR.Drone2]]&lt;br /&gt;
&lt;br /&gt;
== Paparazzi==&lt;br /&gt;
&lt;br /&gt;
Now the necessary raw data can be obtained and the actuators can be controlled, it's time to focus on paparazzi. This section consists of two parts. The first part deals with integrating the AR.Drone2 into the paparazzi libraries, the second part deals with compiling paparazzi for the drone. More inforamtion on how to install paparazzi can be found [[installation|here]].&lt;br /&gt;
&lt;br /&gt;
=== Using Paparazzi===&lt;br /&gt;
&lt;br /&gt;
This parts describes the process of adapting the paparazzi libraries to make them compatible with the AR.Drone’s hard en software.&lt;br /&gt;
&lt;br /&gt;
*[[Integrating the AR Drone 2 with Paparazzi]]&lt;br /&gt;
&lt;br /&gt;
=== Compiling===&lt;br /&gt;
&lt;br /&gt;
Finally paparazzi can be compiled and be put on the AR.Drone 2. This is describes in this section.&lt;br /&gt;
&lt;br /&gt;
*[[compiling paparazzi for  the AR.Drone2]]&lt;br /&gt;
&lt;br /&gt;
=== Paparazzi architecture===&lt;br /&gt;
&lt;br /&gt;
In the near future, we'd like to add features like object avoidance. Since this isn't yet implemented in paparazzi we have to start from scratch. Therefore we tried to understand the architecture a little better than is explained on this wiki at the moment.&lt;br /&gt;
&lt;br /&gt;
*[[Insight of paparazzi architecture]] &lt;br /&gt;
&lt;br /&gt;
== Simulation==&lt;br /&gt;
&lt;br /&gt;
Now paparazzi was compiled and our drone was ready to go, simulation could begin. The simulation was done in JSBSim, which was then visualized using flightgear. This are also the 2 parts in this section. More information on how to install JSBSim see [[JSBSim]]. For more information on how to install Flightgear and link it to Paparazzi see [[Simulation#View_the_simulation_in_Flight_Gear]].&lt;br /&gt;
&lt;br /&gt;
=== JSBSim===&lt;br /&gt;
'''Creating A Flight Dynamics Model'''&lt;br /&gt;
&lt;br /&gt;
In order to control the otherwise highly active dynamic nature of the quadrotor, an autopilot system will be necessary because the reaction time of the pilot will, otherwise, not be sufficient to maintain stable flight.  The autopilot system will be created in Paparazzi for which a prerequisite is a proper flight dynamics model (FDM). To create the FDM the team will use [http://jsbsim.sourceforge.net/ JSBSIM], an open-source, platform-independent, flight-dynamics and control software library. Installing JSBSIM is covered for several different operating systems on the Paparazzi Wiki,  [[JSBSim|Installing JSBSIM]].&lt;br /&gt;
&lt;br /&gt;
Once JSBSim had been installed, the actual work could begin. Flight Dynamics and the creation of an individual model for an aircraft is essentially a case study regarding its control, stability, and performance. To model those three dynamics aspects is essentially what JSBSIM was used for but before work could begin, JSBSIM would first need to be fed a configuration file. The configuration file is written in a .xml format and, naturally, is unique to each aircraft. Although not applicable to this project, it is worth mentioning in the event that the reader of this page is not following the instruction exactly and is using it more for reference, there is a tool on the JSBSIM page called [http://jsbsim.sourceforge.net/aeromatic2.html Aeromatic], which is a capable .xml configuration file generator. For those following this project closely, a link will follow for creating a suitable JSBSIM .xml configuration file for the AR.Drone2.&lt;br /&gt;
&lt;br /&gt;
*[[Creating a JSBSIM .xml Configuration File for AR.Drone2]]&lt;br /&gt;
&lt;br /&gt;
=== Flightgear===&lt;br /&gt;
Without actually using the drone itself, and only the previously developed JSBSIM configuration file, a simulated drone can be flown in Flightgear. To do so, a CAD model of the drone is implemented to give a visualization to the simulated model. Flightgear is the preeminent open-source flight simulator backed by a large community of active users. Implementation for this particular project can be read about on the [[AR.Drone 2 - Flightgear]] wikipage. More on the software can be found on the [http://www.flightgear.org/ Flightgear website].&lt;br /&gt;
&lt;br /&gt;
== Autonomous Search and Rescue Mission==&lt;br /&gt;
&lt;br /&gt;
This section deals with the final stage of our project of making the further developing the AR.Drone2 into a quadrotor performing an autonomous search and rescue mission. First autonomous flight is discussed, next the features in order to perform a search and rescue mission are discussed.  &lt;br /&gt;
&lt;br /&gt;
=== Autonomous flight===&lt;br /&gt;
&lt;br /&gt;
The last part of this project consist of making the AR.Drone2 Autonomous. The this process consist of 4 branches:&lt;br /&gt;
&lt;br /&gt;
*[[Autonomous flight of Paparazzi AR.Drone2]]&lt;br /&gt;
*[[Multidirectional distance measurement AR.Drone2]]&lt;br /&gt;
*[[Object Avoidance AR.Drone2]]&lt;br /&gt;
*[[Fail safe AR.Drone2]]&lt;br /&gt;
*[[Optical flow AR.Drone2]]&lt;br /&gt;
&lt;br /&gt;
=== Search and Rescue Features===&lt;br /&gt;
&lt;br /&gt;
*[[Mapping AR.Drone2]]&lt;br /&gt;
*[[Hull Desing AR.Drone2]]&lt;br /&gt;
*[[Immage recognitionAR.Drone2]]&lt;br /&gt;
&lt;br /&gt;
[[Category: TU Delft - Autonomous Quadrotor]]&lt;br /&gt;
[[Category: Minor Team 1]]&lt;/div&gt;</summary>
		<author><name>Vincent van Hoek</name></author>
	</entry>
	<entry>
		<id>http://wiki.paparazziuav.org/w/index.php?title=TU_Delft_-_Search_and_Rescue_with_AR_Drone_2&amp;diff=13866</id>
		<title>TU Delft - Search and Rescue with AR Drone 2</title>
		<link rel="alternate" type="text/html" href="http://wiki.paparazziuav.org/w/index.php?title=TU_Delft_-_Search_and_Rescue_with_AR_Drone_2&amp;diff=13866"/>
		<updated>2012-12-13T10:43:55Z</updated>

		<summary type="html">&lt;p&gt;Vincent van Hoek: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Image:2012-10-03 12.40.46.jpg|thumb|right|400px|TU Delft Minor Robotics: Quadrotor Group 1]]__TOC__&lt;br /&gt;
&lt;br /&gt;
== Introduction==&lt;br /&gt;
The high maneuverability and stability of a quadrotor inspired us to make an autonomous search and rescue vehicle. For this the AR Drone 2 was used.  The goal of this project is thus to further develop the AR Drone2 into a robot capable of performing an autonomous search mission. All the steps taken are described on this page.&lt;br /&gt;
&lt;br /&gt;
In order to achieve this goal we decided to work with raw data. The data was obtained by creating drivers capable of extracting and interpreting sensor data from the AR Drone2. In order to get the quadrotor flying paparazzi was used. For simulation JSBSim was used, which was then visualized using Flight Gear. The final section of the page will discuss the subject of making the quadrotor autonomous.&lt;br /&gt;
&lt;br /&gt;
First some general information about the project is given in chapter2. How all the data was obtained is presented in chapter 3. In chapter 4 it is described how to get paparazzi working on the drone. Next in chapter 5 we present how simulation was done and finally the proces of making the drone capable of performing an autonomous search and rescue mission is described in chapter 6.&lt;br /&gt;
&lt;br /&gt;
== General project information==&lt;br /&gt;
&lt;br /&gt;
This project was develloped using Linux, more specific Ubuntu. So except for the simulation part all steps are explained for this operating system. But it's a free operating system, so if you want to retrace our steps you can simply download it and access it from your current operating system using virtual box. A small tutorial can be found [[ Virtualbox 4.1.22 for Windows Hosts &amp;amp; Ubuntu 12.04 LTS| here]].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
For this project we used a repository, Github. This allows multiple people to work on the same project at the same time without getting in eachother's way. So all files assosiated with our project assosiated can be accesed using Github. For beginners, you can read the manual to setup Github for Ubuntu:&lt;br /&gt;
&lt;br /&gt;
* [[Github manual for Ubuntu]]&lt;br /&gt;
&lt;br /&gt;
Our git repository is at [https://github.com/RoboticaTUDelft/paparazzi Github RoboticaTUDelft] in the &amp;quot;minor1&amp;quot; branch. You can change to this branch by executing the following command &amp;quot;git checkout minor1&amp;quot;. The related project, [[TU Delft - Lasergame with Autonomous AR Drone]], can be found under the minor2 branch.&lt;br /&gt;
&lt;br /&gt;
== Data acquisition==&lt;br /&gt;
&lt;br /&gt;
So as explained in the introduction, firstly the raw data had to be extracted from the AR Drone2. So this data could be fed to paparazzi. So we started with trying to connect and pass files to the AR Drone2, which is desribed in the connecing section. The exact details of the extraction of the data is described in the NAV board section. Next the data from paparazzi had to be passed on to our actuators correctly. This is described in the motor driver section. To be able to perform better in our autonomous mission a GPS was added to  the AR Drone2. The details of this are described in the GPS section.&lt;br /&gt;
&lt;br /&gt;
=== Connecting===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
For our project the operating system Ubuntu was used, so all the steps described here are for an Ubuntu operating system.&lt;br /&gt;
&lt;br /&gt;
The connecting was done using Telnet.&lt;br /&gt;
&lt;br /&gt;
*[[Telnet AR.Drone2]]&lt;br /&gt;
&lt;br /&gt;
The actual transferring of files is done using a File Transfer Protocol (FTP).&lt;br /&gt;
&lt;br /&gt;
*[[FTP AR.Drone2]]&lt;br /&gt;
&lt;br /&gt;
=== NAV board===&lt;br /&gt;
&lt;br /&gt;
Throughout this project, on several different occasions, it will be apparent that the AR Drone2 was never really meant to be used as we inteded to. In addition to this, Parrot SA has a vested interest in maintaining the exclusivity of its product, rightfully so. So with what little information is publicly available, reverse engineering was a lot harder than we first thought when we began the project. However the AR.Drone2 looks a lot like the AR.Drone1, its predecessor, for which a lot of reverse engineering has allready been done by other people. Ofcourse there are differences and this is where we started reverse engineering the bits and pieces for the NAV board.&lt;br /&gt;
&lt;br /&gt;
*[[NAV board AR.Drone2]]&lt;br /&gt;
&lt;br /&gt;
=== Motor driver===&lt;br /&gt;
&lt;br /&gt;
Using a similar technique as for the NAV board, the motor drivers were obtained.&lt;br /&gt;
&lt;br /&gt;
*[[Motor driver AR.Drone2]]&lt;br /&gt;
&lt;br /&gt;
=== GPS===&lt;br /&gt;
The GPS we use with the AR.Drone2 is the [[BU_353_specifications | BU-353 GPS]]. To make good use of this GPS we had to create our own driver for it. &lt;br /&gt;
&lt;br /&gt;
*[[GPS Driver AR.Drone2]]&lt;br /&gt;
&lt;br /&gt;
== Paparazzi==&lt;br /&gt;
&lt;br /&gt;
Now the necessary raw data can be obtained and the actuators can be controlled, it's time to focus on paparazzi. This section consists of two parts. The first part deals with integrating the AR.Drone2 into the paparazzi libraries, the second part deals with compiling paparazzi for the drone. More inforamtion on how to install paparazzi can be found [[installation|here]].&lt;br /&gt;
&lt;br /&gt;
=== Using Paparazzi===&lt;br /&gt;
&lt;br /&gt;
This parts describes the process of adapting the paparazzi libraries to make them compatible with the AR.Drone’s hard en software.&lt;br /&gt;
&lt;br /&gt;
*[[Integrating the AR Drone 2 with Paparazzi]]&lt;br /&gt;
&lt;br /&gt;
=== Compiling===&lt;br /&gt;
&lt;br /&gt;
Finally paparazzi can be compiled and be put on the AR.Drone 2. This is describes in this section.&lt;br /&gt;
&lt;br /&gt;
*[[compiling paparazzi for  the AR.Drone2]]&lt;br /&gt;
&lt;br /&gt;
=== Paparazzi architecture===&lt;br /&gt;
&lt;br /&gt;
In the near future, we'd like to add features like object avoidance. Since this isn't yet implemented in paparazzi we have to start from scratch. Therefore we tried to understand the architecture a little better than is explained on this wiki at the moment.&lt;br /&gt;
&lt;br /&gt;
*[[Insight of paparazzi architecture]] &lt;br /&gt;
&lt;br /&gt;
== Simulation==&lt;br /&gt;
&lt;br /&gt;
Now paparazzi was compiled and our drone was ready to go, simulation could begin. The simulation was done in JSBSim, which was then visualized using flightgear. This are also the 2 parts in this section. More information on how to install JSBSim see [[JSBSim]]. For more information on how to install Flightgear and link it to Paparazzi see [[Simulation#View_the_simulation_in_Flight_Gear]].&lt;br /&gt;
&lt;br /&gt;
=== JSBSim===&lt;br /&gt;
'''Creating A Flight Dynamics Model'''&lt;br /&gt;
&lt;br /&gt;
In order to control the otherwise highly active dynamic nature of the quadrotor, an autopilot system will be necessary because the reaction time of the pilot will, otherwise, not be sufficient to maintain stable flight.  The autopilot system will be created in Paparazzi for which a prerequisite is a proper flight dynamics model (FDM). To create the FDM the team will use [http://jsbsim.sourceforge.net/ JSBSIM], an open-source, platform-independent, flight-dynamics and control software library. Installing JSBSIM is covered for several different operating systems on the Paparazzi Wiki,  [[JSBSim|Installing JSBSIM]].&lt;br /&gt;
&lt;br /&gt;
Once JSBSim had been installed, the actual work could begin. Flight Dynamics and the creation of an individual model for an aircraft is essentially a case study regarding its control, stability, and performance. To model those three dynamics aspects is essentially what JSBSIM was used for but before work could begin, JSBSIM would first need to be fed a configuration file. The configuration file is written in a .xml format and, naturally, is unique to each aircraft. Although not applicable to this project, it is worth mentioning in the event that the reader of this page is not following the instruction exactly and is using it more for reference, there is a tool on the JSBSIM page called [http://jsbsim.sourceforge.net/aeromatic2.html Aeromatic], which is a capable .xml configuration file generator. For those following this project closely, a link will follow for creating a suitable JSBSIM .xml configuration file for the AR.Drone2.&lt;br /&gt;
&lt;br /&gt;
*[[Creating a JSBSIM .xml Configuration File for AR.Drone2]]&lt;br /&gt;
&lt;br /&gt;
=== Flightgear===&lt;br /&gt;
Without actually using the drone itself, and only the previously developed JSBSIM configuration file, a simulated drone can be flown in Flightgear. To do so, a CAD model of the drone is implemented to give a visualization to the simulated model. Flightgear is the preeminent open-source flight simulator backed by a large community of active users. Implementation for this particular project can be read about on the [[AR.Drone 2 - Flightgear]] wikipage. More on the software can be found on the [http://www.flightgear.org/ Flightgear website].&lt;br /&gt;
&lt;br /&gt;
== Autonomous Search and Rescue Mission==&lt;br /&gt;
&lt;br /&gt;
This section deals with the final stage of our project of making the further developing the AR.Drone2 into a quadrotor performing an autonomous search and rescue mission. First autonomous flight is discussed, next the features in order to perform a search and rescue mission are discussed.  &lt;br /&gt;
&lt;br /&gt;
=== Autonomous flight===&lt;br /&gt;
&lt;br /&gt;
The last part of this project consist of making the AR.Drone2 Autonomous. The this process consist of 4 branches:&lt;br /&gt;
&lt;br /&gt;
*[[Autonomous flight of Paparazzi AR.Drone2]]&lt;br /&gt;
*[[Multidirectional distance measurement AR.Drone2]]&lt;br /&gt;
*[[Object Avoidance AR.Drone2]]&lt;br /&gt;
*[[Fail safe AR.Drone2]]&lt;br /&gt;
&lt;br /&gt;
=== Search and Rescue Features===&lt;br /&gt;
&lt;br /&gt;
*[[Mapping AR.Drone2]]&lt;br /&gt;
*[[Hull Desing AR.Drone2]]&lt;br /&gt;
*[[Optical flow AR.Drone2]]&lt;br /&gt;
*[[Immage recognitionAR.Drone2]]&lt;br /&gt;
&lt;br /&gt;
[[Category: TU Delft - Autonomous Quadrotor]]&lt;br /&gt;
[[Category: Minor Team 1]]&lt;/div&gt;</summary>
		<author><name>Vincent van Hoek</name></author>
	</entry>
	<entry>
		<id>http://wiki.paparazziuav.org/w/index.php?title=Category:Minor_Team_1&amp;diff=13865</id>
		<title>Category:Minor Team 1</title>
		<link rel="alternate" type="text/html" href="http://wiki.paparazziuav.org/w/index.php?title=Category:Minor_Team_1&amp;diff=13865"/>
		<updated>2012-12-13T10:42:54Z</updated>

		<summary type="html">&lt;p&gt;Vincent van Hoek: Created page with &amp;quot;This category contains all pages related to the sub-project of the TU Delft - Robotics Minor - Team 1: Search and Rescue with an AR Drone 2.&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This category contains all pages related to the sub-project of the TU Delft - Robotics Minor - Team 1: Search and Rescue with an AR Drone 2.&lt;/div&gt;</summary>
		<author><name>Vincent van Hoek</name></author>
	</entry>
	<entry>
		<id>http://wiki.paparazziuav.org/w/index.php?title=AR_Drone_2/Motor_driver&amp;diff=13864</id>
		<title>AR Drone 2/Motor driver</title>
		<link rel="alternate" type="text/html" href="http://wiki.paparazziuav.org/w/index.php?title=AR_Drone_2/Motor_driver&amp;diff=13864"/>
		<updated>2012-12-13T10:41:29Z</updated>

		<summary type="html">&lt;p&gt;Vincent van Hoek: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== The motor driver ==&lt;br /&gt;
Starting off with the project we first tried searching what had already been done for AR.Drone1 and we found a very good source: [http://blog.perquin.com/blog/2011/06/ Perquin blog]. This explained &lt;br /&gt;
that, for the AR Drone 1, the motors where controlled by a device:&lt;br /&gt;
&lt;br /&gt;
''*/dev/ttyPA1''&lt;br /&gt;
&lt;br /&gt;
After initialization a PWM bit stream was sent to that device containing a 3 start bits, followed 9 bits for each motor and 1 stop bit. The data was send as a stream of five 8-bit unsigned integers. This means the data will look as follows:&lt;br /&gt;
&lt;br /&gt;
''001aaaaa aaaabbbb bbbbbccc ccccccdd ddddddd0''&lt;br /&gt;
&lt;br /&gt;
The start bit 001 seemed to be specific for controlling the motors as the device also controlled the motor LEDs. For that the start bit is 011, but more on that in another section. We soon noticed that the device name is different on the AR.Drone2. By using dmesg and trace functions we found that, for the motors, the device is as follows:&lt;br /&gt;
&lt;br /&gt;
''*/dev/ttyO0 : motor''&lt;br /&gt;
&lt;br /&gt;
After finding out what the correct device was, we could simply change the device name in the driver created by hugo: [http://blog.perquin.com/blog/ar-drone-program-elf-replacement/ Perquin Program].&lt;br /&gt;
This gave us a working motor driver.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Motor driver in Paparazzi ==&lt;br /&gt;
&lt;br /&gt;
The next step was implementing that motor driver into Paparazzi. In order to make it work we have to implement 3 functions into the files actuators_pwm_arch.c and actuators_pwm_arch.h files.&lt;br /&gt;
&lt;br /&gt;
But first I will explain a bit about how Paparazzi operates the motors. In the main file for rotorcraft a function is called periodicly:&lt;br /&gt;
&lt;br /&gt;
''SetActuatorsFromCommands(commands);''&lt;br /&gt;
&lt;br /&gt;
This function is defined in the airframe.h file that is generated for each aircraft and is based on the airframe.xml file. The commands parameter contains a array of values as set by the AHRS, INS or 'manually'. These values represent the Pitch, Yaw, Roll and Thrust. For Quadrotors this function then calls a function in motor mixing.&lt;br /&gt;
&lt;br /&gt;
''motor_mixing_run(autopilot_motors_on,FALSE,values);''&lt;br /&gt;
&lt;br /&gt;
Motor mixing is a file meant to realign the rotational direction and positioning of the rotorcraft's rotors in order to be able to translate the commands correctly into a thrust value for each motor. After this function has run, the actuator values have been calculated for each motor and can be set and translated into the correct structure for the specific motors, in our case a PWM signal.&lt;br /&gt;
&lt;br /&gt;
Now the real work begins for in order to set the actuator values we have to implement the functions in the actuator_pwm_arch files as mentioned before. The functions are:&lt;br /&gt;
&lt;br /&gt;
* ''ActuatorPwmSet(_n,_v);'' where n is the number assigned to a motor and v is the associated value.&lt;br /&gt;
* ''actuators_pwm_commit();'' that is directly called from ''ActuatorsPwmCommit();''.&lt;br /&gt;
* ''actuators_pwm_arch_init();''&lt;br /&gt;
&lt;br /&gt;
''ActuatorPwmSet(_n,_v);'' is a simple function that makes the calculated values available to ''actuators_pwm_commit();''. &lt;br /&gt;
&lt;br /&gt;
''actuators_pwm_commit();'' converts the received values into a pwm signal and sends this signal to the device. Our function looks like this:&lt;br /&gt;
&lt;br /&gt;
 void actuator_pwm_commit(void){&lt;br /&gt;
 	uint8_t pwm_signal[5];&lt;br /&gt;
 &lt;br /&gt;
 	pwm_signal[0] = 0x20 | ((actuators_pwm_values[0]&amp;amp;0x1ff)&amp;gt;&amp;gt;4);&lt;br /&gt;
 	pwm_signal[1] = ((actuators_pwm_values[0]&amp;amp;0x1ff)&amp;lt;&amp;lt;4) | ((actuators_pwm_values[1]&amp;amp;0x1ff)&amp;gt;&amp;gt;5);&lt;br /&gt;
 	pwm_signal[2] = ((actuators_pwm_values[1]&amp;amp;0x1ff)&amp;lt;&amp;lt;3) | ((actuators_pwm_values[2]&amp;amp;0x1ff)&amp;gt;&amp;gt;6);&lt;br /&gt;
 	pwm_signal[3] = ((actuators_pwm_values[2]&amp;amp;0x1ff)&amp;lt;&amp;lt;2) | ((actuators_pwm_values[3]&amp;amp;0x1ff)&amp;gt;&amp;gt;7);&lt;br /&gt;
 	pwm_signal[4] = ((actuators_pwm_values[3]&amp;amp;0x1ff)&amp;lt;&amp;lt;1)| 0x00;&lt;br /&gt;
 &lt;br /&gt;
 	write(actuator_fd, pwm_signal, 5);&lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
''actuators_pwm_arch_init();'' opens the device, configures the motors, activates the gpio ports, sets the reset bit to listening and opens a multicast in order to be able to commit data to all motors simultaneously.&lt;br /&gt;
&lt;br /&gt;
Having implemented this we can now control the motors using Pararazzi.&lt;br /&gt;
&lt;br /&gt;
[[Category: Minor Team 1]]&lt;br /&gt;
[[Category: TU Delft - Autonomous Quadrotor]]&lt;/div&gt;</summary>
		<author><name>Vincent van Hoek</name></author>
	</entry>
	<entry>
		<id>http://wiki.paparazziuav.org/w/index.php?title=Category:TU_Delft_-_Autonomous_Quadrotor&amp;diff=13863</id>
		<title>Category:TU Delft - Autonomous Quadrotor</title>
		<link rel="alternate" type="text/html" href="http://wiki.paparazziuav.org/w/index.php?title=Category:TU_Delft_-_Autonomous_Quadrotor&amp;diff=13863"/>
		<updated>2012-12-13T10:40:18Z</updated>

		<summary type="html">&lt;p&gt;Vincent van Hoek: Created page with &amp;quot;This page contains an collection of all pages directly related to TU Delft - Autonomous Quadrotor&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page contains an collection of all pages directly related to TU Delft - Autonomous Quadrotor&lt;/div&gt;</summary>
		<author><name>Vincent van Hoek</name></author>
	</entry>
	<entry>
		<id>http://wiki.paparazziuav.org/w/index.php?title=TU_Delft_-_Lasergame_with_Autonomous_AR_Drone&amp;diff=13862</id>
		<title>TU Delft - Lasergame with Autonomous AR Drone</title>
		<link rel="alternate" type="text/html" href="http://wiki.paparazziuav.org/w/index.php?title=TU_Delft_-_Lasergame_with_Autonomous_AR_Drone&amp;diff=13862"/>
		<updated>2012-12-13T10:40:06Z</updated>

		<summary type="html">&lt;p&gt;Vincent van Hoek: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[File:Robotics_Minor_Group_2.png|thumb|right|400px|TU Delft Minor Robotics: Quadrotor Group 2]]__TOC__&lt;br /&gt;
&lt;br /&gt;
== Introduction ==&lt;br /&gt;
Our focus in the development of the autonomous AR.Drone is focused on the lasergaming industry. In this field our goal is to implement the AR.drone as a observing and later on in the project participating member of the game. We feel that there is quite a lot of potential for an implementation of the quad rotor, because we believe that using it we can create a new dimension in laser gaming. With its manoeuvrability it will be able to easily get around the laser game obstacle course and its futuristic looks will integrate perfectly with the laser game environment.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
In our project we have chosen to work with the Standard Development Kit (SDK), which is already present on the AR.Drone. To get this done we needed to combine Paparazzi with the programs JSBSim and FlightGear.&lt;br /&gt;
&lt;br /&gt;
=== Github ===&lt;br /&gt;
For this project we used a repository, Github. Developers often use a repository for developing their software projects. When using a repository, developers can upload and download the code developed for the project. This allows multiple people to work on the same project at the same time without getting in eachother's way. It is in this case very useful and we will use Github, a populair open source repository site. For beginners, please read the manual to setup Github for Ubuntu:&lt;br /&gt;
* [[Github manual for Ubuntu]]&lt;br /&gt;
&lt;br /&gt;
Our git repository is at [https://github.com/RoboticaTUDelft/paparazzi Github RoboticaTUDelft] in the &amp;quot;minor2&amp;quot; branch. You can change to this branch bij executing the following command &amp;quot;git checkout minor2&amp;quot;. Because most of the work inside paparazzi between our implementation and the one from &amp;quot;minor1&amp;quot; is the same, it can be possible that some parts aren't merged between the two branches.&lt;br /&gt;
&lt;br /&gt;
== The Laser Gaming Setup ==&lt;br /&gt;
&lt;br /&gt;
The exact way in which we are going to implement the AR.Drone in the laser gaming industry will be decided later on in the process. We currently have four options, varying in difficulty and achievability:&lt;br /&gt;
* Enemy: The AR.Drone will be used as an interactive, shooting player that can be shot as well, possibly working in teams of multiple quad rotors&lt;br /&gt;
* Scout: The AR.Drone will survey a certain area streaming back its video, allowing players to know where enemies are&lt;br /&gt;
* Mine-deployer: To allow for a more fast-paced game the AR.Drone will find a player and hover around its position. It will then begin counting down, which means the player needs to move or risk getting hit by the virtual explosion of the AR.Drone&lt;br /&gt;
* Observer: As there are nearly always people waiting while other people are playing, the AR.Drone can be used as a tool to live-stream the current game to a beamer for everyone to see. Games could also be taped and watched by the players after the game is over, and could even be sold&lt;br /&gt;
&lt;br /&gt;
===Implementation===&lt;br /&gt;
During the test phase we want to have an adjustable system that we can tweak while working. This is the reason that we made a PIC based design. For testing we are going to use a system based on the RC-5 protocol by Phillips. The RC-5 protocol is used for remote controls. We are going to use it for sending and receiving information about the players.&lt;br /&gt;
&lt;br /&gt;
== Simulation ==&lt;br /&gt;
&lt;br /&gt;
=== Model ===&lt;br /&gt;
&lt;br /&gt;
*Setting up FlightGear such that it loads your model. See [[AR.Drone_2_-_Flightgear]].&lt;br /&gt;
=== Combining Paparazzi with FlightGear and JSBSim ===&lt;br /&gt;
&lt;br /&gt;
To get the AR.Drone to fly autonomously a model of the system is required. This can be created using paparazzi combined with JSBSim and FlightGear. The following steps will guide you through the process of setting up an environment to simulate the AR.Drone 2 controlled by Paparazzi. This will describe how to set up the simulation environment in Linux. It has been tested using Ubuntu, but it should work under any recent distro.&lt;br /&gt;
*Install the ground station. See [[Installation]].&lt;br /&gt;
*Install JSBSim. See [[JSBSim]].&lt;br /&gt;
*Install FlightGear and link it to Paparazzi. See [[Simulation#View_the_simulation_in_Flight_Gear]].&lt;br /&gt;
&lt;br /&gt;
== Getting information ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Getting Started ===&lt;br /&gt;
This project is developed by using Linux, ubuntu. We don't support information for other linux distributions, but feel free to try it out.&lt;br /&gt;
* Follow the instructions described in the &amp;quot;Getting the cross-compiler&amp;quot;.&lt;br /&gt;
* Get the source from our github which is explained in the section above.&lt;br /&gt;
* Build the paparazzi source (for more information: [http://paparazzi.enac.fr/wiki/Installation/FromScratch])&lt;br /&gt;
* You are ready to develop with our project.&lt;br /&gt;
&lt;br /&gt;
=== The cross-compiler === &lt;br /&gt;
# Download the cross-compiler from [http://taghof.github.com/Navigation-for-Robots-with-WIFI-and-CV/downloads/codesetup.sh]&lt;br /&gt;
# Open the terminal and direct to your home directory.&lt;br /&gt;
# Type the following commands (without the $):&lt;br /&gt;
&lt;br /&gt;
 $ sudo chmod +x codesetup.sh&lt;br /&gt;
 $ sudo ./codesetup.sh&lt;br /&gt;
&lt;br /&gt;
Wait a few minutes and you're done!&lt;br /&gt;
&lt;br /&gt;
=== AT Commands ===&lt;br /&gt;
The AR.Drone 2 has a self made protocol for controlling the AR.Drone 2 remotly over wifi. More information can be found at [[AT Commands AR.Drone 2]].&lt;br /&gt;
&lt;br /&gt;
=== Navdata ===&lt;br /&gt;
The AR.Drone 2 also has a self made protocol for sending navdata to the client over wifi. More information can be found at [[Navdata AR.Drone 2]].&lt;br /&gt;
&lt;br /&gt;
=== GPS signals ===&lt;br /&gt;
To let our AR.Drone 2 communicate with Paparazzi an external [[GPS_specification | BU-353 GPS]] is used. For the implementation see [[GPS Driver AR.Drone2]].&lt;br /&gt;
&lt;br /&gt;
=== Telnet ===&lt;br /&gt;
The AR.Drone 2 has a telnet interface that opens a root shell on the AR.Drone 2, which is needed to test and install software. More information can be found at [[Telnet AR.Drone2]].&lt;br /&gt;
&lt;br /&gt;
=== FTP ===&lt;br /&gt;
The AR.Drone 2 also has a FTP server running, which makes it possible to upload files like programs to the AR.Drone 2. More information can be found at [[FTP AR.Drone2]].&lt;br /&gt;
&lt;br /&gt;
== Programming ==&lt;br /&gt;
&lt;br /&gt;
=== AR.Drone 2 internal communication ===&lt;br /&gt;
We use internal communcation to control the AR.Drone 2 and recieve the navigation data from the AR.Drone 2. This is done by using the AT commands and the navdata with a socket connection to &amp;quot;localhost&amp;quot;. The control and navigation data run in seperate threads inside paparazzi, to make sure that both connections are kept alive. The navigation data thread sends all the information is has to paparazzi each update. The control thread waits for paparazzi to send commands and keeps the connection alive by sending a dummy command every second(because the timeout is 2 seconds).&lt;br /&gt;
&lt;br /&gt;
=== Using the GPS signals ===&lt;br /&gt;
We will use an external GPS reciever which will be connected to the AR.Drone 2 usb or telnet usb port. We still have to figure out if it is possible to adjust the default driver for the USB port on the AR.Drone 2, because this is configured as an external disk which is accesable with FTP.&lt;br /&gt;
When we have figured out if this is possible, the default usb-connector of the GPS reciever doesn't need to be modified to fit the telnet usb port at the bottom of the AR. Drone 2.&lt;br /&gt;
&lt;br /&gt;
Because of the great support of GPS modules inside paparaazi, we don't have to implement the GPS module inside paparazzi ourself.&lt;br /&gt;
&lt;br /&gt;
=== Wifi implementation inside paparazzi ===&lt;br /&gt;
Paparazzi doesn't support wifi connection with the base station by default. We are implementing this by creating a socket connection between the AR.Drone 2 and the base station and send the communication packets using a self-created protocol.&lt;br /&gt;
&lt;br /&gt;
=== AR.Drone 2 Sign convention ===&lt;br /&gt;
* [[AR.Drone_2.0_sign_convention]]&lt;br /&gt;
&lt;br /&gt;
== Manuals and guides ==&lt;br /&gt;
* [[Step by step guide for beginners]]&lt;br /&gt;
* [[Developers Manual]]&lt;br /&gt;
&lt;br /&gt;
[[Category: TU Delft - Autonomous Quadrotor]]&lt;/div&gt;</summary>
		<author><name>Vincent van Hoek</name></author>
	</entry>
	<entry>
		<id>http://wiki.paparazziuav.org/w/index.php?title=TU_Delft_-_Autonomous_Quadrotor&amp;diff=13860</id>
		<title>TU Delft - Autonomous Quadrotor</title>
		<link rel="alternate" type="text/html" href="http://wiki.paparazziuav.org/w/index.php?title=TU_Delft_-_Autonomous_Quadrotor&amp;diff=13860"/>
		<updated>2012-12-13T10:38:53Z</updated>

		<summary type="html">&lt;p&gt;Vincent van Hoek: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[File:tudelft_logo.jpg|link=http://tudelft.nl/en/]]&lt;br /&gt;
&lt;br /&gt;
== TU Delft - Autonomous Quadrotor ==&lt;br /&gt;
&lt;br /&gt;
On 3 September 2012 two student teams of the Delft University of Technology started with a UAV robotics project, under guidance of dr. ir. M. Wisse and ir. B. D. W. Remes. Each team would have a slightly different initial objective. After completing this objective each team will be free to set its own objectives for the next phase of this project.&lt;br /&gt;
&lt;br /&gt;
=== Objectives ===&lt;br /&gt;
Our first objective is to enable the Parrot AR Drone v2.0 (from now on referred to as the AR Drone 2) to fly autonomously on the Paparazzi Software.&lt;br /&gt;
* Team one will work with the raw navigation data, creating their own software to retrieve and interpret the date. They will need to describe a new board configuration within for Paparazzi to work with.&lt;br /&gt;
* Team two will work with the programming as developed by Parrot. They will need to interpret the data as provided by the program and determine what data to send back.&lt;br /&gt;
&lt;br /&gt;
The second objective is that each team has to add a GPS sensor to the AR Drone 2. We will use the US Globalsat BU-353 GPS receiver for this purpose and mount it to the AR Drone 2 using the USB connection on the board.&lt;br /&gt;
&lt;br /&gt;
=== Project Contents ===&lt;br /&gt;
* [[AR.Drone 2 - Specifications]]&lt;br /&gt;
** [[Motor specifcations]]&lt;br /&gt;
** [[Sensor specifications]]&lt;br /&gt;
** [[GPS specifications]]&lt;br /&gt;
&lt;br /&gt;
=== Teams ===&lt;br /&gt;
* Team 1: [[TU Delft - Search and Rescue with AR Drone 2]]&lt;br /&gt;
* Team 2: [[TU Delft - Lasergame with Autonomous AR Drone]]&lt;br /&gt;
&lt;br /&gt;
== Development ==&lt;br /&gt;
To try and keep you up to date with the most recent developments in this project we have created the [[Talk: TU Delft: AR Drone 2 - News|TU Delft: AR Drone 2 - News]] page. Here we will post breakthroughs, summaries of a page update and small facts that might be nice to know. &lt;br /&gt;
&lt;br /&gt;
=== Installing Paparazzi on AR.Drone 2 ===&lt;br /&gt;
Installing Paparazzi on the AR Drone 2 is taking more effort than we initially expected. To make life easier on both Paparazzi users and developers we are setting up two separate pages. The [[Beginners Page]] is meant for everyone that wants to use Paparazzi as the control system on their UAV. It will guide them through all the choices they will have to make, from selecting the correct hardware modules in Paparazzi to how to use the Paparazzi GCS.&lt;br /&gt;
&lt;br /&gt;
The [[Developers Page]] is meant for anyone that wants help develop Paparazzi into a more all-round platform that can be used on any and all UAVs. It will describe in depth what is needed in order to add a new modules to Paparazzi without ruining the rest of the architecture.&lt;br /&gt;
&lt;br /&gt;
''Editors note: Both these pages are not complete yet. We will let you know when they near completion''&lt;br /&gt;
&lt;br /&gt;
* [[Beginners Page]]&lt;br /&gt;
* [[Developers Page]]&lt;br /&gt;
&lt;br /&gt;
[[Category: TU Delft - Autonomous Quadrotor]]&lt;/div&gt;</summary>
		<author><name>Vincent van Hoek</name></author>
	</entry>
	<entry>
		<id>http://wiki.paparazziuav.org/w/index.php?title=TU_Delft_-_Search_and_Rescue_with_AR_Drone_2&amp;diff=13859</id>
		<title>TU Delft - Search and Rescue with AR Drone 2</title>
		<link rel="alternate" type="text/html" href="http://wiki.paparazziuav.org/w/index.php?title=TU_Delft_-_Search_and_Rescue_with_AR_Drone_2&amp;diff=13859"/>
		<updated>2012-12-13T10:38:35Z</updated>

		<summary type="html">&lt;p&gt;Vincent van Hoek: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Image:2012-10-03 12.40.46.jpg|thumb|right|400px|TU Delft Minor Robotics: Quadrotor Group 1]]__TOC__&lt;br /&gt;
&lt;br /&gt;
== Introduction==&lt;br /&gt;
The high maneuverability and stability of a quadrotor inspired us to make an autonomous search and rescue vehicle. For this the AR Drone 2 was used.  The goal of this project is thus to further develop the AR Drone2 into a robot capable of performing an autonomous search mission. All the steps taken are described on this page.&lt;br /&gt;
&lt;br /&gt;
In order to achieve this goal we decided to work with raw data. The data was obtained by creating drivers capable of extracting and interpreting sensor data from the AR Drone2. In order to get the quadrotor flying paparazzi was used. For simulation JSBSim was used, which was then visualized using Flight Gear. The final section of the page will discuss the subject of making the quadrotor autonomous.&lt;br /&gt;
&lt;br /&gt;
First some general information about the project is given in chapter2. How all the data was obtained is presented in chapter 3. In chapter 4 it is described how to get paparazzi working on the drone. Next in chapter 5 we present how simulation was done and finally the proces of making the drone capable of performing an autonomous search and rescue mission is described in chapter 6.&lt;br /&gt;
&lt;br /&gt;
== General project information==&lt;br /&gt;
&lt;br /&gt;
This project was develloped using Linux, more specific Ubuntu. So except for the simulation part all steps are explained for this operating system. But it's a free operating system, so if you want to retrace our steps you can simply download it and access it from your current operating system using virtual box. A small tutorial can be found [[ Virtualbox 4.1.22 for Windows Hosts &amp;amp; Ubuntu 12.04 LTS| here]].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
For this project we used a repository, Github. This allows multiple people to work on the same project at the same time without getting in eachother's way. So all files assosiated with our project assosiated can be accesed using Github. For beginners, you can read the manual to setup Github for Ubuntu:&lt;br /&gt;
&lt;br /&gt;
* [[Github manual for Ubuntu]]&lt;br /&gt;
&lt;br /&gt;
Our git repository is at [https://github.com/RoboticaTUDelft/paparazzi Github RoboticaTUDelft] in the &amp;quot;minor1&amp;quot; branch. You can change to this branch by executing the following command &amp;quot;git checkout minor1&amp;quot;. The related project, [[TU Delft - Lasergame with Autonomous AR Drone]], can be found under the minor2 branch.&lt;br /&gt;
&lt;br /&gt;
== Data acquisition==&lt;br /&gt;
&lt;br /&gt;
So as explained in the introduction, firstly the raw data had to be extracted from the AR Drone2. So this data could be fed to paparazzi. So we started with trying to connect and pass files to the AR Drone2, which is desribed in the connecing section. The exact details of the extraction of the data is described in the NAV board section. Next the data from paparazzi had to be passed on to our actuators correctly. This is described in the motor driver section. To be able to perform better in our autonomous mission a GPS was added to  the AR Drone2. The details of this are described in the GPS section.&lt;br /&gt;
&lt;br /&gt;
=== Connecting===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
For our project the operating system Ubuntu was used, so all the steps described here are for an Ubuntu operating system.&lt;br /&gt;
&lt;br /&gt;
The connecting was done using Telnet.&lt;br /&gt;
&lt;br /&gt;
*[[Telnet AR.Drone2]]&lt;br /&gt;
&lt;br /&gt;
The actual transferring of files is done using a File Transfer Protocol (FTP).&lt;br /&gt;
&lt;br /&gt;
*[[FTP AR.Drone2]]&lt;br /&gt;
&lt;br /&gt;
=== NAV board===&lt;br /&gt;
&lt;br /&gt;
Throughout this project, on several different occasions, it will be apparent that the AR Drone2 was never really meant to be used as we inteded to. In addition to this, Parrot SA has a vested interest in maintaining the exclusivity of its product, rightfully so. So with what little information is publicly available, reverse engineering was a lot harder than we first thought when we began the project. However the AR.Drone2 looks a lot like the AR.Drone1, its predecessor, for which a lot of reverse engineering has allready been done by other people. Ofcourse there are differences and this is where we started reverse engineering the bits and pieces for the NAV board.&lt;br /&gt;
&lt;br /&gt;
*[[NAV board AR.Drone2]]&lt;br /&gt;
&lt;br /&gt;
=== Motor driver===&lt;br /&gt;
&lt;br /&gt;
Using a similar technique as for the NAV board, the motor drivers were obtained.&lt;br /&gt;
&lt;br /&gt;
*[[Motor driver AR.Drone2]]&lt;br /&gt;
&lt;br /&gt;
=== GPS===&lt;br /&gt;
The GPS we use with the AR.Drone2 is the [[BU_353_specifications | BU-353 GPS]]. To make good use of this GPS we had to create our own driver for it. &lt;br /&gt;
&lt;br /&gt;
*[[GPS Driver AR.Drone2]]&lt;br /&gt;
&lt;br /&gt;
== Paparazzi==&lt;br /&gt;
&lt;br /&gt;
Now the necessary raw data can be obtained and the actuators can be controlled, it's time to focus on paparazzi. This section consists of two parts. The first part deals with integrating the AR.Drone2 into the paparazzi libraries, the second part deals with compiling paparazzi for the drone. More inforamtion on how to install paparazzi can be found [[installation|here]].&lt;br /&gt;
&lt;br /&gt;
=== Using Paparazzi===&lt;br /&gt;
&lt;br /&gt;
This parts describes the process of adapting the paparazzi libraries to make them compatible with the AR.Drone’s hard en software.&lt;br /&gt;
&lt;br /&gt;
*[[Integrating the AR Drone 2 with Paparazzi]]&lt;br /&gt;
&lt;br /&gt;
=== Compiling===&lt;br /&gt;
&lt;br /&gt;
Finally paparazzi can be compiled and be put on the AR.Drone 2. This is describes in this section.&lt;br /&gt;
&lt;br /&gt;
*[[compiling paparazzi for  the AR.Drone2]]&lt;br /&gt;
&lt;br /&gt;
=== Paparazzi architecture===&lt;br /&gt;
&lt;br /&gt;
In the near future, we'd like to add features like object avoidance. Since this isn't yet implemented in paparazzi we have to start from scratch. Therefore we tried to understand the architecture a little better than is explained on this wiki at the moment.&lt;br /&gt;
&lt;br /&gt;
*[[Insight of paparazzi architecture]] &lt;br /&gt;
&lt;br /&gt;
== Simulation==&lt;br /&gt;
&lt;br /&gt;
Now paparazzi was compiled and our drone was ready to go, simulation could begin. The simulation was done in JSBSim, which was then visualized using flightgear. This are also the 2 parts in this section. More information on how to install JSBSim see [[JSBSim]]. For more information on how to install Flightgear and link it to Paparazzi see [[Simulation#View_the_simulation_in_Flight_Gear]].&lt;br /&gt;
&lt;br /&gt;
=== JSBSim===&lt;br /&gt;
'''Creating A Flight Dynamics Model'''&lt;br /&gt;
&lt;br /&gt;
In order to control the otherwise highly active dynamic nature of the quadrotor, an autopilot system will be necessary because the reaction time of the pilot will, otherwise, not be sufficient to maintain stable flight.  The autopilot system will be created in Paparazzi for which a prerequisite is a proper flight dynamics model (FDM). To create the FDM the team will use [http://jsbsim.sourceforge.net/ JSBSIM], an open-source, platform-independent, flight-dynamics and control software library. Installing JSBSIM is covered for several different operating systems on the Paparazzi Wiki,  [[JSBSim|Installing JSBSIM]].&lt;br /&gt;
&lt;br /&gt;
Once JSBSim had been installed, the actual work could begin. Flight Dynamics and the creation of an individual model for an aircraft is essentially a case study regarding its control, stability, and performance. To model those three dynamics aspects is essentially what JSBSIM was used for but before work could begin, JSBSIM would first need to be fed a configuration file. The configuration file is written in a .xml format and, naturally, is unique to each aircraft. Although not applicable to this project, it is worth mentioning in the event that the reader of this page is not following the instruction exactly and is using it more for reference, there is a tool on the JSBSIM page called [http://jsbsim.sourceforge.net/aeromatic2.html Aeromatic], which is a capable .xml configuration file generator. For those following this project closely, a link will follow for creating a suitable JSBSIM .xml configuration file for the AR.Drone2.&lt;br /&gt;
&lt;br /&gt;
*[[Creating a JSBSIM .xml Configuration File for AR.Drone2]]&lt;br /&gt;
&lt;br /&gt;
=== Flightgear===&lt;br /&gt;
Without actually using the drone itself, and only the previously developed JSBSIM configuration file, a simulated drone can be flown in Flightgear. To do so, a CAD model of the drone is implemented to give a visualization to the simulated model. Flightgear is the preeminent open-source flight simulator backed by a large community of active users. Implementation for this particular project can be read about on the [[AR.Drone 2 - Flightgear]] wikipage. More on the software can be found on the [http://www.flightgear.org/ Flightgear website].&lt;br /&gt;
&lt;br /&gt;
== Autonomous Search and Rescue Mission==&lt;br /&gt;
&lt;br /&gt;
This section deals with the final stage of our project of making the further developing the AR.Drone2 into a quadrotor performing an autonomous search and rescue mission. First autonomous flight is discussed, next the features in order to perform a search and rescue mission are discussed.  &lt;br /&gt;
&lt;br /&gt;
=== Autonomous flight===&lt;br /&gt;
&lt;br /&gt;
The last part of this project consist of making the AR.Drone2 Autonomous. The this process consist of 4 branches:&lt;br /&gt;
&lt;br /&gt;
*[[Autonomous flight of Paparazzi AR.Drone2]]&lt;br /&gt;
*[[Multidirectional distance measurement AR.Drone2]]&lt;br /&gt;
*[[Object Avoidance AR.Drone2]]&lt;br /&gt;
*[[Fail safe AR.Drone2]]&lt;br /&gt;
&lt;br /&gt;
=== Search and Rescue Features===&lt;br /&gt;
&lt;br /&gt;
*[[Mapping AR.Drone2]]&lt;br /&gt;
*[[Hull Desing AR.Drone2]]&lt;br /&gt;
*[[Optical flow AR.Drone2]]&lt;br /&gt;
*[[Immage recognitionAR.Drone2]]&lt;br /&gt;
&lt;br /&gt;
[[Category: TU Delft - Autonomous Quadrotor]]&lt;/div&gt;</summary>
		<author><name>Vincent van Hoek</name></author>
	</entry>
	<entry>
		<id>http://wiki.paparazziuav.org/w/index.php?title=AR_Drone_2/Motor_driver&amp;diff=13858</id>
		<title>AR Drone 2/Motor driver</title>
		<link rel="alternate" type="text/html" href="http://wiki.paparazziuav.org/w/index.php?title=AR_Drone_2/Motor_driver&amp;diff=13858"/>
		<updated>2012-12-13T10:38:13Z</updated>

		<summary type="html">&lt;p&gt;Vincent van Hoek: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== The motor driver ==&lt;br /&gt;
Starting off with the project we first tried searching what had already been done for AR.Drone1 and we found a very good source: [http://blog.perquin.com/blog/2011/06/ Perquin blog]. This explained &lt;br /&gt;
that, for the AR Drone 1, the motors where controlled by a device:&lt;br /&gt;
&lt;br /&gt;
''*/dev/ttyPA1''&lt;br /&gt;
&lt;br /&gt;
After initialization a PWM bit stream was sent to that device containing a 3 start bits, followed 9 bits for each motor and 1 stop bit. The data was send as a stream of five 8-bit unsigned integers. This means the data will look as follows:&lt;br /&gt;
&lt;br /&gt;
''001aaaaa aaaabbbb bbbbbccc ccccccdd ddddddd0''&lt;br /&gt;
&lt;br /&gt;
The start bit 001 seemed to be specific for controlling the motors as the device also controlled the motor LEDs. For that the start bit is 011, but more on that in another section. We soon noticed that the device name is different on the AR.Drone2. By using dmesg and trace functions we found that, for the motors, the device is as follows:&lt;br /&gt;
&lt;br /&gt;
''*/dev/ttyO0 : motor''&lt;br /&gt;
&lt;br /&gt;
After finding out what the correct device was, we could simply change the device name in the driver created by hugo: [http://blog.perquin.com/blog/ar-drone-program-elf-replacement/ Perquin Program].&lt;br /&gt;
This gave us a working motor driver.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Motor driver in Paparazzi ==&lt;br /&gt;
&lt;br /&gt;
The next step was implementing that motor driver into Paparazzi. In order to make it work we have to implement 3 functions into the files actuators_pwm_arch.c and actuators_pwm_arch.h files.&lt;br /&gt;
&lt;br /&gt;
But first I will explain a bit about how Paparazzi operates the motors. In the main file for rotorcraft a function is called periodicly:&lt;br /&gt;
&lt;br /&gt;
''SetActuatorsFromCommands(commands);''&lt;br /&gt;
&lt;br /&gt;
This function is defined in the airframe.h file that is generated for each aircraft and is based on the airframe.xml file. The commands parameter contains a array of values as set by the AHRS, INS or 'manually'. These values represent the Pitch, Yaw, Roll and Thrust. For Quadrotors this function then calls a function in motor mixing.&lt;br /&gt;
&lt;br /&gt;
''motor_mixing_run(autopilot_motors_on,FALSE,values);''&lt;br /&gt;
&lt;br /&gt;
Motor mixing is a file meant to realign the rotational direction and positioning of the rotorcraft's rotors in order to be able to translate the commands correctly into a thrust value for each motor. After this function has run, the actuator values have been calculated for each motor and can be set and translated into the correct structure for the specific motors, in our case a PWM signal.&lt;br /&gt;
&lt;br /&gt;
Now the real work begins for in order to set the actuator values we have to implement the functions in the actuator_pwm_arch files as mentioned before. The functions are:&lt;br /&gt;
&lt;br /&gt;
* ''ActuatorPwmSet(_n,_v);'' where n is the number assigned to a motor and v is the associated value.&lt;br /&gt;
* ''actuators_pwm_commit();'' that is directly called from ''ActuatorsPwmCommit();''.&lt;br /&gt;
* ''actuators_pwm_arch_init();''&lt;br /&gt;
&lt;br /&gt;
''ActuatorPwmSet(_n,_v);'' is a simple function that makes the calculated values available to ''actuators_pwm_commit();''. &lt;br /&gt;
&lt;br /&gt;
''actuators_pwm_commit();'' converts the received values into a pwm signal and sends this signal to the device. Our function looks like this:&lt;br /&gt;
&lt;br /&gt;
 void actuator_pwm_commit(void){&lt;br /&gt;
 	uint8_t pwm_signal[5];&lt;br /&gt;
 &lt;br /&gt;
 	pwm_signal[0] = 0x20 | ((actuators_pwm_values[0]&amp;amp;0x1ff)&amp;gt;&amp;gt;4);&lt;br /&gt;
 	pwm_signal[1] = ((actuators_pwm_values[0]&amp;amp;0x1ff)&amp;lt;&amp;lt;4) | ((actuators_pwm_values[1]&amp;amp;0x1ff)&amp;gt;&amp;gt;5);&lt;br /&gt;
 	pwm_signal[2] = ((actuators_pwm_values[1]&amp;amp;0x1ff)&amp;lt;&amp;lt;3) | ((actuators_pwm_values[2]&amp;amp;0x1ff)&amp;gt;&amp;gt;6);&lt;br /&gt;
 	pwm_signal[3] = ((actuators_pwm_values[2]&amp;amp;0x1ff)&amp;lt;&amp;lt;2) | ((actuators_pwm_values[3]&amp;amp;0x1ff)&amp;gt;&amp;gt;7);&lt;br /&gt;
 	pwm_signal[4] = ((actuators_pwm_values[3]&amp;amp;0x1ff)&amp;lt;&amp;lt;1)| 0x00;&lt;br /&gt;
 &lt;br /&gt;
 	write(actuator_fd, pwm_signal, 5);&lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
''actuators_pwm_arch_init();'' opens the device, configures the motors, activates the gpio ports, sets the reset bit to listening and opens a multicast in order to be able to commit data to all motors simultaneously.&lt;br /&gt;
&lt;br /&gt;
Having implemented this we can now control the motors using Pararazzi.&lt;br /&gt;
&lt;br /&gt;
[[Category: Search and Rescue]]&lt;br /&gt;
[[Category: TU Delft - Autonomous Quadrotor]]&lt;/div&gt;</summary>
		<author><name>Vincent van Hoek</name></author>
	</entry>
	<entry>
		<id>http://wiki.paparazziuav.org/w/index.php?title=AR_Drone_2/Motor_driver&amp;diff=13857</id>
		<title>AR Drone 2/Motor driver</title>
		<link rel="alternate" type="text/html" href="http://wiki.paparazziuav.org/w/index.php?title=AR_Drone_2/Motor_driver&amp;diff=13857"/>
		<updated>2012-12-13T10:35:53Z</updated>

		<summary type="html">&lt;p&gt;Vincent van Hoek: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== The motor driver ==&lt;br /&gt;
Starting off with the project we first tried searching what had already been done for AR.Drone1 and we found a very good source: [http://blog.perquin.com/blog/2011/06/ Perquin blog]. This explained &lt;br /&gt;
that, for the AR Drone 1, the motors where controlled by a device:&lt;br /&gt;
&lt;br /&gt;
''*/dev/ttyPA1''&lt;br /&gt;
&lt;br /&gt;
After initialization a PWM bit stream was sent to that device containing a 3 start bits, followed 9 bits for each motor and 1 stop bit. The data was send as a stream of five 8-bit unsigned integers. This means the data will look as follows:&lt;br /&gt;
&lt;br /&gt;
''001aaaaa aaaabbbb bbbbbccc ccccccdd ddddddd0''&lt;br /&gt;
&lt;br /&gt;
The start bit 001 seemed to be specific for controlling the motors as the device also controlled the motor LEDs. For that the start bit is 011, but more on that in another section. We soon noticed that the device name is different on the AR.Drone2. By using dmesg and trace functions we found that, for the motors, the device is as follows:&lt;br /&gt;
&lt;br /&gt;
''*/dev/ttyO0 : motor''&lt;br /&gt;
&lt;br /&gt;
After finding out what the correct device was, we could simply change the device name in the driver created by hugo: [http://blog.perquin.com/blog/ar-drone-program-elf-replacement/ Perquin Program].&lt;br /&gt;
This gave us a working motor driver.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Motor driver in Paparazzi ==&lt;br /&gt;
&lt;br /&gt;
The next step was implementing that motor driver into Paparazzi. In order to make it work we have to implement 3 functions into the files actuators_pwm_arch.c and actuators_pwm_arch.h files.&lt;br /&gt;
&lt;br /&gt;
But first I will explain a bit about how Paparazzi operates the motors. In the main file for rotorcraft a function is called periodicly:&lt;br /&gt;
&lt;br /&gt;
''SetActuatorsFromCommands(commands);''&lt;br /&gt;
&lt;br /&gt;
This function is defined in the airframe.h file that is generated for each aircraft and is based on the airframe.xml file. The commands parameter contains a array of values as set by the AHRS, INS or 'manually'. These values represent the Pitch, Yaw, Roll and Thrust. For Quadrotors this function then calls a function in motor mixing.&lt;br /&gt;
&lt;br /&gt;
''motor_mixing_run(autopilot_motors_on,FALSE,values);''&lt;br /&gt;
&lt;br /&gt;
Motor mixing is a file meant to realign the rotational direction and positioning of the rotorcraft's rotors in order to be able to translate the commands correctly into a thrust value for each motor. After this function has run, the actuator values have been calculated for each motor and can be set and translated into the correct structure for the specific motors, in our case a PWM signal.&lt;br /&gt;
&lt;br /&gt;
Now the real work begins for in order to set the actuator values we have to implement the functions in the actuator_pwm_arch files as mentioned before. The functions are:&lt;br /&gt;
&lt;br /&gt;
* ''ActuatorPwmSet(_n,_v);'' where n is the number assigned to a motor and v is the associated value.&lt;br /&gt;
* ''actuators_pwm_commit();'' that is directly called from ''ActuatorsPwmCommit();''.&lt;br /&gt;
* ''actuators_pwm_arch_init();''&lt;br /&gt;
&lt;br /&gt;
''ActuatorPwmSet(_n,_v);'' is a simple function that makes the calculated values available to ''actuators_pwm_commit();''. &lt;br /&gt;
&lt;br /&gt;
''actuators_pwm_commit();'' converts the received values into a pwm signal and sends this signal to the device. Our function looks like this:&lt;br /&gt;
&lt;br /&gt;
 void actuator_pwm_commit(void){&lt;br /&gt;
 	uint8_t pwm_signal[5];&lt;br /&gt;
 &lt;br /&gt;
 	pwm_signal[0] = 0x20 | ((actuators_pwm_values[0]&amp;amp;0x1ff)&amp;gt;&amp;gt;4);&lt;br /&gt;
 	pwm_signal[1] = ((actuators_pwm_values[0]&amp;amp;0x1ff)&amp;lt;&amp;lt;4) | ((actuators_pwm_values[1]&amp;amp;0x1ff)&amp;gt;&amp;gt;5);&lt;br /&gt;
 	pwm_signal[2] = ((actuators_pwm_values[1]&amp;amp;0x1ff)&amp;lt;&amp;lt;3) | ((actuators_pwm_values[2]&amp;amp;0x1ff)&amp;gt;&amp;gt;6);&lt;br /&gt;
 	pwm_signal[3] = ((actuators_pwm_values[2]&amp;amp;0x1ff)&amp;lt;&amp;lt;2) | ((actuators_pwm_values[3]&amp;amp;0x1ff)&amp;gt;&amp;gt;7);&lt;br /&gt;
 	pwm_signal[4] = ((actuators_pwm_values[3]&amp;amp;0x1ff)&amp;lt;&amp;lt;1)| 0x00;&lt;br /&gt;
 &lt;br /&gt;
 	write(actuator_fd, pwm_signal, 5);&lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
''actuators_pwm_arch_init();'' opens the device, configures the motors, activates the gpio ports, sets the reset bit to listening and opens a multicast in order to be able to commit data to all motors simultaneously.&lt;br /&gt;
&lt;br /&gt;
Having implemented this we can now control the motors using Pararazzi.&lt;/div&gt;</summary>
		<author><name>Vincent van Hoek</name></author>
	</entry>
	<entry>
		<id>http://wiki.paparazziuav.org/w/index.php?title=AR_Drone_2/Motor_driver&amp;diff=13851</id>
		<title>AR Drone 2/Motor driver</title>
		<link rel="alternate" type="text/html" href="http://wiki.paparazziuav.org/w/index.php?title=AR_Drone_2/Motor_driver&amp;diff=13851"/>
		<updated>2012-12-13T08:52:43Z</updated>

		<summary type="html">&lt;p&gt;Vincent van Hoek: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Starting off with the project we first tried searching what had allready been done for AR.Drone1 and we found a very good source in the [Perquin blog|http://blog.perquin.com/blog/2011/06/] explaining &lt;br /&gt;
how to control the motors. We soon noticed that the device name is different on the AR.Drone2. We found out by using dmesg and trace functions that the devices are as follows:&lt;br /&gt;
&lt;br /&gt;
*/dev/ttyO0 : motor&lt;br /&gt;
&lt;br /&gt;
After finding out what the correct device was, we could simply change the device name in the driver created by hugo[http://blog.perquin.com/blog/ar-drone-program-elf-replacement/].&lt;br /&gt;
This gave us a working motor driver.&lt;/div&gt;</summary>
		<author><name>Vincent van Hoek</name></author>
	</entry>
	<entry>
		<id>http://wiki.paparazziuav.org/w/index.php?title=TU_Delft_-_Lasergame_with_Autonomous_AR_Drone&amp;diff=13848</id>
		<title>TU Delft - Lasergame with Autonomous AR Drone</title>
		<link rel="alternate" type="text/html" href="http://wiki.paparazziuav.org/w/index.php?title=TU_Delft_-_Lasergame_with_Autonomous_AR_Drone&amp;diff=13848"/>
		<updated>2012-12-12T14:25:37Z</updated>

		<summary type="html">&lt;p&gt;Vincent van Hoek: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[File:Robotics_Minor_Group_2.png|thumb|right|400px|TU Delft Minor Robotics: Quadrotor Group 2]]__TOC__&lt;br /&gt;
&lt;br /&gt;
== Introduction ==&lt;br /&gt;
Our focus in the development of the autonomous AR.Drone is focused on the lasergaming industry. In this field our goal is to implement the AR.drone as a observing and later on in the project participating member of the game. We feel that there is quite a lot of potential for an implementation of the quad rotor, because we believe that using it we can create a new dimension in laser gaming. With its manoeuvrability it will be able to easily get around the laser game obstacle course and its futuristic looks will integrate perfectly with the laser game environment.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
In our project we have chosen to work with the Standard Development Kit (SDK), which is already present on the AR.Drone. To get this done we needed to combine Paparazzi with the programs JSBSim and FlightGear.&lt;br /&gt;
&lt;br /&gt;
=== Github ===&lt;br /&gt;
For this project we used a repository, Github. Developers often use a repository for developing their software projects. When using a repository, developers can upload and download the code developed for the project. This allows multiple people to work on the same project at the same time without getting in eachother's way. It is in this case very useful and we will use Github, a populair open source repository site. For beginners, please read the manual to setup Github for Ubuntu:&lt;br /&gt;
* [[Github manual for Ubuntu]]&lt;br /&gt;
&lt;br /&gt;
Our git repository is at [https://github.com/RoboticaTUDelft/paparazzi Github RoboticaTUDelft] in the &amp;quot;minor2&amp;quot; branch. You can change to this branch bij executing the following command &amp;quot;git checkout minor2&amp;quot;. Because most of the work inside paparazzi between our implementation and the one from &amp;quot;minor1&amp;quot; is the same, it can be possible that some parts aren't merged between the two branches.&lt;br /&gt;
&lt;br /&gt;
== The Laser Gaming Setup ==&lt;br /&gt;
&lt;br /&gt;
The exact way in which we are going to implement the AR.Drone in the laser gaming industry will be decided later on in the process. We currently have four options, varying in difficulty and achievability:&lt;br /&gt;
* Enemy: The AR.Drone will be used as an interactive, shooting player that can be shot as well, possibly working in teams of multiple quad rotors&lt;br /&gt;
* Scout: The AR.Drone will survey a certain area streaming back its video, allowing players to know where enemies are&lt;br /&gt;
* Mine-deployer: To allow for a more fast-paced game the AR.Drone will find a player and hover around its position. It will then begin counting down, which means the player needs to move or risk getting hit by the virtual explosion of the AR.Drone&lt;br /&gt;
* Observer: As there are nearly always people waiting while other people are playing, the AR.Drone can be used as a tool to live-stream the current game to a beamer for everyone to see. Games could also be taped and watched by the players after the game is over, and could even be sold&lt;br /&gt;
&lt;br /&gt;
===Implementation===&lt;br /&gt;
During the test phase we want to have an adjustable system that we can tweak while working. This is the reason that we made a PIC based design. For testing we are going to use a system based on the RC-5 protocol by Phillips. The RC-5 protocol is used for remote controls. We are going to use it for sending and receiving information about the players.&lt;br /&gt;
&lt;br /&gt;
== Simulation ==&lt;br /&gt;
&lt;br /&gt;
=== Model ===&lt;br /&gt;
&lt;br /&gt;
*Setting up FlightGear such that it loads your model. See [[AR.Drone_2_-_Flightgear]].&lt;br /&gt;
=== Combining Paparazzi with FlightGear and JSBSim ===&lt;br /&gt;
&lt;br /&gt;
To get the AR.Drone to fly autonomously a model of the system is required. This can be created using paparazzi combined with JSBSim and FlightGear. The following steps will guide you through the process of setting up an environment to simulate the AR.Drone 2 controlled by Paparazzi. This will describe how to set up the simulation environment in Linux. It has been tested using Ubuntu, but it should work under any recent distro.&lt;br /&gt;
*Install the ground station. See [[Installation]].&lt;br /&gt;
*Install JSBSim. See [[JSBSim]].&lt;br /&gt;
*Install FlightGear and link it to Paparazzi. See [[Simulation#View_the_simulation_in_Flight_Gear]].&lt;br /&gt;
&lt;br /&gt;
== Getting information ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Getting Started ===&lt;br /&gt;
This project is developed by using Linux, ubuntu. We don't support information for other linux distributions, but feel free to try it out.&lt;br /&gt;
* Follow the instructions described in the &amp;quot;Getting the cross-compiler&amp;quot;.&lt;br /&gt;
* Get the source from our github which is explained in the section above.&lt;br /&gt;
* Build the paparazzi source (for more information: [http://paparazzi.enac.fr/wiki/Installation/FromScratch])&lt;br /&gt;
* You are ready to develop with our project.&lt;br /&gt;
&lt;br /&gt;
=== The cross-compiler === &lt;br /&gt;
# Download the cross-compiler from [http://taghof.github.com/Navigation-for-Robots-with-WIFI-and-CV/downloads/codesetup.sh]&lt;br /&gt;
# Open the terminal and direct to your home directory.&lt;br /&gt;
# Type the following commands (without the $):&lt;br /&gt;
&lt;br /&gt;
 $ sudo chmod +x codesetup.sh&lt;br /&gt;
 $ sudo ./codesetup.sh&lt;br /&gt;
&lt;br /&gt;
Wait a few minutes and you're done!&lt;br /&gt;
&lt;br /&gt;
=== AT Commands ===&lt;br /&gt;
The AR.Drone 2 has a self made protocol for controlling the AR.Drone 2 remotly over wifi. More information can be found at [[AT Commands AR.Drone 2]].&lt;br /&gt;
&lt;br /&gt;
=== Navdata ===&lt;br /&gt;
The AR.Drone 2 also has a self made protocol for sending navdata to the client over wifi. More information can be found at [[Navdata AR.Drone 2]].&lt;br /&gt;
&lt;br /&gt;
=== GPS signals ===&lt;br /&gt;
To let our AR.Drone 2 communicate with Paparazzi an external [[GPS_specification | BU-353 GPS]] is used. For the implementation see [[GPS Driver AR.Drone2]].&lt;br /&gt;
&lt;br /&gt;
=== Telnet ===&lt;br /&gt;
The AR.Drone 2 has a telnet interface that opens a root shell on the AR.Drone 2, which is needed to test and install software. More information can be found at [[Telnet AR.Drone2]].&lt;br /&gt;
&lt;br /&gt;
=== FTP ===&lt;br /&gt;
The AR.Drone 2 also has a FTP server running, which makes it possible to upload files like programs to the AR.Drone 2. More information can be found at [[FTP AR.Drone2]].&lt;br /&gt;
&lt;br /&gt;
== Programming ==&lt;br /&gt;
&lt;br /&gt;
=== AR.Drone 2 internal communication ===&lt;br /&gt;
We use internal communcation to control the AR.Drone 2 and recieve the navigation data from the AR.Drone 2. This is done by using the AT commands and the navdata with a socket connection to &amp;quot;localhost&amp;quot;. The control and navigation data run in seperate threads inside paparazzi, to make sure that both connections are kept alive. The navigation data thread sends all the information is has to paparazzi each update. The control thread waits for paparazzi to send commands and keeps the connection alive by sending a dummy command every second(because the timeout is 2 seconds).&lt;br /&gt;
&lt;br /&gt;
=== Using the GPS signals ===&lt;br /&gt;
We will use an external GPS reciever which will be connected to the AR.Drone 2 usb or telnet usb port. We still have to figure out if it is possible to adjust the default driver for the USB port on the AR.Drone 2, because this is configured as an external disk which is accesable with FTP.&lt;br /&gt;
When we have figured out if this is possible, the default usb-connector of the GPS reciever doesn't need to be modified to fit the telnet usb port at the bottom of the AR. Drone 2.&lt;br /&gt;
&lt;br /&gt;
Because of the great support of GPS modules inside paparaazi, we don't have to implement the GPS module inside paparazzi ourself.&lt;br /&gt;
&lt;br /&gt;
=== Wifi implementation inside paparazzi ===&lt;br /&gt;
Paparazzi doesn't support wifi connection with the base station by default. We are implementing this by creating a socket connection between the AR.Drone 2 and the base station and send the communication packets using a self-created protocol.&lt;br /&gt;
&lt;br /&gt;
=== AR.Drone 2 Sign convention ===&lt;br /&gt;
* [[AR.Drone_2.0_sign_convention]]&lt;br /&gt;
&lt;br /&gt;
== Manuals and guides ==&lt;br /&gt;
* [[Step by step guide for beginners]]&lt;br /&gt;
* [[Developers Manual]]&lt;br /&gt;
&lt;br /&gt;
[[Category: TU Delft - Automonous Quadrotor]]&lt;/div&gt;</summary>
		<author><name>Vincent van Hoek</name></author>
	</entry>
	<entry>
		<id>http://wiki.paparazziuav.org/w/index.php?title=TU_Delft_-_Search_and_Rescue_with_AR_Drone_2&amp;diff=13847</id>
		<title>TU Delft - Search and Rescue with AR Drone 2</title>
		<link rel="alternate" type="text/html" href="http://wiki.paparazziuav.org/w/index.php?title=TU_Delft_-_Search_and_Rescue_with_AR_Drone_2&amp;diff=13847"/>
		<updated>2012-12-12T14:25:09Z</updated>

		<summary type="html">&lt;p&gt;Vincent van Hoek: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Image:2012-10-03 12.40.46.jpg|thumb|right|400px|TU Delft Minor Robotics: Quadrotor Group 1]]__TOC__&lt;br /&gt;
&lt;br /&gt;
== Introduction==&lt;br /&gt;
The high maneuverability and stability of a quadrotor inspired us to make an autonomous search and rescue vehicle. For this the AR Drone 2 was used.  The goal of this project is thus to further develop the AR Drone2 into a robot capable of performing an autonomous search mission. All the steps taken are described on this page.&lt;br /&gt;
&lt;br /&gt;
In order to achieve this goal we decided to work with raw data. The data was obtained by creating drivers capable of extracting and interpreting sensor data from the AR Drone2. In order to get the quadrotor flying paparazzi was used. For simulation JSBSim was used, which was then visualized using Flight Gear. The final section of the page will discuss the subject of making the quadrotor autonomous.&lt;br /&gt;
&lt;br /&gt;
First some general information about the project is given in chapter2. How all the data was obtained is presented in chapter 3. In chapter 4 it is described how to get paparazzi working on the drone. Next in chapter 5 we present how simulation was done and finally the proces of making the drone capable of performing an autonomous search and rescue mission is described in chapter 6.&lt;br /&gt;
&lt;br /&gt;
== General project information==&lt;br /&gt;
&lt;br /&gt;
This project was develloped using Linux, more specific Ubuntu. So except for the simulation part all steps are explained for this operating system. But it's a free operating system, so if you want to retrace our steps you can simply download it and access it from your current operating system using virtual box. A small tutorial can be found [[ Virtualbox 4.1.22 for Windows Hosts &amp;amp; Ubuntu 12.04 LTS| here]].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
For this project we used a repository, Github. This allows multiple people to work on the same project at the same time without getting in eachother's way. So all files assosiated with our project assosiated can be accesed using Github. For beginners, you can read the manual to setup Github for Ubuntu:&lt;br /&gt;
&lt;br /&gt;
* [[Github manual for Ubuntu]]&lt;br /&gt;
&lt;br /&gt;
Our git repository is at [https://github.com/RoboticaTUDelft/paparazzi Github RoboticaTUDelft] in the &amp;quot;minor1&amp;quot; branch. You can change to this branch by executing the following command &amp;quot;git checkout minor1&amp;quot;. The related project, [[TU Delft - Lasergame with Autonomous AR Drone]], can be found under the minor2 branch.&lt;br /&gt;
&lt;br /&gt;
== Data acquisition==&lt;br /&gt;
&lt;br /&gt;
So as explained in the introduction, firstly the raw data had to be extracted from the AR Drone2. So this data could be fed to paparazzi. So we started with trying to connect and pass files to the AR Drone2, which is desribed in the connecing section. The exact details of the extraction of the data is described in the NAV board section. Next the data from paparazzi had to be passed on to our actuators correctly. This is described in the motor driver section. To be able to perform better in our autonomous mission a GPS was added to  the AR Drone2. The details of this are described in the GPS section.&lt;br /&gt;
&lt;br /&gt;
=== Connecting===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
For our project the operating system Ubuntu was used, so all the steps described here are for an Ubuntu operating system.&lt;br /&gt;
&lt;br /&gt;
The connecting was done using Telnet.&lt;br /&gt;
&lt;br /&gt;
*[[Telnet AR.Drone2]]&lt;br /&gt;
&lt;br /&gt;
The actual transferring of files is done using a File Transfer Protocol (FTP).&lt;br /&gt;
&lt;br /&gt;
*[[FTP AR.Drone2]]&lt;br /&gt;
&lt;br /&gt;
=== NAV board===&lt;br /&gt;
&lt;br /&gt;
Throughout this project, on several different occasions, it will be apparent that the AR Drone2 was never really meant to be used as we inteded to. In addition to this, Parrot SA has a vested interest in maintaining the exclusivity of its product, rightfully so. So with what little information is publicly available, reverse engineering was a lot harder than we first thought when we began the project. However the AR.Drone2 looks a lot like the AR.Drone1, its predecessor, for which a lot of reverse engineering has allready been done by other people. Ofcourse there are differences and this is where we started reverse engineering the bits and pieces for the NAV board.&lt;br /&gt;
&lt;br /&gt;
*[[NAV board AR.Drone2]]&lt;br /&gt;
&lt;br /&gt;
=== Motor driver===&lt;br /&gt;
&lt;br /&gt;
Using a similar technique as for the NAV board, the motor drivers were obtained.&lt;br /&gt;
&lt;br /&gt;
*[[Motor driver AR.Drone2]]&lt;br /&gt;
&lt;br /&gt;
=== GPS===&lt;br /&gt;
The GPS we use with the AR.Drone2 is the [[GPS_specification | BU-353 GPS]]. To make good use of this GPS we had to create our own driver for it. &lt;br /&gt;
&lt;br /&gt;
*[[GPS Driver AR.Drone2]]&lt;br /&gt;
&lt;br /&gt;
== Paparazzi==&lt;br /&gt;
&lt;br /&gt;
Now the necessary raw data can be obtained and the actuators can be controlled, it's time to focus on paparazzi. This section consists of two parts. The first part deals with integrating the AR.Drone2 into the paparazzi libraries, the second part deals with compiling paparazzi for the drone. More inforamtion on how to install paparazzi can be found [[installation|here]].&lt;br /&gt;
&lt;br /&gt;
=== Using Paparazzi===&lt;br /&gt;
&lt;br /&gt;
This parts describes the process of adapting the paparazzi libraries to make them compatible with the AR.Drone’s hard en software.&lt;br /&gt;
&lt;br /&gt;
*[[Integrating the AR Drone 2 with Paparazzi]]&lt;br /&gt;
&lt;br /&gt;
=== Compiling===&lt;br /&gt;
&lt;br /&gt;
Finally paparazzi can be compiled and be put on the AR.Drone 2. This is describes in this section.&lt;br /&gt;
&lt;br /&gt;
*[[compiling paparazzi for  the AR.Drone2]]&lt;br /&gt;
&lt;br /&gt;
=== Paparazzi architecture===&lt;br /&gt;
&lt;br /&gt;
In the near future, we'd like to add features like object avoidance. Since this isn't yet implemented in paparazzi we have to start from scratch. Therefore we tried to understand the architecture a little better than is explained on this wiki at the moment.&lt;br /&gt;
&lt;br /&gt;
*[[Insight of paparazzi architecture]] &lt;br /&gt;
&lt;br /&gt;
== Simulation==&lt;br /&gt;
&lt;br /&gt;
Now paparazzi was compiled and our drone was ready to go, simulation could begin. The simulation was done in JSBSim, which was then visualized using flightgear. This are also the 2 parts in this section. More information on how to install JSBSim see [[JSBSim]]. For more information on how to install Flightgear and link it to Paparazzi see [[Simulation#View_the_simulation_in_Flight_Gear]].&lt;br /&gt;
&lt;br /&gt;
=== JSBSim===&lt;br /&gt;
'''Creating A Flight Dynamics Model'''&lt;br /&gt;
&lt;br /&gt;
In order to control the otherwise highly active dynamic nature of the quadrotor, an autopilot system will be necessary because the reaction time of the pilot will, otherwise, not be sufficient to maintain stable flight.  The autopilot system will be created in Paparazzi for which a prerequisite is a proper flight dynamics model (FDM). To create the FDM the team will use [http://jsbsim.sourceforge.net/ JSBSIM], an open-source, platform-independent, flight-dynamics and control software library. Installing JSBSIM is covered for several different operating systems on the Paparazzi Wiki,  [[JSBSim|Installing JSBSIM]].&lt;br /&gt;
&lt;br /&gt;
Once JSBSim had been installed, the actual work could begin. Flight Dynamics and the creation of an individual model for an aircraft is essentially a case study regarding its control, stability, and performance. To model those three dynamics aspects is essentially what JSBSIM was used for but before work could begin, JSBSIM would first need to be fed a configuration file. The configuration file is written in a .xml format and, naturally, is unique to each aircraft. Although not applicable to this project, it is worth mentioning in the event that the reader of this page is not following the instruction exactly and is using it more for reference, there is a tool on the JSBSIM page called [http://jsbsim.sourceforge.net/aeromatic2.html Aeromatic], which is a capable .xml configuration file generator. For those following this project closely, a link will follow for creating a suitable JSBSIM .xml configuration file for the AR.Drone2.&lt;br /&gt;
&lt;br /&gt;
*[[Creating a JSBSIM .xml Configuration File for AR.Drone2]]&lt;br /&gt;
&lt;br /&gt;
=== Flightgear===&lt;br /&gt;
Without actually using the drone itself, and only the previously developed JSBSIM configuration file, a simulated drone can be flown in Flightgear. To do so, a CAD model of the drone is implemented to give a visualization to the simulated model. Flightgear is the preeminent open-source flight simulator backed by a large community of active users. Implementation for this particular project can be read about on the [[AR.Drone 2 - Flightgear]] wikipage. More on the software can be found on the [http://www.flightgear.org/ Flightgear website].&lt;br /&gt;
&lt;br /&gt;
== Autonomous Search and Rescue Mission==&lt;br /&gt;
&lt;br /&gt;
This section deals with the final stage of our project of making the further developing the AR.Drone2 into a quadrotor performing an autonomous search and rescue mission. First autonomous flight is discussed, next the features in order to perform a search and rescue mission are discussed.  &lt;br /&gt;
&lt;br /&gt;
=== Autonomous flight===&lt;br /&gt;
&lt;br /&gt;
The last part of this project consist of making the AR.Drone2 Autonomous. The this process consist of 4 branches:&lt;br /&gt;
&lt;br /&gt;
*[[Autonomous flight of Paparazzi AR.Drone2]]&lt;br /&gt;
*[[Multidirectional distance measurement AR.Drone2]]&lt;br /&gt;
*[[Object Avoidance AR.Drone2]]&lt;br /&gt;
*[[Fail safe AR.Drone2]]&lt;br /&gt;
&lt;br /&gt;
=== Search and Rescue Features===&lt;br /&gt;
&lt;br /&gt;
*[[Mapping AR.Drone2]]&lt;br /&gt;
*[[Hull Desing AR.Drone2]]&lt;br /&gt;
*[[Optical flow AR.Drone2]]&lt;br /&gt;
*[[Immage recognitionAR.Drone2]]&lt;br /&gt;
&lt;br /&gt;
[[Category: TU Delft - Automonous Quadrotor]]&lt;/div&gt;</summary>
		<author><name>Vincent van Hoek</name></author>
	</entry>
	<entry>
		<id>http://wiki.paparazziuav.org/w/index.php?title=TU_Delft_-_Autonomous_Quadrotor&amp;diff=13846</id>
		<title>TU Delft - Autonomous Quadrotor</title>
		<link rel="alternate" type="text/html" href="http://wiki.paparazziuav.org/w/index.php?title=TU_Delft_-_Autonomous_Quadrotor&amp;diff=13846"/>
		<updated>2012-12-12T14:18:53Z</updated>

		<summary type="html">&lt;p&gt;Vincent van Hoek: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[File:tudelft_logo.jpg|link=http://tudelft.nl/en/]]&lt;br /&gt;
&lt;br /&gt;
== TU Delft - Autonomous Quadrotor ==&lt;br /&gt;
&lt;br /&gt;
On 3 September 2012 two student teams of the Delft University of Technology started with a UAV robotics project, under guidance of dr. ir. M. Wisse and ir. B. D. W. Remes. Each team would have a slightly different initial objective. After completing this objective each team will be free to set its own objectives for the next phase of this project.&lt;br /&gt;
&lt;br /&gt;
=== Objectives ===&lt;br /&gt;
Our first objective is to enable the Parrot AR Drone v2.0 (from now on referred to as the AR Drone 2) to fly autonomously on the Paparazzi Software.&lt;br /&gt;
* Team one will work with the raw navigation data, creating their own software to retrieve and interpret the date. They will need to describe a new board configuration within for Paparazzi to work with.&lt;br /&gt;
* Team two will work with the programming as developed by Parrot. They will need to interpret the data as provided by the program and determine what data to send back.&lt;br /&gt;
&lt;br /&gt;
The second objective is that each team has to add a GPS sensor to the AR Drone 2. We will use the US Globalsat BU-353 GPS receiver for this purpose and mount it to the AR Drone 2 using the USB connection on the board.&lt;br /&gt;
&lt;br /&gt;
=== Project Contents ===&lt;br /&gt;
* [[AR.Drone 2 - Specifications]]&lt;br /&gt;
** [[Motor specifcations]]&lt;br /&gt;
** [[Sensor specifications]]&lt;br /&gt;
** [[GPS specifications]]&lt;br /&gt;
&lt;br /&gt;
=== Teams ===&lt;br /&gt;
* Team 1: [[TU Delft - Search and Rescue with AR Drone 2]]&lt;br /&gt;
* Team 2: [[TU Delft - Lasergame with Autonomous AR Drone]]&lt;br /&gt;
&lt;br /&gt;
== Development ==&lt;br /&gt;
To try and keep you up to date with the most recent developments in this project we have created the [[Talk: TU Delft: AR Drone 2 - News|TU Delft: AR Drone 2 - News]] page. Here we will post breakthroughs, summaries of a page update and small facts that might be nice to know. &lt;br /&gt;
&lt;br /&gt;
=== Installing Paparazzi on AR.Drone 2 ===&lt;br /&gt;
Installing Paparazzi on the AR Drone 2 is taking more effort than we initially expected. To make life easier on both Paparazzi users and developers we are setting up two separate pages. The [[Beginners Page]] is meant for everyone that wants to use Paparazzi as the control system on their UAV. It will guide them through all the choices they will have to make, from selecting the correct hardware modules in Paparazzi to how to use the Paparazzi GCS.&lt;br /&gt;
&lt;br /&gt;
The [[Developers Page]] is meant for anyone that wants help develop Paparazzi into a more all-round platform that can be used on any and all UAVs. It will describe in depth what is needed in order to add a new modules to Paparazzi without ruining the rest of the architecture.&lt;br /&gt;
&lt;br /&gt;
''Editors note: Both these pages are not complete yet. We will let you know when they near completion''&lt;br /&gt;
&lt;br /&gt;
* [[Beginners Page]]&lt;br /&gt;
* [[Developers Page]]&lt;br /&gt;
&lt;br /&gt;
[[Category: TU Delft - Automonous Quadrotor]]&lt;/div&gt;</summary>
		<author><name>Vincent van Hoek</name></author>
	</entry>
	<entry>
		<id>http://wiki.paparazziuav.org/w/index.php?title=Talk:TU_Delft:_AR_Drone_2_-_News&amp;diff=13845</id>
		<title>Talk:TU Delft: AR Drone 2 - News</title>
		<link rel="alternate" type="text/html" href="http://wiki.paparazziuav.org/w/index.php?title=Talk:TU_Delft:_AR_Drone_2_-_News&amp;diff=13845"/>
		<updated>2012-12-12T14:01:34Z</updated>

		<summary type="html">&lt;p&gt;Vincent van Hoek: breakthroughs, summaries of a page update and small facts that might be nice to know.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== TU Delft Robotics minor: AR Drone 2 project - News ==&lt;br /&gt;
Here we will post breakthroughs, summaries of a page update and small facts that might be nice to know. &lt;br /&gt;
&lt;br /&gt;
=== General progress update [12-12-2012] ===&lt;br /&gt;
It has been a while sinds we posted anything here. It is not that we haven't been busy, it's quite the opposite. We have managed read the navigation data structure provided by the navigation board of the AR Drone 2. This contains the gyro-meter, accelerometer, magnetometer and barometer data we needed. With this we managed to implement the IMU and feen the gyro-, accelero- and magnetometer data to it. This now readies the data for the AHRS. The barometer sensor is now implemented as well, sending the absolute pressure value on to the AHRS and INS.&lt;br /&gt;
&lt;br /&gt;
Today we took another step forward. Pararazzi can now opperate the actuators, with the use of motor mixing, and set the thrust of each rotor according to the pitch, yaw, roll and thrust values provided to it.&lt;br /&gt;
&lt;br /&gt;
=== Build a GPS driver for the AR Drone [30-11-2012] ===&lt;br /&gt;
Today we finally managed to build and compile a driver for the AR Drone 2. As you may know, we want to connect a GPS sensor to the Drone and since there is not an USB-serial driver available on the Drone we have to make it by ourself. Today we finished the job and succesfully received GPS data on the AR Drone. Now we know how to make a driver for the Drone it will be easier to write other drivers if necessary.&lt;br /&gt;
&lt;br /&gt;
=== Compiling the AP breakthrough! [26-11-2012] ===&lt;br /&gt;
Today we (finally) managed to compile the AR Drone 2 auto pilot without errors! Not all subsystems have been implemented yet so we can't test it on the drone for a while but at least we managed fix the linkage errors we were getting constantly.&lt;br /&gt;
&lt;br /&gt;
[[Category: TU Delft - Automonous Quadrotor]]&lt;/div&gt;</summary>
		<author><name>Vincent van Hoek</name></author>
	</entry>
	<entry>
		<id>http://wiki.paparazziuav.org/w/index.php?title=TU_Delft_-_Autonomous_Quadrotor&amp;diff=13782</id>
		<title>TU Delft - Autonomous Quadrotor</title>
		<link rel="alternate" type="text/html" href="http://wiki.paparazziuav.org/w/index.php?title=TU_Delft_-_Autonomous_Quadrotor&amp;diff=13782"/>
		<updated>2012-11-28T10:31:19Z</updated>

		<summary type="html">&lt;p&gt;Vincent van Hoek: /* Development */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[File:tudelft_logo.jpg|link=http://tudelft.nl/en/]]&lt;br /&gt;
&lt;br /&gt;
== TU Delft - Autonomous Quadrotor ==&lt;br /&gt;
&lt;br /&gt;
On 3 September 2012 two student teams of the Delft University of Technology started with a UAV robotics project, under guidance of dr. ir. M. Wisse and ir. B. D. W. Remes. Each team would have a slightly different initial objective. After completing this objective each team will be free to set its own objectives for the next phase of this project.&lt;br /&gt;
&lt;br /&gt;
=== Objectives ===&lt;br /&gt;
Our first objective is to enable the Parrot AR Drone v2.0 (from now on referred to as the AR Drone 2) to fly autonomously on the Paparazzi Software.&lt;br /&gt;
* Team one will work with the raw navigation data, creating their own software to retrieve and interpret the date. They will need to describe a new board configuration within for Paparazzi to work with.&lt;br /&gt;
* Team two will work with the programming as developed by Parrot. They will need to interpret the data as provided by the program and determine what data to send back.&lt;br /&gt;
&lt;br /&gt;
The second objective is that each team has to add a GPS sensor to the AR Drone 2. We will use the US Globalsat BU-353 GPS receiver for this purpose and mount it to the AR Drone 2 using the USB connection on the board.&lt;br /&gt;
&lt;br /&gt;
=== Project Contents ===&lt;br /&gt;
* [[AR.Drone 2 - Specifications]]&lt;br /&gt;
** [[Motor specifcations]]&lt;br /&gt;
** [[Sensor specifications]]&lt;br /&gt;
** [[GPS specifications]]&lt;br /&gt;
&lt;br /&gt;
=== Teams ===&lt;br /&gt;
* Team 1: [[TU Delft - Search and Rescue with AR Drone 2]]&lt;br /&gt;
* Team 2: [[TU Delft - Lasergame with Autonomous AR Drone]]&lt;br /&gt;
&lt;br /&gt;
== Development ==&lt;br /&gt;
To try and keep you up to date with the most recent developments in this project we have created the [[Talk: TU Delft: AR Drone 2 - News|TU Delft: AR Drone 2 - News]] page. Here we will post breakthroughs, summaries of a page update and small facts that might be nice to know. &lt;br /&gt;
&lt;br /&gt;
=== Installing Paparazzi on AR.Drone 2 ===&lt;br /&gt;
Installing Paparazzi on the AR Drone 2 is taking more effort than we initially expected. To make life easier on both Paparazzi users and developers we are setting up two separate pages. The [[Beginners Page]] is meant for everyone that wants to use Paparazzi as the control system on their UAV. It will guide them through all the choices they will have to make, from selecting the correct hardware modules in Paparazzi to how to use the Paparazzi GCS.&lt;br /&gt;
&lt;br /&gt;
The [[Developers Page]] is meant for anyone that wants help develop Paparazzi into a more all-round platform that can be used on any and all UAVs. It will describe in depth what is needed in order to add a new modules to Paparazzi without ruining the rest of the architecture.&lt;br /&gt;
&lt;br /&gt;
''Editors note: Both these pages are not complete yet. We will let you know when they near completion''&lt;br /&gt;
&lt;br /&gt;
* [[Beginners Page]]&lt;br /&gt;
* [[Developers Page]]&lt;/div&gt;</summary>
		<author><name>Vincent van Hoek</name></author>
	</entry>
	<entry>
		<id>http://wiki.paparazziuav.org/w/index.php?title=Talk:TU_Delft:_AR_Drone_2_-_News&amp;diff=13779</id>
		<title>Talk:TU Delft: AR Drone 2 - News</title>
		<link rel="alternate" type="text/html" href="http://wiki.paparazziuav.org/w/index.php?title=Talk:TU_Delft:_AR_Drone_2_-_News&amp;diff=13779"/>
		<updated>2012-11-28T10:27:07Z</updated>

		<summary type="html">&lt;p&gt;Vincent van Hoek: Created page with &amp;quot;== TU Delft Robotics minor: AR Drone 2 project - News == Here we will post breakthroughs, summaries of a page update and small facts that might be nice to know.   === Compiling t…&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== TU Delft Robotics minor: AR Drone 2 project - News ==&lt;br /&gt;
Here we will post breakthroughs, summaries of a page update and small facts that might be nice to know. &lt;br /&gt;
&lt;br /&gt;
=== Compiling the AP breakthrough! [26-11-2012] ===&lt;br /&gt;
Today we (finally) managed to compile the AR Drone 2 auto pilot without errors! Not all subsystems have been implemented yet so we can't test it on the drone for a while but at least we managed fix the linkage errors we were getting constantly.&lt;br /&gt;
&lt;br /&gt;
[[Category: TU Delft - Automonous Quadrotor]]&lt;/div&gt;</summary>
		<author><name>Vincent van Hoek</name></author>
	</entry>
	<entry>
		<id>http://wiki.paparazziuav.org/w/index.php?title=TU_Delft_-_Autonomous_Quadrotor&amp;diff=13778</id>
		<title>TU Delft - Autonomous Quadrotor</title>
		<link rel="alternate" type="text/html" href="http://wiki.paparazziuav.org/w/index.php?title=TU_Delft_-_Autonomous_Quadrotor&amp;diff=13778"/>
		<updated>2012-11-28T10:17:37Z</updated>

		<summary type="html">&lt;p&gt;Vincent van Hoek: /* Development */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[File:tudelft_logo.jpg|link=http://tudelft.nl/en/]]&lt;br /&gt;
&lt;br /&gt;
== TU Delft - Autonomous Quadrotor ==&lt;br /&gt;
&lt;br /&gt;
On 3 September 2012 two student teams of the Delft University of Technology started with a UAV robotics project, under guidance of dr. ir. M. Wisse and ir. B. D. W. Remes. Each team would have a slightly different initial objective. After completing this objective each team will be free to set its own objectives for the next phase of this project.&lt;br /&gt;
&lt;br /&gt;
=== Objectives ===&lt;br /&gt;
Our first objective is to enable the Parrot AR Drone v2.0 (from now on referred to as the AR Drone 2) to fly autonomously on the Paparazzi Software.&lt;br /&gt;
* Team one will work with the raw navigation data, creating their own software to retrieve and interpret the date. They will need to describe a new board configuration within for Paparazzi to work with.&lt;br /&gt;
* Team two will work with the programming as developed by Parrot. They will need to interpret the data as provided by the program and determine what data to send back.&lt;br /&gt;
&lt;br /&gt;
The second objective is that each team has to add a GPS sensor to the AR Drone 2. We will use the US Globalsat BU-353 GPS receiver for this purpose and mount it to the AR Drone 2 using the USB connection on the board.&lt;br /&gt;
&lt;br /&gt;
=== Project Contents ===&lt;br /&gt;
* [[AR.Drone 2 - Specifications]]&lt;br /&gt;
** [[Motor specifcations]]&lt;br /&gt;
** [[Sensor specifications]]&lt;br /&gt;
** [[GPS specifications]]&lt;br /&gt;
&lt;br /&gt;
=== Teams ===&lt;br /&gt;
* Team 1: [[TU Delft - Search and Rescue with AR Drone 2]]&lt;br /&gt;
* Team 2: [[TU Delft - Lasergame with Autonomous AR Drone]]&lt;br /&gt;
&lt;br /&gt;
== Development ==&lt;br /&gt;
To try and keep you up to date with the most recent developments in this project we have created the [[TU Delft: AR Drone 2 - News]] page. Here we will post breakthroughs, summaries of a page update and small facts that might be nice to know. &lt;br /&gt;
&lt;br /&gt;
=== Installing Paparazzi on AR.Drone 2 ===&lt;br /&gt;
Installing Paparazzi on the AR Drone 2 is taking more effort than we initially expected. To make life easier on both Paparazzi users and developers we are setting up two separate pages. The [[Beginners Page]] is meant for everyone that wants to use Paparazzi as the control system on their UAV. It will guide them through all the choices they will have to make, from selecting the correct hardware modules in Paparazzi to how to use the Paparazzi GCS.&lt;br /&gt;
&lt;br /&gt;
The [[Developers Page]] is meant for anyone that wants help develop Paparazzi into a more all-round platform that can be used on any and all UAVs. It will describe in depth what is needed in order to add a new modules to Paparazzi without ruining the rest of the architecture.&lt;br /&gt;
&lt;br /&gt;
''Editors note: Both these pages are not complete yet. We will let you know when they near completion''&lt;br /&gt;
&lt;br /&gt;
* [[Beginners Page]]&lt;br /&gt;
* [[Developers Page]]&lt;/div&gt;</summary>
		<author><name>Vincent van Hoek</name></author>
	</entry>
	<entry>
		<id>http://wiki.paparazziuav.org/w/index.php?title=TU_Delft_-_Autonomous_Quadrotor&amp;diff=13777</id>
		<title>TU Delft - Autonomous Quadrotor</title>
		<link rel="alternate" type="text/html" href="http://wiki.paparazziuav.org/w/index.php?title=TU_Delft_-_Autonomous_Quadrotor&amp;diff=13777"/>
		<updated>2012-11-28T10:17:21Z</updated>

		<summary type="html">&lt;p&gt;Vincent van Hoek: /* Development */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[File:tudelft_logo.jpg|link=http://tudelft.nl/en/]]&lt;br /&gt;
&lt;br /&gt;
== TU Delft - Autonomous Quadrotor ==&lt;br /&gt;
&lt;br /&gt;
On 3 September 2012 two student teams of the Delft University of Technology started with a UAV robotics project, under guidance of dr. ir. M. Wisse and ir. B. D. W. Remes. Each team would have a slightly different initial objective. After completing this objective each team will be free to set its own objectives for the next phase of this project.&lt;br /&gt;
&lt;br /&gt;
=== Objectives ===&lt;br /&gt;
Our first objective is to enable the Parrot AR Drone v2.0 (from now on referred to as the AR Drone 2) to fly autonomously on the Paparazzi Software.&lt;br /&gt;
* Team one will work with the raw navigation data, creating their own software to retrieve and interpret the date. They will need to describe a new board configuration within for Paparazzi to work with.&lt;br /&gt;
* Team two will work with the programming as developed by Parrot. They will need to interpret the data as provided by the program and determine what data to send back.&lt;br /&gt;
&lt;br /&gt;
The second objective is that each team has to add a GPS sensor to the AR Drone 2. We will use the US Globalsat BU-353 GPS receiver for this purpose and mount it to the AR Drone 2 using the USB connection on the board.&lt;br /&gt;
&lt;br /&gt;
=== Project Contents ===&lt;br /&gt;
* [[AR.Drone 2 - Specifications]]&lt;br /&gt;
** [[Motor specifcations]]&lt;br /&gt;
** [[Sensor specifications]]&lt;br /&gt;
** [[GPS specifications]]&lt;br /&gt;
&lt;br /&gt;
=== Teams ===&lt;br /&gt;
* Team 1: [[TU Delft - Search and Rescue with AR Drone 2]]&lt;br /&gt;
* Team 2: [[TU Delft - Lasergame with Autonomous AR Drone]]&lt;br /&gt;
&lt;br /&gt;
== Development ==&lt;br /&gt;
To try and keep you up to date with the most recent developments in this project we have created the [[TU Delft AR Drone 2 - News]] page. Here we will post breakthroughs, summaries of a page update and small facts that might be nice to know. &lt;br /&gt;
&lt;br /&gt;
=== Installing Paparazzi on AR.Drone 2 ===&lt;br /&gt;
Installing Paparazzi on the AR Drone 2 is taking more effort than we initially expected. To make life easier on both Paparazzi users and developers we are setting up two separate pages. The [[Beginners Page]] is meant for everyone that wants to use Paparazzi as the control system on their UAV. It will guide them through all the choices they will have to make, from selecting the correct hardware modules in Paparazzi to how to use the Paparazzi GCS.&lt;br /&gt;
&lt;br /&gt;
The [[Developers Page]] is meant for anyone that wants help develop Paparazzi into a more all-round platform that can be used on any and all UAVs. It will describe in depth what is needed in order to add a new modules to Paparazzi without ruining the rest of the architecture.&lt;br /&gt;
&lt;br /&gt;
''Editors note: Both these pages are not complete yet. We will let you know when they near completion''&lt;br /&gt;
&lt;br /&gt;
* [[Beginners Page]]&lt;br /&gt;
* [[Developers Page]]&lt;/div&gt;</summary>
		<author><name>Vincent van Hoek</name></author>
	</entry>
	<entry>
		<id>http://wiki.paparazziuav.org/w/index.php?title=TU_Delft_-_Autonomous_Quadrotor&amp;diff=13775</id>
		<title>TU Delft - Autonomous Quadrotor</title>
		<link rel="alternate" type="text/html" href="http://wiki.paparazziuav.org/w/index.php?title=TU_Delft_-_Autonomous_Quadrotor&amp;diff=13775"/>
		<updated>2012-11-28T10:08:04Z</updated>

		<summary type="html">&lt;p&gt;Vincent van Hoek: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[File:tudelft_logo.jpg|link=http://tudelft.nl/en/]]&lt;br /&gt;
&lt;br /&gt;
== TU Delft - Autonomous Quadrotor ==&lt;br /&gt;
&lt;br /&gt;
On 3 September 2012 two student teams of the Delft University of Technology started with a UAV robotics project, under guidance of dr. ir. M. Wisse and ir. B. D. W. Remes. Each team would have a slightly different initial objective. After completing this objective each team will be free to set its own objectives for the next phase of this project.&lt;br /&gt;
&lt;br /&gt;
=== Objectives ===&lt;br /&gt;
Our first objective is to enable the Parrot AR Drone v2.0 (from now on referred to as the AR Drone 2) to fly autonomously on the Paparazzi Software.&lt;br /&gt;
* Team one will work with the raw navigation data, creating their own software to retrieve and interpret the date. They will need to describe a new board configuration within for Paparazzi to work with.&lt;br /&gt;
* Team two will work with the programming as developed by Parrot. They will need to interpret the data as provided by the program and determine what data to send back.&lt;br /&gt;
&lt;br /&gt;
The second objective is that each team has to add a GPS sensor to the AR Drone 2. We will use the US Globalsat BU-353 GPS receiver for this purpose and mount it to the AR Drone 2 using the USB connection on the board.&lt;br /&gt;
&lt;br /&gt;
=== Project Contents ===&lt;br /&gt;
* [[AR.Drone 2 - Specifications]]&lt;br /&gt;
** [[Motor specifcations]]&lt;br /&gt;
** [[Sensor specifications]]&lt;br /&gt;
** [[GPS specifications]]&lt;br /&gt;
&lt;br /&gt;
=== Teams ===&lt;br /&gt;
* Team 1: [[TU Delft - Search and Rescue with AR Drone 2]]&lt;br /&gt;
* Team 2: [[TU Delft - Lasergame with Autonomous AR Drone]]&lt;br /&gt;
&lt;br /&gt;
== Development ==&lt;br /&gt;
To try and keep you up to date with the most recent developments in this project we have created the [[AR Drone 2 - News]] page. Here we will post breakthroughs, summaries of a page update and small facts that might be nice to know. &lt;br /&gt;
&lt;br /&gt;
=== Installing Paparazzi on AR.Drone 2 ===&lt;br /&gt;
Installing Paparazzi on the AR Drone 2 is taking more effort than we initially expected. To make life easier on both Paparazzi users and developers we are setting up two separate pages. The [[Beginners Page]] is meant for everyone that wants to use Paparazzi as the control system on their UAV. It will guide them through all the choices they will have to make, from selecting the correct hardware modules in Paparazzi to how to use the Paparazzi GCS.&lt;br /&gt;
&lt;br /&gt;
The [[Developers Page]] is meant for anyone that wants help develop Paparazzi into a more all-round platform that can be used on any and all UAVs. It will describe in depth what is needed in order to add a new modules to Paparazzi without ruining the rest of the architecture.&lt;br /&gt;
&lt;br /&gt;
''Editors note: Both these pages are not complete yet. We will let you know when they near completion''&lt;br /&gt;
&lt;br /&gt;
* [[Beginners Page]]&lt;br /&gt;
* [[Developers Page]]&lt;/div&gt;</summary>
		<author><name>Vincent van Hoek</name></author>
	</entry>
	<entry>
		<id>http://wiki.paparazziuav.org/w/index.php?title=TU_Delft_-_Autonomous_Quadrotor&amp;diff=13774</id>
		<title>TU Delft - Autonomous Quadrotor</title>
		<link rel="alternate" type="text/html" href="http://wiki.paparazziuav.org/w/index.php?title=TU_Delft_-_Autonomous_Quadrotor&amp;diff=13774"/>
		<updated>2012-11-28T10:00:52Z</updated>

		<summary type="html">&lt;p&gt;Vincent van Hoek: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[File:tudelft_logo.jpg|link=http://tudelft.nl/en/]]&lt;br /&gt;
&lt;br /&gt;
== TU Delft - Autonomous Quadrotor ==&lt;br /&gt;
&lt;br /&gt;
On 3 September 2012 two student teams of the Delft University of Technology started with a UAV robotics project, under guidance of dr. ir. M. Wisse and ir. B. D. W. Remes. Each team would have a slightly different initial objective. After completing this objective each team will be free to set its own objectives for the next phase of this project.&lt;br /&gt;
&lt;br /&gt;
=== Objectives ===&lt;br /&gt;
Our first objective is to enable the Parrot AR Drone v2.0 (from now on referred to as the AR Drone 2) to fly autonomously on the Paparazzi Software.&lt;br /&gt;
* Team one will work with the raw navigation data, creating their own software to retrieve and interpret the date. They will need to describe a new board configuration within for Paparazzi to work with.&lt;br /&gt;
* Team two will work with the programming as developed by Parrot. They will need to interpret the data as provided by the program and determine what data to send back.&lt;br /&gt;
&lt;br /&gt;
The second objective is that each team has to add a GPS sensor to the AR Drone 2. We will use the US Globalsat BU-353 GPS receiver for this purpose and mount it to the AR Drone 2 using the usb connector on the board.&lt;br /&gt;
&lt;br /&gt;
=== Project Contents ===&lt;br /&gt;
* [[AR.Drone 2 - Specifications]]&lt;br /&gt;
** [[Motor specifcations]]&lt;br /&gt;
** [[Sensor specifications]]&lt;br /&gt;
** [[GPS specifications]]&lt;br /&gt;
&lt;br /&gt;
=== Teams ===&lt;br /&gt;
* Team 1: [[TU Delft - Search and Rescue with AR Drone 2]]&lt;br /&gt;
* Team 2: [[TU Delft - Lasergame with Autonomous AR Drone]]&lt;br /&gt;
&lt;br /&gt;
== Development ==&lt;br /&gt;
To try and keep you up to date with the most recent developments in this project we have created the [[AR Drone 2 - News]] page. Here we will post breakthroughs, summaries of a page update and small facts that might be fun to know. &lt;br /&gt;
&lt;br /&gt;
=== Installing Paparazzi on AR.Drone 2 ===&lt;br /&gt;
Installing Paparazzi on the AR Drone 2 is taking more effort than we initially expected. To make life easier on both Paparazzi users and developers we are setting up two separate pages. The [[Beginners Page]] is meant for everyone that wants to use Paparazzi as the control system on their UAV. It will guide them through all the choices they will have to make, from selecting the correct hardware modules in Paparazzi to how to use the Paparazzi GCS.&lt;br /&gt;
&lt;br /&gt;
The [[Developers Page]] is meant for anyone that wants help develop Paparazzi into a more all-round platform that can be used on any and all UAVs. It will describe in depth what is needed in order to add a new modules to Paparazzi without ruining the rest of the architecture.&lt;br /&gt;
&lt;br /&gt;
''Editors note: Both these pages are not complete yet. We will let you know when they are nearing completion''&lt;br /&gt;
&lt;br /&gt;
* [[Beginners Page]]&lt;br /&gt;
* [[Developers Page]]&lt;/div&gt;</summary>
		<author><name>Vincent van Hoek</name></author>
	</entry>
	<entry>
		<id>http://wiki.paparazziuav.org/w/index.php?title=TU_Delft_-_Autonomous_Quadrotor&amp;diff=13772</id>
		<title>TU Delft - Autonomous Quadrotor</title>
		<link rel="alternate" type="text/html" href="http://wiki.paparazziuav.org/w/index.php?title=TU_Delft_-_Autonomous_Quadrotor&amp;diff=13772"/>
		<updated>2012-11-28T09:45:39Z</updated>

		<summary type="html">&lt;p&gt;Vincent van Hoek: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[File:tudelft_logo.jpg|link=http://tudelft.nl/en/]]&lt;br /&gt;
&lt;br /&gt;
== TU Delft - Autonomous Quadrotor ==&lt;br /&gt;
&lt;br /&gt;
On 3 September 2012 two student teams of the Delft University of Technology started with a UAV robotics project, under guidance of dr. ir. M. Wisse and ir. B. D. W. Remes. Each team would have a slightly different initial objective. After completing this objective each team will be free to set its own objectives for the next phase of this project.&lt;br /&gt;
&lt;br /&gt;
=== Objectives ===&lt;br /&gt;
Our first objective is to enable the Parrot AR Drone v2.0 (from now on referred to as the AR Drone 2) to fly autonomously on the Paparazzi Software.&lt;br /&gt;
* Team one will work with the raw navigation data, creating their own software to retrieve and interpret the date. They will need to describe a new board configuration within for Paparazzi to work with.&lt;br /&gt;
* Team two will work with the programming as developed by Parrot. They will need to interpret the data as provided by the program and determine what data to send back.&lt;br /&gt;
&lt;br /&gt;
The second objective is that each team has to add a GPS sensor to the AR Drone 2. We will use the US Globalsat BU-353 GPS receiver for this purpose and mount it to the AR Drone 2 using the usb connector on the board.&lt;br /&gt;
&lt;br /&gt;
=== Project Contents ===&lt;br /&gt;
* [[AR.Drone 2 - Specifications]]&lt;br /&gt;
** [[Motor specifcations]]&lt;br /&gt;
** [[Sensor specifications]]&lt;br /&gt;
** [[GPS specifications]]&lt;br /&gt;
&lt;br /&gt;
=== Teams ===&lt;br /&gt;
* Team 1: [[TU Delft - Search and Rescue with AR Drone 2]]&lt;br /&gt;
* Team 2: [[TU Delft - Lasergame with Autonomous AR Drone]]&lt;br /&gt;
&lt;br /&gt;
== Development ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Installing Paparazzi on AR.Drone 2 ====&lt;br /&gt;
Installing Paparazzi on the AR Drone 2 takes more effort than we initially expected. To make life easier on both Paparazzi users and developers we are setting up two separate pages. The [[Beginners Page]] is meant for everyone that wants to use Paparazzi as the control system on their UAV. It will guide them through all the choices they will have to make, from selecting the correct hardware modules in Paparazzi to how to use the Paparazzi GCS.&lt;br /&gt;
&lt;br /&gt;
The [[Developers Page]] is meant for anyone that wants help develop Paparazzi into a more all-round platform that can be used on any and all UAVs. It will describe in depth what is needed in order to add a new modules to Paparazzi without ruining the rest of the architecture. &lt;br /&gt;
&lt;br /&gt;
* [[Beginners Page]]&lt;br /&gt;
* [[Developers Page]]&lt;/div&gt;</summary>
		<author><name>Vincent van Hoek</name></author>
	</entry>
	<entry>
		<id>http://wiki.paparazziuav.org/w/index.php?title=TU_Delft_-_Autonomous_Quadrotor&amp;diff=13768</id>
		<title>TU Delft - Autonomous Quadrotor</title>
		<link rel="alternate" type="text/html" href="http://wiki.paparazziuav.org/w/index.php?title=TU_Delft_-_Autonomous_Quadrotor&amp;diff=13768"/>
		<updated>2012-11-28T09:28:29Z</updated>

		<summary type="html">&lt;p&gt;Vincent van Hoek: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[File:tudelft_logo.jpg|link=http://tudelft.nl/en/]]&lt;br /&gt;
&lt;br /&gt;
== TU Delft - Autonomous Quadrotor ==&lt;br /&gt;
&lt;br /&gt;
On 3 September 2012 two student teams of the Delft University of Technology started with a UAV robotics project, under guidance of dr. ir. M. Wisse and ir. B. D. W. Remes. Each team would have a slightly different initial objective. After completing this objective each team will be free to set its own objectives for the next phase of this project.&lt;br /&gt;
&lt;br /&gt;
=== Objectives ===&lt;br /&gt;
Our first objective is to enable the Parrot AR Drone v2.0 (from now on referred to as the AR Drone 2) to fly autonomously on the Paparazzi Software.&lt;br /&gt;
* Team one will work with the raw navigation data, creating their own software to retrieve and interpret the date. They will need to describe a new board configuration within for Paparazzi to work with.&lt;br /&gt;
* Team two will work with the programming as developed by Parrot. They will need to interpret the data as provided by the program and determine what data to send back.&lt;br /&gt;
&lt;br /&gt;
The second objective is that each team has to add a GPS sensor to the AR Drone 2. We will use the US Globalsat BU-353 GPS receiver for this purpose and mount it to the AR Drone 2 using the usb connector on the board.&lt;br /&gt;
&lt;br /&gt;
=== Project Contents ===&lt;br /&gt;
* [[AR.Drone 2 - Specifications]]&lt;br /&gt;
** [[Motor specifcations]]&lt;br /&gt;
** [[Sensor specifications]]&lt;br /&gt;
** [[GPS specifications]]&lt;br /&gt;
&lt;br /&gt;
=== Development ===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Installing Paparazzi on AR.Drone 2 ====&lt;br /&gt;
Installing Paparazzi on the AR Drone 2 takes more effort than we initially expected. To make life easier on both Paparazzi users and developers we are setting up two separate pages. The [[Beginners Page]] is meant for everyone that wants to use Paparazzi as the control system on their UAV. It will guide them through all the choices they will have to make, from selecting the correct hardware modules in Paparazzi to how to use the Paparazzi GCS.&lt;br /&gt;
&lt;br /&gt;
The [[Developers Page]] is meant for anyone that wants help develop Paparazzi into a more all-round platform that can be used on any and all UAVs. It will describe in depth what is needed in order to add a new modules to Paparazzi without ruining the rest of the architecture. &lt;br /&gt;
&lt;br /&gt;
* [[Beginners Page]]&lt;br /&gt;
* [[Developers Page]]&lt;br /&gt;
&lt;br /&gt;
test&lt;br /&gt;
* [[Developer page]]&lt;br /&gt;
* [[Beginner page]]&lt;br /&gt;
&lt;br /&gt;
=== Teams ===&lt;br /&gt;
* Team 1: [[TU Delft - Search and Rescue with AR Drone 2]]&lt;br /&gt;
* Team 2: [[TU Delft - Lasergame with Autonomous AR Drone]]&lt;/div&gt;</summary>
		<author><name>Vincent van Hoek</name></author>
	</entry>
	<entry>
		<id>http://wiki.paparazziuav.org/w/index.php?title=TU_Delft_-_Autonomous_Quadrotor&amp;diff=13767</id>
		<title>TU Delft - Autonomous Quadrotor</title>
		<link rel="alternate" type="text/html" href="http://wiki.paparazziuav.org/w/index.php?title=TU_Delft_-_Autonomous_Quadrotor&amp;diff=13767"/>
		<updated>2012-11-28T09:27:15Z</updated>

		<summary type="html">&lt;p&gt;Vincent van Hoek: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[File:tudelft_logo.jpg|link=http://tudelft.nl/en/]]&lt;br /&gt;
&lt;br /&gt;
== TU Delft - Autonomous Quadrotor ==&lt;br /&gt;
&lt;br /&gt;
On 3 September 2012 two student teams of the Delft University of Technology started with a UAV robotics project, under guidance of dr. ir. M. Wisse and ir. B. D. W. Remes. Each team would have a slightly different initial objective. After completing this objective each team will be free to set its own objectives for the next phase of this project.&lt;br /&gt;
&lt;br /&gt;
=== Objectives ===&lt;br /&gt;
Our first objective is to enable the Parrot AR Drone v2.0 (from now on referred to as the AR Drone 2) to fly autonomously on the Paparazzi Software.&lt;br /&gt;
* Team one will work with the raw navigation data, creating their own software to retrieve and interpret the date. They will need to describe a new board configuration within for Paparazzi to work with.&lt;br /&gt;
* Team two will work with the programming as developed by Parrot. They will need to interpret the data as provided by the program and determine what data to send back.&lt;br /&gt;
&lt;br /&gt;
The second objective is that each team has to add a GPS sensor to the AR Drone 2. We will use the US Globalsat BU-353 GPS receiver for this purpose and mount it to the AR Drone 2 using the usb connector on the board.&lt;br /&gt;
&lt;br /&gt;
=== Project Contents ===&lt;br /&gt;
* [[AR.Drone 2 - Specifications]]&lt;br /&gt;
** [[Motor specifcations]]&lt;br /&gt;
** [[Sensor specifications]]&lt;br /&gt;
** [[GPS specifications]]&lt;br /&gt;
&lt;br /&gt;
=== Development ===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Installing Paparazzi on AR.Drone 2 ====&lt;br /&gt;
Installing Paparazzi on the AR Drone 2 takes more effort than we initially expected. To make life easier on both Paparazzi users and developers we are setting up two separate pages. The [[Beginners Page]] is meant for everyone that wants to use Paparazzi as the control system on their UAV. It will guide them through all the choices they will have to make, from selecting the correct hardware modules in Paparazzi to how to use the Paparazzi GCS.&lt;br /&gt;
&lt;br /&gt;
The [[Developers Page]] is meant for anyone that wants help develop Paparazzi into a more all-round platform that can be used on any and all UAVs. It will describe in depth what is needed in order to add a new modules to Paparazzi without ruining the rest of the architecture. &lt;br /&gt;
&lt;br /&gt;
* [[Beginners Page]]&lt;br /&gt;
* [[Developers Page]]&lt;br /&gt;
&lt;br /&gt;
=== Teams ===&lt;br /&gt;
* Team 1: [[TU Delft - Search and Rescue with AR Drone 2]]&lt;br /&gt;
* Team 2: [[TU Delft - Lasergame with Autonomous AR Drone]]&lt;/div&gt;</summary>
		<author><name>Vincent van Hoek</name></author>
	</entry>
	<entry>
		<id>http://wiki.paparazziuav.org/w/index.php?title=GPS/BU_353&amp;diff=13765</id>
		<title>GPS/BU 353</title>
		<link rel="alternate" type="text/html" href="http://wiki.paparazziuav.org/w/index.php?title=GPS/BU_353&amp;diff=13765"/>
		<updated>2012-11-28T08:40:36Z</updated>

		<summary type="html">&lt;p&gt;Vincent van Hoek: moved GPS specification to GPS specifications&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Image:BU-353_gps_receiver.jpg|thumb|right|250px|BU-353 GPS receiver]]&lt;br /&gt;
Our goal is to adapt the USGlobalsat BU-353 GPS receiver to work with the Parrot AR.Drone 2.0. In this part some general specifications of the sensor are given.&lt;br /&gt;
&lt;br /&gt;
== Type of GPS sensor ==&lt;br /&gt;
The GPS sensor we use for this project is as said before the BU-353 USB GPS Receiver from US Globalstat. This receiver is compatible with systems running Windows, MAC OS and Linux. Therefor the receiver is to use for each application. The receiver sends the data through the USB cable to the system. The data send by the receiver is SiRF binary or NMEA 0183.&lt;br /&gt;
&lt;br /&gt;
== Configuration ==&lt;br /&gt;
To use the sensor the system must be configured to receive the sended data correctly. Because we use a Linux system the configuration for such a system is explained. The used Baudrate of GPS sensor is 4800. The receiver transmits no parity bit. The number of bits transmitted by the receiver is 8 followed by 1 stop bit. The system must be configured to receive correct data. The default settings of a Linux system are receiving no parity bit, 8 data bits and 1 stop bit. In the most cases you only have to set the Baudrate to 4800.&lt;br /&gt;
&lt;br /&gt;
== Data transmitted by GPS ==&lt;br /&gt;
The receiver tranmists data to your system. The default format sended by the receiver is the [http://www.gpsinformation.org/dale/nmea.htm NMEA 0183] standard. NMEA consists of sentences, the first word of which, called a data type, defines the interpretation of the rest of the sentence. Each Data type would have its own unique interpretation and is defined in the NMEA standard. There are many sentances but our receiver is only able to receive some of them. The types the receiver is able to handle are: [http://www.gpsinformation.org/dale/nmea.htm#GGA GGA], [http://www.gpsinformation.org/dale/nmea.htm#GSA GSA], [http://www.gpsinformation.org/dale/nmea.htm#GSV GSV], [http://www.gpsinformation.org/dale/nmea.htm#RMC RMC], [http://www.gpsinformation.org/dale/nmea.htm#VTG VTG] and [http://www.gpsinformation.org/dale/nmea.htm#GLL GLL]. The last to datatypes are optional.&lt;/div&gt;</summary>
		<author><name>Vincent van Hoek</name></author>
	</entry>
	<entry>
		<id>http://wiki.paparazziuav.org/w/index.php?title=TU_Delft_-_Search_and_Rescue_with_AR_Drone_2&amp;diff=13596</id>
		<title>TU Delft - Search and Rescue with AR Drone 2</title>
		<link rel="alternate" type="text/html" href="http://wiki.paparazziuav.org/w/index.php?title=TU_Delft_-_Search_and_Rescue_with_AR_Drone_2&amp;diff=13596"/>
		<updated>2012-11-15T11:50:35Z</updated>

		<summary type="html">&lt;p&gt;Vincent van Hoek: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Image:2012-10-03 12.40.46.jpg|thumb|right|400px|TU Delft Minor Robotics: Quadrotor Group 1]]__TOC__&lt;br /&gt;
&lt;br /&gt;
== Introduction==&lt;br /&gt;
The highly maneuverability and stability of a quadrotor inspired us to make an autonomous search and rescue vehicle. For this the AR Drone 2 was used.  The goal of this project is thus to further develop the AR Drone2 in a robot capable of performing an autonomous search mission. All the steps taken are described on this page.&lt;br /&gt;
&lt;br /&gt;
In order to achieve this goal we decided to work with raw data. The data was obtained by creating drivers capable of extracting and interpreting sensor data from the AR Drone2. In order to get the quadrotor flying paparazzi was used. For simulation JSBSim was used, which was then visualized using Flight Gear. The final section of the page will concern with the subject of making the quadrotor autonomous.&lt;br /&gt;
&lt;br /&gt;
How all the data was obtained is presented in chapter 2. In chapter 3 it is described how to get paparazzi working on the drone. Next in chapter 4 we present how simulation was done and finally the proces of making the drone autonomous is described in chapter 5.&lt;br /&gt;
&lt;br /&gt;
== Data acquisition==&lt;br /&gt;
&lt;br /&gt;
So as explained in the introduction, firstly the raw data had to be extracted from the AR Drone2. So this data could be fed to paparazzi. So we started with trying to connect and pass files to the AR Drone2, which is desribed in the connecing section. The exact details of the extraction of the data is described in the NAV board section. Next the data from paparazzi had to be passed on to our actuators correctly. This is described in the motor driver section. To be able to perform better in our autonomous mission a GPS was added to  the AR Drone2. The details of this are described in the GPS section.&lt;br /&gt;
&lt;br /&gt;
=== Connecting===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
For our project the operating system Ubuntu was used, so all the steps described here are for an Ubuntu operating system. But it's a free operating system, so if you want to retrace our steps you can simply download it and for example access it from your current operating system using virtual box.&lt;br /&gt;
&lt;br /&gt;
The connecting was done using Telnet.&lt;br /&gt;
&lt;br /&gt;
*[[Telnet AR.Drone2]]&lt;br /&gt;
&lt;br /&gt;
The actual transferring of files is done using a File Transfer Protocol (FTP).&lt;br /&gt;
&lt;br /&gt;
*[[FTP AR.Drone2]]&lt;br /&gt;
&lt;br /&gt;
=== NAV board===&lt;br /&gt;
&lt;br /&gt;
Throughout this project, on several different occasions, it will be apparent that the AR Drone2 was never really meant to be used as we inteded to. In addition to this, Parrot SA has a vested interest in maintaining the exclusivity of its product, rightfully so. So with what little information is publicly available, reverse engineering was a lot harder than we first thought when we began the project. However the AR.Drone2 looks a lot like the AR.Drone1, its predecessor, for which a lot of reverse engineering has allready been done by other people. Ofcourse there are differences and this is where we started reverse engineering the bits and pieces for the NAV board.&lt;br /&gt;
&lt;br /&gt;
*[[NAV board AR.Drone2]]&lt;br /&gt;
&lt;br /&gt;
=== Motor driver===&lt;br /&gt;
&lt;br /&gt;
Using a similar technique as for the NAV board, the motor drivers were obtained.&lt;br /&gt;
&lt;br /&gt;
*[[Motor driver AR.Drone2]]&lt;br /&gt;
&lt;br /&gt;
=== GPS===&lt;br /&gt;
The GPS we use with the AR.Drone2 is the [[GPS_specification | BU-353 GPS]]. To make good use of this GPS we had to create our own driver for it. &lt;br /&gt;
&lt;br /&gt;
*[[GPS Driver AR.Drone2]]&lt;br /&gt;
&lt;br /&gt;
== Paparazzi on Drone==&lt;br /&gt;
&lt;br /&gt;
Now the necessary raw data ould be obtained and the actuators could be controlled, it's time to integrate &lt;br /&gt;
&lt;br /&gt;
=== Using Paparazzi===&lt;br /&gt;
&lt;br /&gt;
&amp;quot;&amp;quot;Paparazzi Autopilot System&amp;quot;&amp;quot;&lt;br /&gt;
Throughout this project, on several different occasions, it will be apparent that the AR.Drone was never meant to be used in this fashion. In addition to this, Parrot SA has a vested interest in maintaining the exclusivity of its product, rightfully so. With what little information is publicly available it is the team's objective to load the open-source autopilot system, Paparazzi onto an otherwise copyright protected piece of hardware. In order to do so a few steps had to be taken to get Paparazzi onto the AR.Drone 2. &lt;br /&gt;
&lt;br /&gt;
*[[Reverse engineering the AR.Drone2]]&lt;br /&gt;
&lt;br /&gt;
*[[Integrating the AR Drone 2 with Paparazzi]]&lt;br /&gt;
&lt;br /&gt;
=== Compiling===&lt;br /&gt;
&lt;br /&gt;
== Simulation==&lt;br /&gt;
&lt;br /&gt;
=== JSBSim===&lt;br /&gt;
'''Creating A Flight Dynamics Model'''&lt;br /&gt;
&lt;br /&gt;
In order to control the otherwise highly active dynamic nature of the quadrotor, an autopilot system will be necessary because the reaction time of the pilot will, otherwise, not be sufficient to maintain stable flight.  The autopilot system will be created in Paparazzi for which a prerequisite is a proper flight dynamics model (FDM). To create the FDM the team will use [http://jsbsim.sourceforge.net/ JSBSIM], an open-source, platform-independent, flight-dynamics and control software library. Installing JSBSIM is covered for several different operating systems on the Paparazzi Wiki,  [[JSBSim|Installing JSBSIM]].&lt;br /&gt;
&lt;br /&gt;
Once JSBSim had been installed, the actual work could begin. Flight Dynamics and the creation of an individual model for an aircraft is essentially a case study regarding its control, stability, and performance. To model those three dynamics aspects is essentially what JSBSIM was used for but before work could begin, JSBSIM would first need to be fed a configuration file. The configuration file is written in a .xml format and, naturally, is unique to each aircraft. Although not applicable to this project, it is worth mentioning in the event that the reader of this page is not following the instruction exactly and is using it more for reference, there is a tool on the JSBSIM page called [http://jsbsim.sourceforge.net/aeromatic2.html Aeromatic], which is a capable .xml configuration file generator. For those following this project closely, a link will follow for creating a suitable JSBSIM .xml configuration file for the AR.Drone2.&lt;br /&gt;
&lt;br /&gt;
*[[Creating a JSBSIM .xml Configuration File for AR.Drone2]]&lt;br /&gt;
&lt;br /&gt;
=== Flightgear===&lt;br /&gt;
Without actually using the drone itself, and only the previously developed JSBSIM configuration file, a simulated drone can be flown in Flightgear. To do so, a CAD model of the drone is implemented to give a visualization to the simulated model. Flightgear is the preeminent open-source flight simulator backed by a large community of active users. More on the software can be found on the [http://www.flightgear.org/ Flightgear website].&lt;br /&gt;
&lt;br /&gt;
== Autonomous==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Creating an airframe ==&lt;br /&gt;
From the Paparazzi GCS we need to add an aircraft and attach an [[airframe]], flightplan, settings, radio and telemetry files.&lt;/div&gt;</summary>
		<author><name>Vincent van Hoek</name></author>
	</entry>
	<entry>
		<id>http://wiki.paparazziuav.org/w/index.php?title=TU_Delft_-_Search_and_Rescue_with_AR_Drone_2&amp;diff=13578</id>
		<title>TU Delft - Search and Rescue with AR Drone 2</title>
		<link rel="alternate" type="text/html" href="http://wiki.paparazziuav.org/w/index.php?title=TU_Delft_-_Search_and_Rescue_with_AR_Drone_2&amp;diff=13578"/>
		<updated>2012-11-15T11:19:04Z</updated>

		<summary type="html">&lt;p&gt;Vincent van Hoek: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Image:2012-10-03 12.40.46.jpg|thumb|right|400px|TU Delft Minor Robotics: Quadrotor Group 1]]__TOC__&lt;br /&gt;
&lt;br /&gt;
== Introduction==&lt;br /&gt;
The highly maneuverability and stability of a quadrotor inspired us to make an autonomous search and rescue vehicle. For this the AR Drone 2 was used.  The goal of this project is thus to further develop the AR Drone2 in a robot capable of performing an autonomous search mission. All the steps taken are described on this page.&lt;br /&gt;
&lt;br /&gt;
In order to achieve this goal we decided to work with raw data. The data was obtained by creating drivers capable of extracting and interpreting sensor data from the AR Drone2. In order to get the quadrotor flying paparazzi was used. For simulation JSBSim was used, which was then visualized using Flight Gear. The final section of the page will concern with the subject of making the quadrotor autonomous.&lt;br /&gt;
&lt;br /&gt;
How all the data was obtained is presented in chapter 2. In chapter 3 it is described how to get paparazzi working on the drone. Next in chapter 4 we present how simulation was done and finally the proces of making the drone autonomous is described in chapter 5.&lt;br /&gt;
&lt;br /&gt;
== Data acquisition==&lt;br /&gt;
&lt;br /&gt;
So as explained in the introduction, firstly the raw data had to be extracted from the AR Drone2. So this data could be fed to paparazzi. So we started with trying to connect and pass files to the AR Drone2, which is desribed in the connecing section. The exact details of the extraction of the data is described in the NAV board section. Next the data from paparazzi had to be passed on to our actuators correctly. This is described in the drivers section. To be able to perform better in our autonomous mission a GPS was added to  the AR Drone2. The details of this are described in the GPS section.&lt;br /&gt;
&lt;br /&gt;
=== Connecting===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
For our project the operating system Ubuntu was used, so all the steps described here are for an Ubuntu operating system. But it's a free operating system, so if you want to retrace our steps you can simply download it and for example access it from your current operating system using virtual box.&lt;br /&gt;
&lt;br /&gt;
==== Telnet====&lt;br /&gt;
&lt;br /&gt;
The actual connecting was done using Telnet. After installing Telnet a connecting can be established in the following manner: (dino of iemand andners, kan je dit aanvullen?)&lt;br /&gt;
&lt;br /&gt;
==== FTP====&lt;br /&gt;
&lt;br /&gt;
For transferring files the File Transfer Protocol (FTP) used in this project, was FileZille. Files can be transferred to the AR Drone2 as described next: (dino of iemand andners, kan je dit aanvullen?)&lt;br /&gt;
&lt;br /&gt;
=== NAV board===&lt;br /&gt;
&lt;br /&gt;
Throughout this project, on several different occasions, it will be apparent that the AR Drone2 was never really meant to be used as we inteded to. In addition to this, Parrot SA has a vested interest in maintaining the exclusivity of its product, rightfully so. So with what little information is publicly available, reverse engineering was a lot harder than we first thought when we began the project. However the AR.Drone2 looks a lot like the AR.Drone1, its predecessor, for which a lot of reverse engineering has allready been done by other people. Ofcourse there are differences and this is where we started reverse engineering the bits and pieces for the NAV board.&lt;br /&gt;
&lt;br /&gt;
*[[NAV board AR.Drone2]]&lt;br /&gt;
&lt;br /&gt;
=== Motor driver===&lt;br /&gt;
&lt;br /&gt;
Using a similar technique as for the NAV board the motor drivers were obtained.&lt;br /&gt;
&lt;br /&gt;
*[[Motor driver AR.Drone2]]&lt;br /&gt;
&lt;br /&gt;
=== GPS===&lt;br /&gt;
The GPS we use with the AR.Drone2 is the [[GPS_specification | BU-353 GPS]]. To make good use of this GPS we had to create our own driver for it. That way we could extract the received data from the GPS and output it in our preferred format.  &lt;br /&gt;
To create our own driver, we first needed to know how to retrieve the data from the GPS. We downloaded the [http://www.usglobalsat.com/s-122-bu-353-support.aspx Linux USB Driver] and learned from the readme that you could use the GPS with the following commando:&lt;br /&gt;
 su root&lt;br /&gt;
 &lt;br /&gt;
 stty -F /dev/ttyUSB0 ispeed 4800 &amp;amp;&amp;amp; cat &amp;lt; /dev/ttyUSB0&lt;br /&gt;
With this we found out that we needed to create a program that opens the /dev/ttyUSB0 device and reads it at a baud rate of 4800. We had to pick a datatype since working with several datatypes at the same time would be confusing. Therefore we had to extract the right datatype string from the data strings output by the GPS and format that string into useful information.&lt;br /&gt;
&lt;br /&gt;
Later, when we were trying to integrate the GPS with paparazzi, we found out that there was already a parser for the protocol of the GPS: the NMEA. This parser (altough stated to be incomplete) provides most of the necassary data we wanted to use. We therefore ceased working on our own parser.&lt;br /&gt;
&lt;br /&gt;
== Paparazzi on Drone==&lt;br /&gt;
&lt;br /&gt;
Now the necessary raw data ould be obtained and the actuators could be controlled, it's time to integrate &lt;br /&gt;
&lt;br /&gt;
=== Integrating drone in Paparazzi===&lt;br /&gt;
&lt;br /&gt;
&amp;quot;&amp;quot;Paparazzi Autopilot System&amp;quot;&amp;quot;&lt;br /&gt;
Throughout this project, on several different occasions, it will be apparent that the AR.Drone was never meant to be used in this fashion. In addition to this, Parrot SA has a vested interest in maintaining the exclusivity of its product, rightfully so. With what little information is publicly available it is the team's objective to load the open-source autopilot system, Paparazzi onto an otherwise copyright protected piece of hardware. In order to do so a few steps had to be taken to get Paparazzi onto the AR.Drone 2. &lt;br /&gt;
&lt;br /&gt;
*[[Reverse engineering the AR.Drone2]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Compiling===&lt;br /&gt;
&lt;br /&gt;
== Simulation==&lt;br /&gt;
&lt;br /&gt;
=== JSBSim===&lt;br /&gt;
'''Creating A Flight Dynamics Model'''&lt;br /&gt;
&lt;br /&gt;
In order to control the otherwise highly active dynamic nature of the quadrotor, an autopilot system will be necessary because the reaction time of the pilot will, otherwise, not be sufficient to maintain stable flight.  The autopilot system will be created in Paparazzi for which a prerequisite is a proper flight dynamics model (FDM). To create the FDM the team will use [http://jsbsim.sourceforge.net/ JSBSIM], an open-source, platform-independent, flight-dynamics and control software library. Installing JSBSIM is covered for several different operating systems on the Paparazzi Wiki,  [[JSBSim|Installing JSBSIM]].&lt;br /&gt;
&lt;br /&gt;
Once JSBSim had been installed, the actual work could begin. Flight Dynamics and the creation of an individual model for an aircraft is essentially a case study regarding its control, stability, and performance. To model those three dynamics aspects is essentially what JSBSIM was used for but before work could begin, JSBSIM would first need to be fed a configuration file. The configuration file is written in a .xml format and, naturally, is unique to each aircraft. Although not applicable to this project, it is worth mentioning in the event that the reader of this page is not following the instruction exactly and is using it more for reference, there is a tool on the JSBSIM page called [http://jsbsim.sourceforge.net/aeromatic2.html Aeromatic], which is a capable .xml configuration file generator. For those following this project closely, a link will follow for creating a suitable JSBSIM .xml configuration file for the AR.Drone2.&lt;br /&gt;
&lt;br /&gt;
*[[Creating a JSBSIM .xml Configuration File for AR.Drone2]]&lt;br /&gt;
&lt;br /&gt;
=== Flightgear===&lt;br /&gt;
Without actually using the drone itself, and only the previously developed JSBSIM configuration file, a simulated drone can be flown in Flightgear. To do so, a CAD model of the drone is implemented to give a visualization to the simulated model. Flightgear is the preeminent open-source flight simulator backed by a large community of active users. More on the software can be found on the [http://www.flightgear.org/ Flightgear website].&lt;br /&gt;
&lt;br /&gt;
== Autonomous==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Creating an airframe ==&lt;br /&gt;
From the Paparazzi GCS we need to add an aircraft and attach an [[airframe]], flightplan, settings, radio and telemetry files.&lt;/div&gt;</summary>
		<author><name>Vincent van Hoek</name></author>
	</entry>
	<entry>
		<id>http://wiki.paparazziuav.org/w/index.php?title=TU_Delft_-_Search_and_Rescue_with_AR_Drone_2&amp;diff=13577</id>
		<title>TU Delft - Search and Rescue with AR Drone 2</title>
		<link rel="alternate" type="text/html" href="http://wiki.paparazziuav.org/w/index.php?title=TU_Delft_-_Search_and_Rescue_with_AR_Drone_2&amp;diff=13577"/>
		<updated>2012-11-15T11:18:19Z</updated>

		<summary type="html">&lt;p&gt;Vincent van Hoek: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Image:BU-353_gps_receiver.jpg|thumb|right|250px|TU Delft Minor Robotics: Quadrotor Group 1]]__TOC__&lt;br /&gt;
&lt;br /&gt;
== Introduction==&lt;br /&gt;
The highly maneuverability and stability of a quadrotor inspired us to make an autonomous search and rescue vehicle. For this the AR Drone 2 was used.  The goal of this project is thus to further develop the AR Drone2 in a robot capable of performing an autonomous search mission. All the steps taken are described on this page.&lt;br /&gt;
&lt;br /&gt;
In order to achieve this goal we decided to work with raw data. The data was obtained by creating drivers capable of extracting and interpreting sensor data from the AR Drone2. In order to get the quadrotor flying paparazzi was used. For simulation JSBSim was used, which was then visualized using Flight Gear. The final section of the page will concern with the subject of making the quadrotor autonomous.&lt;br /&gt;
&lt;br /&gt;
How all the data was obtained is presented in chapter 2. In chapter 3 it is described how to get paparazzi working on the drone. Next in chapter 4 we present how simulation was done and finally the proces of making the drone autonomous is described in chapter 5.&lt;br /&gt;
&lt;br /&gt;
== Data acquisition==&lt;br /&gt;
&lt;br /&gt;
So as explained in the introduction, firstly the raw data had to be extracted from the AR Drone2. So this data could be fed to paparazzi. So we started with trying to connect and pass files to the AR Drone2, which is desribed in the connecing section. The exact details of the extraction of the data is described in the NAV board section. Next the data from paparazzi had to be passed on to our actuators correctly. This is described in the drivers section. To be able to perform better in our autonomous mission a GPS was added to  the AR Drone2. The details of this are described in the GPS section.&lt;br /&gt;
&lt;br /&gt;
=== Connecting===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
For our project the operating system Ubuntu was used, so all the steps described here are for an Ubuntu operating system. But it's a free operating system, so if you want to retrace our steps you can simply download it and for example access it from your current operating system using virtual box.&lt;br /&gt;
&lt;br /&gt;
==== Telnet====&lt;br /&gt;
&lt;br /&gt;
The actual connecting was done using Telnet. After installing Telnet a connecting can be established in the following manner: (dino of iemand andners, kan je dit aanvullen?)&lt;br /&gt;
&lt;br /&gt;
==== FTP====&lt;br /&gt;
&lt;br /&gt;
For transferring files the File Transfer Protocol (FTP) used in this project, was FileZille. Files can be transferred to the AR Drone2 as described next: (dino of iemand andners, kan je dit aanvullen?)&lt;br /&gt;
&lt;br /&gt;
=== NAV board===&lt;br /&gt;
&lt;br /&gt;
Throughout this project, on several different occasions, it will be apparent that the AR Drone2 was never really meant to be used as we inteded to. In addition to this, Parrot SA has a vested interest in maintaining the exclusivity of its product, rightfully so. So with what little information is publicly available, reverse engineering was a lot harder than we first thought when we began the project. However the AR.Drone2 looks a lot like the AR.Drone1, its predecessor, for which a lot of reverse engineering has allready been done by other people. Ofcourse there are differences and this is where we started reverse engineering the bits and pieces for the NAV board.&lt;br /&gt;
&lt;br /&gt;
*[[NAV board AR.Drone2]]&lt;br /&gt;
&lt;br /&gt;
=== Motor driver===&lt;br /&gt;
&lt;br /&gt;
Using a similar technique as for the NAV board the motor drivers were obtained.&lt;br /&gt;
&lt;br /&gt;
*[[Motor driver AR.Drone2]]&lt;br /&gt;
&lt;br /&gt;
=== GPS===&lt;br /&gt;
The GPS we use with the AR.Drone2 is the [[GPS_specification | BU-353 GPS]]. To make good use of this GPS we had to create our own driver for it. That way we could extract the received data from the GPS and output it in our preferred format.  &lt;br /&gt;
To create our own driver, we first needed to know how to retrieve the data from the GPS. We downloaded the [http://www.usglobalsat.com/s-122-bu-353-support.aspx Linux USB Driver] and learned from the readme that you could use the GPS with the following commando:&lt;br /&gt;
 su root&lt;br /&gt;
 &lt;br /&gt;
 stty -F /dev/ttyUSB0 ispeed 4800 &amp;amp;&amp;amp; cat &amp;lt; /dev/ttyUSB0&lt;br /&gt;
With this we found out that we needed to create a program that opens the /dev/ttyUSB0 device and reads it at a baud rate of 4800. We had to pick a datatype since working with several datatypes at the same time would be confusing. Therefore we had to extract the right datatype string from the data strings output by the GPS and format that string into useful information.&lt;br /&gt;
&lt;br /&gt;
Later, when we were trying to integrate the GPS with paparazzi, we found out that there was already a parser for the protocol of the GPS: the NMEA. This parser (altough stated to be incomplete) provides most of the necassary data we wanted to use. We therefore ceased working on our own parser.&lt;br /&gt;
&lt;br /&gt;
== Paparazzi on Drone==&lt;br /&gt;
&lt;br /&gt;
Now the necessary raw data ould be obtained and the actuators could be controlled, it's time to integrate &lt;br /&gt;
&lt;br /&gt;
=== Integrating drone in Paparazzi===&lt;br /&gt;
&lt;br /&gt;
&amp;quot;&amp;quot;Paparazzi Autopilot System&amp;quot;&amp;quot;&lt;br /&gt;
Throughout this project, on several different occasions, it will be apparent that the AR.Drone was never meant to be used in this fashion. In addition to this, Parrot SA has a vested interest in maintaining the exclusivity of its product, rightfully so. With what little information is publicly available it is the team's objective to load the open-source autopilot system, Paparazzi onto an otherwise copyright protected piece of hardware. In order to do so a few steps had to be taken to get Paparazzi onto the AR.Drone 2. &lt;br /&gt;
&lt;br /&gt;
*[[Reverse engineering the AR.Drone2]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Compiling===&lt;br /&gt;
&lt;br /&gt;
== Simulation==&lt;br /&gt;
&lt;br /&gt;
=== JSBSim===&lt;br /&gt;
'''Creating A Flight Dynamics Model'''&lt;br /&gt;
&lt;br /&gt;
In order to control the otherwise highly active dynamic nature of the quadrotor, an autopilot system will be necessary because the reaction time of the pilot will, otherwise, not be sufficient to maintain stable flight.  The autopilot system will be created in Paparazzi for which a prerequisite is a proper flight dynamics model (FDM). To create the FDM the team will use [http://jsbsim.sourceforge.net/ JSBSIM], an open-source, platform-independent, flight-dynamics and control software library. Installing JSBSIM is covered for several different operating systems on the Paparazzi Wiki,  [[JSBSim|Installing JSBSIM]].&lt;br /&gt;
&lt;br /&gt;
Once JSBSim had been installed, the actual work could begin. Flight Dynamics and the creation of an individual model for an aircraft is essentially a case study regarding its control, stability, and performance. To model those three dynamics aspects is essentially what JSBSIM was used for but before work could begin, JSBSIM would first need to be fed a configuration file. The configuration file is written in a .xml format and, naturally, is unique to each aircraft. Although not applicable to this project, it is worth mentioning in the event that the reader of this page is not following the instruction exactly and is using it more for reference, there is a tool on the JSBSIM page called [http://jsbsim.sourceforge.net/aeromatic2.html Aeromatic], which is a capable .xml configuration file generator. For those following this project closely, a link will follow for creating a suitable JSBSIM .xml configuration file for the AR.Drone2.&lt;br /&gt;
&lt;br /&gt;
*[[Creating a JSBSIM .xml Configuration File for AR.Drone2]]&lt;br /&gt;
&lt;br /&gt;
=== Flightgear===&lt;br /&gt;
Without actually using the drone itself, and only the previously developed JSBSIM configuration file, a simulated drone can be flown in Flightgear. To do so, a CAD model of the drone is implemented to give a visualization to the simulated model. Flightgear is the preeminent open-source flight simulator backed by a large community of active users. More on the software can be found on the [http://www.flightgear.org/ Flightgear website].&lt;br /&gt;
&lt;br /&gt;
== Autonomous==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Creating an airframe ==&lt;br /&gt;
From the Paparazzi GCS we need to add an aircraft and attach an [[airframe]], flightplan, settings, radio and telemetry files.&lt;/div&gt;</summary>
		<author><name>Vincent van Hoek</name></author>
	</entry>
	<entry>
		<id>http://wiki.paparazziuav.org/w/index.php?title=TU_Delft_-_Search_and_Rescue_with_AR_Drone_2&amp;diff=13576</id>
		<title>TU Delft - Search and Rescue with AR Drone 2</title>
		<link rel="alternate" type="text/html" href="http://wiki.paparazziuav.org/w/index.php?title=TU_Delft_-_Search_and_Rescue_with_AR_Drone_2&amp;diff=13576"/>
		<updated>2012-11-15T11:17:42Z</updated>

		<summary type="html">&lt;p&gt;Vincent van Hoek: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&lt;br /&gt;
== Introduction==&lt;br /&gt;
The highly maneuverability and stability of a quadrotor inspired us to make an autonomous search and rescue vehicle. For this the AR Drone 2 was used.  The goal of this project is thus to further develop the AR Drone2 in a robot capable of performing an autonomous search mission. All the steps taken are described on this page.&lt;br /&gt;
&lt;br /&gt;
In order to achieve this goal we decided to work with raw data. The data was obtained by creating drivers capable of extracting and interpreting sensor data from the AR Drone2. In order to get the quadrotor flying paparazzi was used. For simulation JSBSim was used, which was then visualized using Flight Gear. The final section of the page will concern with the subject of making the quadrotor autonomous.&lt;br /&gt;
&lt;br /&gt;
How all the data was obtained is presented in chapter 2. In chapter 3 it is described how to get paparazzi working on the drone. Next in chapter 4 we present how simulation was done and finally the proces of making the drone autonomous is described in chapter 5.&lt;br /&gt;
&lt;br /&gt;
== Data acquisition==&lt;br /&gt;
&lt;br /&gt;
So as explained in the introduction, firstly the raw data had to be extracted from the AR Drone2. So this data could be fed to paparazzi. So we started with trying to connect and pass files to the AR Drone2, which is desribed in the connecing section. The exact details of the extraction of the data is described in the NAV board section. Next the data from paparazzi had to be passed on to our actuators correctly. This is described in the drivers section. To be able to perform better in our autonomous mission a GPS was added to  the AR Drone2. The details of this are described in the GPS section.&lt;br /&gt;
&lt;br /&gt;
=== Connecting===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
For our project the operating system Ubuntu was used, so all the steps described here are for an Ubuntu operating system. But it's a free operating system, so if you want to retrace our steps you can simply download it and for example access it from your current operating system using virtual box.&lt;br /&gt;
&lt;br /&gt;
==== Telnet====&lt;br /&gt;
&lt;br /&gt;
The actual connecting was done using Telnet. After installing Telnet a connecting can be established in the following manner: (dino of iemand andners, kan je dit aanvullen?)&lt;br /&gt;
&lt;br /&gt;
==== FTP====&lt;br /&gt;
&lt;br /&gt;
For transferring files the File Transfer Protocol (FTP) used in this project, was FileZille. Files can be transferred to the AR Drone2 as described next: (dino of iemand andners, kan je dit aanvullen?)&lt;br /&gt;
&lt;br /&gt;
=== NAV board===&lt;br /&gt;
&lt;br /&gt;
Throughout this project, on several different occasions, it will be apparent that the AR Drone2 was never really meant to be used as we inteded to. In addition to this, Parrot SA has a vested interest in maintaining the exclusivity of its product, rightfully so. So with what little information is publicly available, reverse engineering was a lot harder than we first thought when we began the project. However the AR.Drone2 looks a lot like the AR.Drone1, its predecessor, for which a lot of reverse engineering has allready been done by other people. Ofcourse there are differences and this is where we started reverse engineering the bits and pieces for the NAV board.&lt;br /&gt;
&lt;br /&gt;
*[[NAV board AR.Drone2]]&lt;br /&gt;
&lt;br /&gt;
=== Motor driver===&lt;br /&gt;
&lt;br /&gt;
Using a similar technique as for the NAV board the motor drivers were obtained.&lt;br /&gt;
&lt;br /&gt;
*[[Motor driver AR.Drone2]]&lt;br /&gt;
&lt;br /&gt;
=== GPS===&lt;br /&gt;
The GPS we use with the AR.Drone2 is the [[GPS_specification | BU-353 GPS]]. To make good use of this GPS we had to create our own driver for it. That way we could extract the received data from the GPS and output it in our preferred format.  &lt;br /&gt;
To create our own driver, we first needed to know how to retrieve the data from the GPS. We downloaded the [http://www.usglobalsat.com/s-122-bu-353-support.aspx Linux USB Driver] and learned from the readme that you could use the GPS with the following commando:&lt;br /&gt;
 su root&lt;br /&gt;
 &lt;br /&gt;
 stty -F /dev/ttyUSB0 ispeed 4800 &amp;amp;&amp;amp; cat &amp;lt; /dev/ttyUSB0&lt;br /&gt;
With this we found out that we needed to create a program that opens the /dev/ttyUSB0 device and reads it at a baud rate of 4800. We had to pick a datatype since working with several datatypes at the same time would be confusing. Therefore we had to extract the right datatype string from the data strings output by the GPS and format that string into useful information.&lt;br /&gt;
&lt;br /&gt;
Later, when we were trying to integrate the GPS with paparazzi, we found out that there was already a parser for the protocol of the GPS: the NMEA. This parser (altough stated to be incomplete) provides most of the necassary data we wanted to use. We therefore ceased working on our own parser.&lt;br /&gt;
&lt;br /&gt;
== Paparazzi on Drone==&lt;br /&gt;
&lt;br /&gt;
Now the necessary raw data ould be obtained and the actuators could be controlled, it's time to integrate &lt;br /&gt;
&lt;br /&gt;
=== Integrating drone in Paparazzi===&lt;br /&gt;
&lt;br /&gt;
&amp;quot;&amp;quot;Paparazzi Autopilot System&amp;quot;&amp;quot;&lt;br /&gt;
Throughout this project, on several different occasions, it will be apparent that the AR.Drone was never meant to be used in this fashion. In addition to this, Parrot SA has a vested interest in maintaining the exclusivity of its product, rightfully so. With what little information is publicly available it is the team's objective to load the open-source autopilot system, Paparazzi onto an otherwise copyright protected piece of hardware. In order to do so a few steps had to be taken to get Paparazzi onto the AR.Drone 2. &lt;br /&gt;
&lt;br /&gt;
*[[Reverse engineering the AR.Drone2]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Compiling===&lt;br /&gt;
&lt;br /&gt;
== Simulation==&lt;br /&gt;
&lt;br /&gt;
=== JSBSim===&lt;br /&gt;
'''Creating A Flight Dynamics Model'''&lt;br /&gt;
&lt;br /&gt;
In order to control the otherwise highly active dynamic nature of the quadrotor, an autopilot system will be necessary because the reaction time of the pilot will, otherwise, not be sufficient to maintain stable flight.  The autopilot system will be created in Paparazzi for which a prerequisite is a proper flight dynamics model (FDM). To create the FDM the team will use [http://jsbsim.sourceforge.net/ JSBSIM], an open-source, platform-independent, flight-dynamics and control software library. Installing JSBSIM is covered for several different operating systems on the Paparazzi Wiki,  [[JSBSim|Installing JSBSIM]].&lt;br /&gt;
&lt;br /&gt;
Once JSBSim had been installed, the actual work could begin. Flight Dynamics and the creation of an individual model for an aircraft is essentially a case study regarding its control, stability, and performance. To model those three dynamics aspects is essentially what JSBSIM was used for but before work could begin, JSBSIM would first need to be fed a configuration file. The configuration file is written in a .xml format and, naturally, is unique to each aircraft. Although not applicable to this project, it is worth mentioning in the event that the reader of this page is not following the instruction exactly and is using it more for reference, there is a tool on the JSBSIM page called [http://jsbsim.sourceforge.net/aeromatic2.html Aeromatic], which is a capable .xml configuration file generator. For those following this project closely, a link will follow for creating a suitable JSBSIM .xml configuration file for the AR.Drone2.&lt;br /&gt;
&lt;br /&gt;
*[[Creating a JSBSIM .xml Configuration File for AR.Drone2]]&lt;br /&gt;
&lt;br /&gt;
=== Flightgear===&lt;br /&gt;
Without actually using the drone itself, and only the previously developed JSBSIM configuration file, a simulated drone can be flown in Flightgear. To do so, a CAD model of the drone is implemented to give a visualization to the simulated model. Flightgear is the preeminent open-source flight simulator backed by a large community of active users. More on the software can be found on the [http://www.flightgear.org/ Flightgear website].&lt;br /&gt;
&lt;br /&gt;
== Autonomous==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Creating an airframe ==&lt;br /&gt;
From the Paparazzi GCS we need to add an aircraft and attach an [[airframe]], flightplan, settings, radio and telemetry files.&lt;/div&gt;</summary>
		<author><name>Vincent van Hoek</name></author>
	</entry>
	<entry>
		<id>http://wiki.paparazziuav.org/w/index.php?title=File:2012-10-03_12.40.46.jpg&amp;diff=13557</id>
		<title>File:2012-10-03 12.40.46.jpg</title>
		<link rel="alternate" type="text/html" href="http://wiki.paparazziuav.org/w/index.php?title=File:2012-10-03_12.40.46.jpg&amp;diff=13557"/>
		<updated>2012-11-15T10:46:08Z</updated>

		<summary type="html">&lt;p&gt;Vincent van Hoek: TU Delft Quadrotor Group 1&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;TU Delft Quadrotor Group 1&lt;/div&gt;</summary>
		<author><name>Vincent van Hoek</name></author>
	</entry>
	<entry>
		<id>http://wiki.paparazziuav.org/w/index.php?title=TU_Delft_-_Autonomous_Quadrotor&amp;diff=13366</id>
		<title>TU Delft - Autonomous Quadrotor</title>
		<link rel="alternate" type="text/html" href="http://wiki.paparazziuav.org/w/index.php?title=TU_Delft_-_Autonomous_Quadrotor&amp;diff=13366"/>
		<updated>2012-10-18T10:05:05Z</updated>

		<summary type="html">&lt;p&gt;Vincent van Hoek: /* Objectives */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[File:tudelft_logo.jpg]]&lt;br /&gt;
&lt;br /&gt;
== TU Delft - Autonomous Quadrotor ==&lt;br /&gt;
&lt;br /&gt;
On 3 September 2012 two student teams of the Delft University of Technology started with a UAV robotics project, under guidance of M. Wisse and Ir. B. D. W. Remes. Each team would have a slightly different initial objective. After completing this objective each team will be free to set its own objectives for the next phase of this project.&lt;br /&gt;
&lt;br /&gt;
=== Objectives ===&lt;br /&gt;
Our first objective is to enable the Parrot AR Drone v2.0 (from now on referred to as the AR Drone 2) to fly autonomously on the Paparazzi Software.&lt;br /&gt;
* Team one will work with the raw navigation data, creating their own software to retrieve and interpret the date. They will need to describe a new board configuration within for Paparazzi to work with.&lt;br /&gt;
* Team two will work with the programming as developed by parrot. They will need to interpret the data as provided by the program and determine what data to send back.&lt;br /&gt;
&lt;br /&gt;
Furthermore each team has to add a GPS sensor to the AR Drone 2. We will use the US Globalsat BU-353 GPS receiver for this purpose.&lt;br /&gt;
&lt;br /&gt;
=== Teams ===&lt;br /&gt;
* Team 1: [[TU Delft - Search and Rescue with AR Drone 2]]&lt;br /&gt;
* Team 2: [[TU Delft - Lasergame with Autonomous AR Drone]]&lt;br /&gt;
&lt;br /&gt;
=== Project Contents ===&lt;br /&gt;
* [[AR.Drone 2 - Specifications]]&lt;br /&gt;
** [[Motor specicifcations]]&lt;br /&gt;
** [[Sensor specifications]]&lt;br /&gt;
** [[GPS specification]]&lt;br /&gt;
 &lt;br /&gt;
=== Installing Paparazzi on AR.Drone 2 ===&lt;br /&gt;
* [[Beginner page]]&lt;br /&gt;
* [[Developer page]]&lt;/div&gt;</summary>
		<author><name>Vincent van Hoek</name></author>
	</entry>
	<entry>
		<id>http://wiki.paparazziuav.org/w/index.php?title=TU_Delft_-_Autonomous_Quadrotor&amp;diff=13365</id>
		<title>TU Delft - Autonomous Quadrotor</title>
		<link rel="alternate" type="text/html" href="http://wiki.paparazziuav.org/w/index.php?title=TU_Delft_-_Autonomous_Quadrotor&amp;diff=13365"/>
		<updated>2012-10-18T09:56:59Z</updated>

		<summary type="html">&lt;p&gt;Vincent van Hoek: /* TU Delft - Autonomous Quadrotor */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[File:tudelft_logo.jpg]]&lt;br /&gt;
&lt;br /&gt;
== TU Delft - Autonomous Quadrotor ==&lt;br /&gt;
&lt;br /&gt;
On 3 September 2012 two student teams of the Delft University of Technology started with a UAV robotics project, under guidance of M. Wisse and Ir. B. D. W. Remes. Each team would have a slightly different initial objective. After completing this objective each team will be free to set its own objectives for the next phase of this project.&lt;br /&gt;
&lt;br /&gt;
=== Objectives ===&lt;br /&gt;
Our first objective is to enable the Parrot AR Drone v2.0 (from now on referred to as the AR Drone 2) to fly autonomously on the Paparazzi Software. To achieve this we need to describe a new board configuration within for Paparazzi to work with.&lt;br /&gt;
&lt;br /&gt;
Furthermore we want to add a GPS sensor to the AR Drone 2. We will use the US Globalsat BU-353 GPS receiver for this purpose.&lt;br /&gt;
&lt;br /&gt;
=== Teams ===&lt;br /&gt;
* Team 1: [[TU Delft - Search and Rescue with AR Drone 2]]&lt;br /&gt;
* Team 2: [[TU Delft - Lasergame with Autonomous AR Drone]]&lt;br /&gt;
&lt;br /&gt;
=== Project Contents ===&lt;br /&gt;
* [[AR.Drone 2 - Specifications]]&lt;br /&gt;
** [[Motor specicifcations]]&lt;br /&gt;
** [[Sensor specifications]]&lt;br /&gt;
** [[GPS specification]]&lt;br /&gt;
 &lt;br /&gt;
=== Installing Paparazzi on AR.Drone 2 ===&lt;br /&gt;
* [[Beginner page]]&lt;br /&gt;
* [[Developer page]]&lt;/div&gt;</summary>
		<author><name>Vincent van Hoek</name></author>
	</entry>
	<entry>
		<id>http://wiki.paparazziuav.org/w/index.php?title=TU_Delft_-_Autonomous_Quadrotor&amp;diff=13363</id>
		<title>TU Delft - Autonomous Quadrotor</title>
		<link rel="alternate" type="text/html" href="http://wiki.paparazziuav.org/w/index.php?title=TU_Delft_-_Autonomous_Quadrotor&amp;diff=13363"/>
		<updated>2012-10-18T09:53:11Z</updated>

		<summary type="html">&lt;p&gt;Vincent van Hoek: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[File:tudelft_logo.jpg]]&lt;br /&gt;
&lt;br /&gt;
== TU Delft - Autonomous Quadrotor ==&lt;br /&gt;
&lt;br /&gt;
On 3 September 2012 two student teams of the Delft University of Technology, under guidance of M. Wisse and Ir. B. D. W. Remes, started with a UAV robotics project. Each team would have a slightly different initial objective. After completing this objective each team will be free to set its own objectives for the next phase of this project.&lt;br /&gt;
&lt;br /&gt;
=== Objectives ===&lt;br /&gt;
Our first objective is to enable the Parrot AR Drone v2.0 (from now on referred to as the AR Drone 2) to fly autonomously on the Paparazzi Software. To achieve this we need to describe a new board configuration within for Paparazzi to work with.&lt;br /&gt;
&lt;br /&gt;
Furthermore we want to add a GPS sensor to the AR Drone 2. We will use the US Globalsat BU-353 GPS receiver for this purpose.&lt;br /&gt;
&lt;br /&gt;
=== Teams ===&lt;br /&gt;
* Team 1: [[TU Delft - Search and Rescue with AR Drone 2]]&lt;br /&gt;
* Team 2: [[TU Delft - Lasergame with Autonomous AR Drone]]&lt;br /&gt;
&lt;br /&gt;
=== Project Contents ===&lt;br /&gt;
* [[AR.Drone 2 - Specifications]]&lt;br /&gt;
** [[Motor specicifcations]]&lt;br /&gt;
** [[Sensor specifications]]&lt;br /&gt;
** [[GPS specification]]&lt;br /&gt;
 &lt;br /&gt;
=== Installing Paparazzi on AR.Drone 2 ===&lt;br /&gt;
* [[Beginner page]]&lt;br /&gt;
* [[Developer page]]&lt;/div&gt;</summary>
		<author><name>Vincent van Hoek</name></author>
	</entry>
	<entry>
		<id>http://wiki.paparazziuav.org/w/index.php?title=Paparazzi_Center&amp;diff=13299</id>
		<title>Paparazzi Center</title>
		<link rel="alternate" type="text/html" href="http://wiki.paparazziuav.org/w/index.php?title=Paparazzi_Center&amp;diff=13299"/>
		<updated>2012-10-04T07:27:35Z</updated>

		<summary type="html">&lt;p&gt;Vincent van Hoek: /* Tools */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;The Paparazzi Center is a graphical user interface which contains a notebook of three main pages:&lt;br /&gt;
* A set of selection boxes to configure an aircraft with its flight plan and build the corresponding programs to be simulated and uploaded to the airborne device.&lt;br /&gt;
* A Control Panel to launch the agents of the system and handle collection of programs as configurable sessions&lt;br /&gt;
* A page where the [[GCS]] may be embedded.&lt;br /&gt;
&lt;br /&gt;
A log console is also diplayed in the configuration and control panel pages.&lt;br /&gt;
&lt;br /&gt;
If you use the Paparazzi binary package (version &amp;gt;= 3.2), the Paparazzi Center executable is &amp;lt;tt&amp;gt;paparazzi&amp;lt;/tt&amp;gt; and is included in the Applications menu. If you use the CVS code, run the &amp;lt;tt&amp;gt;./paparazzi&amp;lt;/tt&amp;gt; script at the root of the distribution. &lt;br /&gt;
&lt;br /&gt;
'''Options:'''&lt;br /&gt;
* &amp;lt;tt&amp;gt;-fullscreen&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Image:paparazzi_center.png|Paparazzi Center]]&lt;br /&gt;
&lt;br /&gt;
== Configuration ==&lt;br /&gt;
&lt;br /&gt;
The left part of the configuration page is an editor for the [[Conf.xml]] file. A new aircraft can be added from the A/C menu. The current aircraft can be deleted from the A/C menu.&lt;br /&gt;
&lt;br /&gt;
The editor for the configuration files is taken from the environment variable EDITOR or defaults to ''gedit'' for Linux and ''open'' for Darwin (i.e. uses the default program for .xml files).&lt;br /&gt;
&lt;br /&gt;
Note: Several setting files can be simultaneously selected for the '''Settings''' attribute (use the CRTL key in the file selector)&lt;br /&gt;
&lt;br /&gt;
== Compilation ==&lt;br /&gt;
Compilation and flashing are done from the building panel. Targets can be added to the combo box with the New Target button. Compilation and flashing commands are shown as running agents so they can be interrupted if needed.&lt;br /&gt;
&lt;br /&gt;
== Execution ==&lt;br /&gt;
&lt;br /&gt;
In the Execution panel, a combo box provide a set of predefined and user ''sessions'' (collections of programs).&lt;br /&gt;
&lt;br /&gt;
The Simulation session runs a server, a GCS and a simulator for the aircraft selected in the configuration panel. Note that the '''sim''' target must have been built prior to the simulation.&lt;br /&gt;
&lt;br /&gt;
The launched programs can be stopped and restarted (Stop/Redo buttons). Options can also be edited (in the entry box). Automatic respawn is enabled by setting the check box (left side of the Stop/Redo button). The set of the current processes can be saved as a user ''session'' (actually in the &amp;lt;tt&amp;gt;conf/control_panel.xml&amp;lt;/tt&amp;gt; configuration file) to&lt;br /&gt;
be restarted later (from the Session menu).&lt;br /&gt;
&lt;br /&gt;
=== Tools ===&lt;br /&gt;
The '''Tools''' menu contains the most important programs to run everything (look also at the [[Overview]] of the system):&lt;br /&gt;
&lt;br /&gt;
* ''[[GCS]]'' Ground Control Station with lots of [[GCS_Configuration#Configuration_Options| configuration options]]&lt;br /&gt;
* A ''[[Server]]'' (logger and message dispatcher for [[GCS]])&lt;br /&gt;
** turn of logging: -n&lt;br /&gt;
* Simulators (build with the '''sim''' target in the control panel)&lt;br /&gt;
* ''link'' to connect to the [[Modems]]&lt;br /&gt;
** set baud rate: -s 57600&lt;br /&gt;
** set device: -d /dev/ttyUSB0&lt;br /&gt;
* A ''messages'' window (messages bus observer)&lt;br /&gt;
* The ''Environment Simulator (Gaia)'' agent (time, wind, ... simulator)&lt;br /&gt;
* A [[RTPlotter|Real Time Plotter]]&lt;br /&gt;
* A [[Plotter|Log Plotter]]&lt;br /&gt;
* A log re''play''er&lt;br /&gt;
* An [[WeatherStationInterface|interface to weather stations]]&lt;br /&gt;
These different agents are available from the Tools menu.&lt;br /&gt;
&lt;br /&gt;
The set of running agents can be saved as a new custom session (from the Session menu). The current session can also be deleted.&lt;br /&gt;
&lt;br /&gt;
[[Category:Software]] [[Category:User_Documentation]]&lt;/div&gt;</summary>
		<author><name>Vincent van Hoek</name></author>
	</entry>
	<entry>
		<id>http://wiki.paparazziuav.org/w/index.php?title=File:BU-353_gps_receiver.jpg&amp;diff=13290</id>
		<title>File:BU-353 gps receiver.jpg</title>
		<link rel="alternate" type="text/html" href="http://wiki.paparazziuav.org/w/index.php?title=File:BU-353_gps_receiver.jpg&amp;diff=13290"/>
		<updated>2012-10-03T08:03:33Z</updated>

		<summary type="html">&lt;p&gt;Vincent van Hoek: uploaded a new version of &amp;quot;File:BU-353 gps receiver.jpg&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Vincent van Hoek</name></author>
	</entry>
	<entry>
		<id>http://wiki.paparazziuav.org/w/index.php?title=File:BU-353_gps_receiver.jpg&amp;diff=13289</id>
		<title>File:BU-353 gps receiver.jpg</title>
		<link rel="alternate" type="text/html" href="http://wiki.paparazziuav.org/w/index.php?title=File:BU-353_gps_receiver.jpg&amp;diff=13289"/>
		<updated>2012-10-03T08:02:30Z</updated>

		<summary type="html">&lt;p&gt;Vincent van Hoek: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Vincent van Hoek</name></author>
	</entry>
	<entry>
		<id>http://wiki.paparazziuav.org/w/index.php?title=GPS/BU_353&amp;diff=13288</id>
		<title>GPS/BU 353</title>
		<link rel="alternate" type="text/html" href="http://wiki.paparazziuav.org/w/index.php?title=GPS/BU_353&amp;diff=13288"/>
		<updated>2012-10-03T08:00:42Z</updated>

		<summary type="html">&lt;p&gt;Vincent van Hoek: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[File:BU-353_gps_receiver.jpg]]&lt;br /&gt;
&lt;br /&gt;
== GPS specification ==&lt;br /&gt;
&lt;br /&gt;
=== Goal ===&lt;br /&gt;
Adapting the USGlobalsat BU-353 GPS receiver to work with the Parrot AR Drone v2.0&lt;br /&gt;
&lt;br /&gt;
=== Progress ===&lt;br /&gt;
It seems to be possible to adapt the Linux Red Hat 9 driver of USGlobalsat to our needs. We still have to set the receiver´s output data to the SiRF binary format which should make reading it easier for us.&lt;/div&gt;</summary>
		<author><name>Vincent van Hoek</name></author>
	</entry>
	<entry>
		<id>http://wiki.paparazziuav.org/w/index.php?title=GPS/BU_353&amp;diff=13287</id>
		<title>GPS/BU 353</title>
		<link rel="alternate" type="text/html" href="http://wiki.paparazziuav.org/w/index.php?title=GPS/BU_353&amp;diff=13287"/>
		<updated>2012-10-03T07:59:51Z</updated>

		<summary type="html">&lt;p&gt;Vincent van Hoek: Created page with &amp;quot;BU-353_gps_receiver.jpg  == GPS specification ==  === Goal === Adapting the USGlobalsat BU-353 GPS receiver to work with the Parrot AR Drone v2.0  === Progress === It seems t…&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[BU-353_gps_receiver.jpg]]&lt;br /&gt;
&lt;br /&gt;
== GPS specification ==&lt;br /&gt;
&lt;br /&gt;
=== Goal ===&lt;br /&gt;
Adapting the USGlobalsat BU-353 GPS receiver to work with the Parrot AR Drone v2.0&lt;br /&gt;
&lt;br /&gt;
=== Progress ===&lt;br /&gt;
It seems to be possible to adapt the Linux Red Hat 9 driver of USGlobalsat to our needs. We still have to set the receiver´s output data to the SiRF binary format which should make reading it easier for us.&lt;/div&gt;</summary>
		<author><name>Vincent van Hoek</name></author>
	</entry>
</feed>